xref: /freebsd/sys/arm/freescale/fsl_ocotpreg.h (revision 95ee2897e98f5d444f26ed2334cc7c439f9c16c6)
1350badf9SIan Lepore /*-
2*4d846d26SWarner Losh  * SPDX-License-Identifier: BSD-2-Clause
3af3dc4a7SPedro F. Giffuni  *
4350badf9SIan Lepore  * Copyright (c) 2014 Steven Lawrance <stl@koffein.net>
5350badf9SIan Lepore  * All rights reserved.
6350badf9SIan Lepore  *
7350badf9SIan Lepore  * Redistribution and use in source and binary forms, with or without
8350badf9SIan Lepore  * modification, are permitted provided that the following conditions
9350badf9SIan Lepore  * are met:
10350badf9SIan Lepore  * 1. Redistributions of source code must retain the above copyright
11350badf9SIan Lepore  *    notice, this list of conditions and the following disclaimer.
12350badf9SIan Lepore  * 2. Redistributions in binary form must reproduce the above copyright
13350badf9SIan Lepore  *    notice, this list of conditions and the following disclaimer in the
14350badf9SIan Lepore  *    documentation and/or other materials provided with the distribution.
15350badf9SIan Lepore  *
16350badf9SIan Lepore  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
17350badf9SIan Lepore  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18350badf9SIan Lepore  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19350badf9SIan Lepore  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
20350badf9SIan Lepore  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21350badf9SIan Lepore  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22350badf9SIan Lepore  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23350badf9SIan Lepore  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24350badf9SIan Lepore  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25350badf9SIan Lepore  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26350badf9SIan Lepore  * SUCH DAMAGE.
27350badf9SIan Lepore  */
28350badf9SIan Lepore 
29350badf9SIan Lepore #ifndef	FSL_OCOTPREG_H
30350badf9SIan Lepore #define	FSL_OCOTPREG_H
31350badf9SIan Lepore 
32350badf9SIan Lepore #define	FSL_OCOTP_CTRL				0x000
33350badf9SIan Lepore #define	FSL_OCOTP_CTRL_SET			0x004
34350badf9SIan Lepore #define	FSL_OCOTP_CTRL_CLR			0x008
35350badf9SIan Lepore #define	FSL_OCOTP_CTRL_TOG			0x00C
36350badf9SIan Lepore #define	FSL_OCOTP_TIMING			0x010
37350badf9SIan Lepore #define	FSL_OCOTP_DATA				0x020
38350badf9SIan Lepore #define	FSL_OCOTP_READ_CTRL			0x030
39350badf9SIan Lepore #define	FSL_OCOTP_READ_FUSE_DATA		0x040
40350badf9SIan Lepore #define	FSL_OCOTP_SW_STICKY			0x050
41350badf9SIan Lepore #define	FSL_OCOTP_SCS				0x060
42350badf9SIan Lepore #define	FSL_OCOTP_SCS_SET			0x064
43350badf9SIan Lepore #define	FSL_OCOTP_SCS_CLR			0x068
44350badf9SIan Lepore #define	FSL_OCOTP_SCS_TOG			0x06C
45350badf9SIan Lepore #define	FSL_OCOTP_VERSION			0x090
46350badf9SIan Lepore #define	FSL_OCOTP_LOCK				0x400
47350badf9SIan Lepore #define	FSL_OCOTP_CFG0				0x410
48350badf9SIan Lepore #define	FSL_OCOTP_CFG1				0x420
49350badf9SIan Lepore #define	FSL_OCOTP_CFG2				0x430
50350badf9SIan Lepore #define	FSL_OCOTP_CFG3				0x440
51f3639674SIan Lepore #define	  FSL_OCOTP_CFG3_SPEED_SHIFT		  16
52f3639674SIan Lepore #define	  FSL_OCOTP_CFG3_SPEED_MASK		  \
53f3639674SIan Lepore     (0x03 << FSL_OCOTP_CFG3_SPEED_SHIFT)
54f3639674SIan Lepore #define	  FSL_OCOTP_CFG3_SPEED_792MHZ		  0
55f3639674SIan Lepore #define	  FSL_OCOTP_CFG3_SPEED_852MHZ		  1
56f3639674SIan Lepore #define	  FSL_OCOTP_CFG3_SPEED_996MHZ		  2
57f3639674SIan Lepore #define	  FSL_OCOTP_CFG3_SPEED_1200MHZ		  3
58350badf9SIan Lepore #define	FSL_OCOTP_CFG4				0x450
59350badf9SIan Lepore #define	FSL_OCOTP_CFG5				0x460
60350badf9SIan Lepore #define	FSL_OCOTP_CFG6				0x470
61350badf9SIan Lepore #define	FSL_OCOTP_MEM0				0x480
62350badf9SIan Lepore #define	FSL_OCOTP_MEM1				0x490
63350badf9SIan Lepore #define	FSL_OCOTP_MEM2				0x4A0
64350badf9SIan Lepore #define	FSL_OCOTP_MEM3				0x4B0
65350badf9SIan Lepore #define	FSL_OCOTP_ANA0				0x4D0
66350badf9SIan Lepore #define	FSL_OCOTP_ANA1				0x4E0
67350badf9SIan Lepore #define	FSL_OCOTP_ANA2				0x4F0
68350badf9SIan Lepore #define	FSL_OCOTP_SRK0				0x580
69350badf9SIan Lepore #define	FSL_OCOTP_SRK1				0x590
70350badf9SIan Lepore #define	FSL_OCOTP_SRK2				0x5A0
71350badf9SIan Lepore #define	FSL_OCOTP_SRK3				0x5B0
72350badf9SIan Lepore #define	FSL_OCOTP_SRK4				0x5C0
73350badf9SIan Lepore #define	FSL_OCOTP_SRK5				0x5D0
74350badf9SIan Lepore #define	FSL_OCOTP_SRK6				0x5E0
75350badf9SIan Lepore #define	FSL_OCOTP_SRK7				0x5F0
76350badf9SIan Lepore #define	FSL_OCOTP_HSJC_RESP0			0x600
77350badf9SIan Lepore #define	FSL_OCOTP_HSJC_RESP1			0x610
78350badf9SIan Lepore #define	FSL_OCOTP_MAC0				0x620
79350badf9SIan Lepore #define	FSL_OCOTP_MAC1				0x630
80350badf9SIan Lepore #define	FSL_OCOTP_GP1				0x660
81350badf9SIan Lepore #define	FSL_OCOTP_GP2				0x670
82350badf9SIan Lepore #define	FSL_OCOTP_MISC_CONF			0x6D0
83350badf9SIan Lepore #define	FSL_OCOTP_FIELD_RETURN			0x6E0
84350badf9SIan Lepore #define	FSL_OCOTP_SRK_REVOKE			0x6F0
85350badf9SIan Lepore 
86350badf9SIan Lepore #define	FSL_OCOTP_LAST_REG			FSL_OCOTP_SRK_REVOKE
87350badf9SIan Lepore 
88350badf9SIan Lepore #endif
89