diff options
Diffstat (limited to 'drivers/mtd/nand/gpmi-nand/bch-regs.h')
-rw-r--r-- | drivers/mtd/nand/gpmi-nand/bch-regs.h | 42 |
1 files changed, 32 insertions, 10 deletions
diff --git a/drivers/mtd/nand/gpmi-nand/bch-regs.h b/drivers/mtd/nand/gpmi-nand/bch-regs.h index 4effb8c579db..a0924515c396 100644 --- a/drivers/mtd/nand/gpmi-nand/bch-regs.h +++ b/drivers/mtd/nand/gpmi-nand/bch-regs.h | |||
@@ -51,15 +51,26 @@ | |||
51 | 51 | ||
52 | #define BP_BCH_FLASH0LAYOUT0_ECC0 12 | 52 | #define BP_BCH_FLASH0LAYOUT0_ECC0 12 |
53 | #define BM_BCH_FLASH0LAYOUT0_ECC0 (0xf << BP_BCH_FLASH0LAYOUT0_ECC0) | 53 | #define BM_BCH_FLASH0LAYOUT0_ECC0 (0xf << BP_BCH_FLASH0LAYOUT0_ECC0) |
54 | #define BF_BCH_FLASH0LAYOUT0_ECC0(v) \ | 54 | #define MX6Q_BP_BCH_FLASH0LAYOUT0_ECC0 11 |
55 | (((v) << BP_BCH_FLASH0LAYOUT0_ECC0) & BM_BCH_FLASH0LAYOUT0_ECC0) | 55 | #define MX6Q_BM_BCH_FLASH0LAYOUT0_ECC0 (0x1f << MX6Q_BP_BCH_FLASH0LAYOUT0_ECC0) |
56 | #define BF_BCH_FLASH0LAYOUT0_ECC0(v, x) \ | ||
57 | (GPMI_IS_MX6Q(x) \ | ||
58 | ? (((v) << MX6Q_BP_BCH_FLASH0LAYOUT0_ECC0) \ | ||
59 | & MX6Q_BM_BCH_FLASH0LAYOUT0_ECC0) \ | ||
60 | : (((v) << BP_BCH_FLASH0LAYOUT0_ECC0) \ | ||
61 | & BM_BCH_FLASH0LAYOUT0_ECC0) \ | ||
62 | ) | ||
56 | 63 | ||
57 | #define BP_BCH_FLASH0LAYOUT0_DATA0_SIZE 0 | 64 | #define BP_BCH_FLASH0LAYOUT0_DATA0_SIZE 0 |
58 | #define BM_BCH_FLASH0LAYOUT0_DATA0_SIZE \ | 65 | #define BM_BCH_FLASH0LAYOUT0_DATA0_SIZE \ |
59 | (0xfff << BP_BCH_FLASH0LAYOUT0_DATA0_SIZE) | 66 | (0xfff << BP_BCH_FLASH0LAYOUT0_DATA0_SIZE) |
60 | #define BF_BCH_FLASH0LAYOUT0_DATA0_SIZE(v) \ | 67 | #define MX6Q_BM_BCH_FLASH0LAYOUT0_DATA0_SIZE \ |
61 | (((v) << BP_BCH_FLASH0LAYOUT0_DATA0_SIZE)\ | 68 | (0x3ff << BP_BCH_FLASH0LAYOUT0_DATA0_SIZE) |
62 | & BM_BCH_FLASH0LAYOUT0_DATA0_SIZE) | 69 | #define BF_BCH_FLASH0LAYOUT0_DATA0_SIZE(v, x) \ |
70 | (GPMI_IS_MX6Q(x) \ | ||
71 | ? (((v) >> 2) & MX6Q_BM_BCH_FLASH0LAYOUT0_DATA0_SIZE) \ | ||
72 | : ((v) & BM_BCH_FLASH0LAYOUT0_DATA0_SIZE) \ | ||
73 | ) | ||
63 | 74 | ||
64 | #define HW_BCH_FLASH0LAYOUT1 0x00000090 | 75 | #define HW_BCH_FLASH0LAYOUT1 0x00000090 |
65 | 76 | ||
@@ -72,13 +83,24 @@ | |||
72 | 83 | ||
73 | #define BP_BCH_FLASH0LAYOUT1_ECCN 12 | 84 | #define BP_BCH_FLASH0LAYOUT1_ECCN 12 |
74 | #define BM_BCH_FLASH0LAYOUT1_ECCN (0xf << BP_BCH_FLASH0LAYOUT1_ECCN) | 85 | #define BM_BCH_FLASH0LAYOUT1_ECCN (0xf << BP_BCH_FLASH0LAYOUT1_ECCN) |
75 | #define BF_BCH_FLASH0LAYOUT1_ECCN(v) \ | 86 | #define MX6Q_BP_BCH_FLASH0LAYOUT1_ECCN 11 |
76 | (((v) << BP_BCH_FLASH0LAYOUT1_ECCN) & BM_BCH_FLASH0LAYOUT1_ECCN) | 87 | #define MX6Q_BM_BCH_FLASH0LAYOUT1_ECCN (0x1f << MX6Q_BP_BCH_FLASH0LAYOUT1_ECCN) |
88 | #define BF_BCH_FLASH0LAYOUT1_ECCN(v, x) \ | ||
89 | (GPMI_IS_MX6Q(x) \ | ||
90 | ? (((v) << MX6Q_BP_BCH_FLASH0LAYOUT1_ECCN) \ | ||
91 | & MX6Q_BM_BCH_FLASH0LAYOUT1_ECCN) \ | ||
92 | : (((v) << BP_BCH_FLASH0LAYOUT1_ECCN) \ | ||
93 | & BM_BCH_FLASH0LAYOUT1_ECCN) \ | ||
94 | ) | ||
77 | 95 | ||
78 | #define BP_BCH_FLASH0LAYOUT1_DATAN_SIZE 0 | 96 | #define BP_BCH_FLASH0LAYOUT1_DATAN_SIZE 0 |
79 | #define BM_BCH_FLASH0LAYOUT1_DATAN_SIZE \ | 97 | #define BM_BCH_FLASH0LAYOUT1_DATAN_SIZE \ |
80 | (0xfff << BP_BCH_FLASH0LAYOUT1_DATAN_SIZE) | 98 | (0xfff << BP_BCH_FLASH0LAYOUT1_DATAN_SIZE) |
81 | #define BF_BCH_FLASH0LAYOUT1_DATAN_SIZE(v) \ | 99 | #define MX6Q_BM_BCH_FLASH0LAYOUT1_DATAN_SIZE \ |
82 | (((v) << BP_BCH_FLASH0LAYOUT1_DATAN_SIZE) \ | 100 | (0x3ff << BP_BCH_FLASH0LAYOUT1_DATAN_SIZE) |
83 | & BM_BCH_FLASH0LAYOUT1_DATAN_SIZE) | 101 | #define BF_BCH_FLASH0LAYOUT1_DATAN_SIZE(v, x) \ |
102 | (GPMI_IS_MX6Q(x) \ | ||
103 | ? (((v) >> 2) & MX6Q_BM_BCH_FLASH0LAYOUT1_DATAN_SIZE) \ | ||
104 | : ((v) & BM_BCH_FLASH0LAYOUT1_DATAN_SIZE) \ | ||
105 | ) | ||
84 | #endif | 106 | #endif |