diff options
Diffstat (limited to 'arch/arm/plat-omap/include/mach/mux.h')
-rw-r--r-- | arch/arm/plat-omap/include/mach/mux.h | 52 |
1 files changed, 51 insertions, 1 deletions
diff --git a/arch/arm/plat-omap/include/mach/mux.h b/arch/arm/plat-omap/include/mach/mux.h index f4362b8682c7..6a02f8f4c8bf 100644 --- a/arch/arm/plat-omap/include/mach/mux.h +++ b/arch/arm/plat-omap/include/mach/mux.h | |||
@@ -61,6 +61,16 @@ | |||
61 | .pull_bit = bit, \ | 61 | .pull_bit = bit, \ |
62 | .pull_val = status, | 62 | .pull_val = status, |
63 | 63 | ||
64 | #define MUX_REG_850(reg, mode_offset, mode) .mux_reg_name = "OMAP850_IO_CONF_"#reg, \ | ||
65 | .mux_reg = OMAP850_IO_CONF_##reg, \ | ||
66 | .mask_offset = mode_offset, \ | ||
67 | .mask = mode, | ||
68 | |||
69 | #define PULL_REG_850(reg, bit, status) .pull_name = "OMAP850_IO_CONF_"#reg, \ | ||
70 | .pull_reg = OMAP850_IO_CONF_##reg, \ | ||
71 | .pull_bit = bit, \ | ||
72 | .pull_val = status, | ||
73 | |||
64 | #else | 74 | #else |
65 | 75 | ||
66 | #define MUX_REG(reg, mode_offset, mode) .mux_reg = FUNC_MUX_CTRL_##reg, \ | 76 | #define MUX_REG(reg, mode_offset, mode) .mux_reg = FUNC_MUX_CTRL_##reg, \ |
@@ -83,6 +93,15 @@ | |||
83 | .pull_bit = bit, \ | 93 | .pull_bit = bit, \ |
84 | .pull_val = status, | 94 | .pull_val = status, |
85 | 95 | ||
96 | #define MUX_REG_850(reg, mode_offset, mode) \ | ||
97 | .mux_reg = OMAP850_IO_CONF_##reg, \ | ||
98 | .mask_offset = mode_offset, \ | ||
99 | .mask = mode, | ||
100 | |||
101 | #define PULL_REG_850(reg, bit, status) .pull_reg = OMAP850_IO_CONF_##reg, \ | ||
102 | .pull_bit = bit, \ | ||
103 | .pull_val = status, | ||
104 | |||
86 | #endif /* CONFIG_OMAP_MUX_DEBUG */ | 105 | #endif /* CONFIG_OMAP_MUX_DEBUG */ |
87 | 106 | ||
88 | #define MUX_CFG(desc, mux_reg, mode_offset, mode, \ | 107 | #define MUX_CFG(desc, mux_reg, mode_offset, mode, \ |
@@ -98,7 +117,7 @@ | |||
98 | 117 | ||
99 | 118 | ||
100 | /* | 119 | /* |
101 | * OMAP730 has a slightly different config for the pin mux. | 120 | * OMAP730/850 has a slightly different config for the pin mux. |
102 | * - config regs are the OMAP730_IO_CONF_x regs (see omap730.h) regs and | 121 | * - config regs are the OMAP730_IO_CONF_x regs (see omap730.h) regs and |
103 | * not the FUNC_MUX_CTRL_x regs from hardware.h | 122 | * not the FUNC_MUX_CTRL_x regs from hardware.h |
104 | * - for pull-up/down, only has one enable bit which is is in the same register | 123 | * - for pull-up/down, only has one enable bit which is is in the same register |
@@ -114,6 +133,17 @@ | |||
114 | PU_PD_REG(NA, 0) \ | 133 | PU_PD_REG(NA, 0) \ |
115 | }, | 134 | }, |
116 | 135 | ||
136 | #define MUX_CFG_850(desc, mux_reg, mode_offset, mode, \ | ||
137 | pull_bit, pull_status, debug_status)\ | ||
138 | { \ | ||
139 | .name = desc, \ | ||
140 | .debug = debug_status, \ | ||
141 | MUX_REG_850(mux_reg, mode_offset, mode) \ | ||
142 | PULL_REG_850(mux_reg, pull_bit, pull_status) \ | ||
143 | PU_PD_REG(NA, 0) \ | ||
144 | }, | ||
145 | |||
146 | |||
117 | #define MUX_CFG_24XX(desc, reg_offset, mode, \ | 147 | #define MUX_CFG_24XX(desc, reg_offset, mode, \ |
118 | pull_en, pull_mode, dbg) \ | 148 | pull_en, pull_mode, dbg) \ |
119 | { \ | 149 | { \ |
@@ -221,6 +251,26 @@ enum omap730_index { | |||
221 | W17_730_USB_VBUSI, | 251 | W17_730_USB_VBUSI, |
222 | }; | 252 | }; |
223 | 253 | ||
254 | enum omap850_index { | ||
255 | /* OMAP 850 keyboard */ | ||
256 | E2_850_KBR0, | ||
257 | J7_850_KBR1, | ||
258 | E1_850_KBR2, | ||
259 | F3_850_KBR3, | ||
260 | D2_850_KBR4, | ||
261 | C2_850_KBC0, | ||
262 | D3_850_KBC1, | ||
263 | E4_850_KBC2, | ||
264 | F4_850_KBC3, | ||
265 | E3_850_KBC4, | ||
266 | |||
267 | /* USB */ | ||
268 | AA17_850_USB_DM, | ||
269 | W16_850_USB_PU_EN, | ||
270 | W17_850_USB_VBUSI, | ||
271 | }; | ||
272 | |||
273 | |||
224 | enum omap1xxx_index { | 274 | enum omap1xxx_index { |
225 | /* UART1 (BT_UART_GATING)*/ | 275 | /* UART1 (BT_UART_GATING)*/ |
226 | UART1_TX = 0, | 276 | UART1_TX = 0, |