]> git.ipfire.org Git - people/ms/u-boot.git/blob - include/asm-blackfin/mach-common/bits/otp.h
4e3f1afcfa0d01249173812bae8cf36d4d730307
[people/ms/u-boot.git] / include / asm-blackfin / mach-common / bits / otp.h
1 /*
2 * OTP Masks
3 */
4
5 #ifndef __BFIN_PERIPHERAL_OTP__
6 #define __BFIN_PERIPHERAL_OTP__
7
8 #ifndef __ASSEMBLY__
9
10 #include "bootrom.h"
11
12 static uint32_t (* const bfrom_OtpCommand)(uint32_t command, uint32_t value) = (void *)_BOOTROM_OTP_COMMAND;
13 static uint32_t (* const bfrom_OtpRead)(uint32_t page, uint32_t flags, uint64_t *page_content) = (void *)_BOOTROM_OTP_READ;
14 static uint32_t (* const bfrom_OtpWrite)(uint32_t page, uint32_t flags, uint64_t *page_content) = (void *)_BOOTROM_OTP_WRITE;
15
16 #endif
17
18 /* otp_command(): defines for "command" */
19 #define OTP_INIT 0x00000001
20 #define OTP_CLOSE 0x00000002
21
22 /* otp_{read,write}(): defines for "flags" */
23 #define OTP_LOWER_HALF 0x00000000 /* select upper/lower 64-bit half (bit 0) */
24 #define OTP_UPPER_HALF 0x00000001
25 #define OTP_NO_ECC 0x00000010 /* do not use ECC */
26 #define OTP_LOCK 0x00000020 /* sets page protection bit for page */
27 #define OTP_CHECK_FOR_PREV_WRITE 0x00000080
28
29 /* Return values for all functions */
30 #define OTP_SUCCESS 0x00000000
31 #define OTP_MASTER_ERROR 0x001
32 #define OTP_WRITE_ERROR 0x003
33 #define OTP_READ_ERROR 0x005
34 #define OTP_ACC_VIO_ERROR 0x009
35 #define OTP_DATA_MULT_ERROR 0x011
36 #define OTP_ECC_MULT_ERROR 0x021
37 #define OTP_PREV_WR_ERROR 0x041
38 #define OTP_DATA_SB_WARN 0x100
39 #define OTP_ECC_SB_WARN 0x200
40
41 /* Predefined otp pages: Factory Programmed Settings */
42 #define FPS00 0x0004
43 #define FPS01 0x0005
44 #define FPS02 0x0006
45 #define FPS03 0x0007
46 #define FPS04 0x0008
47 #define FPS05 0x0009
48 #define FPS06 0x000A
49 #define FPS07 0x000B
50 #define FPS08 0x000C
51 #define FPS09 0x000D
52 #define FPS10 0x000E
53 #define FPS11 0x000F
54
55 /* Predefined otp pages: Customer Programmed Settings */
56 #define CPS00 0x0010
57 #define CPS01 0x0011
58 #define CPS02 0x0012
59 #define CPS03 0x0013
60 #define CPS04 0x0014
61 #define CPS05 0x0015
62 #define CPS06 0x0016
63 #define CPS07 0x0017
64
65 /* Predefined otp pages: Pre-Boot Settings */
66 #define PBS00 0x0018
67 #define PBS01 0x0019
68 #define PBS02 0x001A
69 #define PBS03 0x001B
70
71 #endif