Commit 98ead6e0011e66b8a3e14bc2f264460742ca79c1
Exists in
master
and in
20 other branches
Merge tag 'fixes-against-v3.12-rc3-take2' of git://git.kernel.org/pub/scm/linux/…
…kernel/git/tmlind/linux-omap into fixes From Tony Lindgren: Few fixes for omap3 related hangs and errors that people have noticed now that people are actually using the device tree based booting for omap3. Also one regression fix for timer compile for dra7xx when omap5 is not selected, and a LED regression fix for n900. * tag 'fixes-against-v3.12-rc3-take2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: OMAP2: RX-51: Add missing max_current to rx51_lp5523_led_config ARM: mach-omap2: board-generic: fix undefined symbol ARM: dts: Fix pinctrl mask for omap3 ARM: OMAP3: Fix hardware detection for omap3630 when booted with device tree ARM: OMAP2: gpmc-onenand: fix sync mode setup with DT Signed-off-by: Olof Johansson <olof@lixom.net>
Showing 8 changed files Side-by-side Diff
arch/arm/boot/dts/omap3-beagle-xm.dts
arch/arm/boot/dts/omap3.dtsi
... | ... | @@ -108,7 +108,7 @@ |
108 | 108 | #address-cells = <1>; |
109 | 109 | #size-cells = <0>; |
110 | 110 | pinctrl-single,register-width = <16>; |
111 | - pinctrl-single,function-mask = <0x7f1f>; | |
111 | + pinctrl-single,function-mask = <0xff1f>; | |
112 | 112 | }; |
113 | 113 | |
114 | 114 | omap3_pmx_wkup: pinmux@0x48002a00 { |
... | ... | @@ -117,7 +117,7 @@ |
117 | 117 | #address-cells = <1>; |
118 | 118 | #size-cells = <0>; |
119 | 119 | pinctrl-single,register-width = <16>; |
120 | - pinctrl-single,function-mask = <0x7f1f>; | |
120 | + pinctrl-single,function-mask = <0xff1f>; | |
121 | 121 | }; |
122 | 122 | |
123 | 123 | gpio1: gpio@48310000 { |
arch/arm/mach-omap2/board-generic.c
... | ... | @@ -129,6 +129,24 @@ |
129 | 129 | .restart = omap3xxx_restart, |
130 | 130 | MACHINE_END |
131 | 131 | |
132 | +static const char *omap36xx_boards_compat[] __initdata = { | |
133 | + "ti,omap36xx", | |
134 | + NULL, | |
135 | +}; | |
136 | + | |
137 | +DT_MACHINE_START(OMAP36XX_DT, "Generic OMAP36xx (Flattened Device Tree)") | |
138 | + .reserve = omap_reserve, | |
139 | + .map_io = omap3_map_io, | |
140 | + .init_early = omap3630_init_early, | |
141 | + .init_irq = omap_intc_of_init, | |
142 | + .handle_irq = omap3_intc_handle_irq, | |
143 | + .init_machine = omap_generic_init, | |
144 | + .init_late = omap3_init_late, | |
145 | + .init_time = omap3_sync32k_timer_init, | |
146 | + .dt_compat = omap36xx_boards_compat, | |
147 | + .restart = omap3xxx_restart, | |
148 | +MACHINE_END | |
149 | + | |
132 | 150 | static const char *omap3_gp_boards_compat[] __initdata = { |
133 | 151 | "ti,omap3-beagle", |
134 | 152 | "timll,omap3-devkit8000", |
arch/arm/mach-omap2/board-rx51-peripherals.c
... | ... | @@ -167,38 +167,47 @@ |
167 | 167 | .name = "lp5523:kb1", |
168 | 168 | .chan_nr = 0, |
169 | 169 | .led_current = 50, |
170 | + .max_current = 100, | |
170 | 171 | }, { |
171 | 172 | .name = "lp5523:kb2", |
172 | 173 | .chan_nr = 1, |
173 | 174 | .led_current = 50, |
175 | + .max_current = 100, | |
174 | 176 | }, { |
175 | 177 | .name = "lp5523:kb3", |
176 | 178 | .chan_nr = 2, |
177 | 179 | .led_current = 50, |
180 | + .max_current = 100, | |
178 | 181 | }, { |
179 | 182 | .name = "lp5523:kb4", |
180 | 183 | .chan_nr = 3, |
181 | 184 | .led_current = 50, |
185 | + .max_current = 100, | |
182 | 186 | }, { |
183 | 187 | .name = "lp5523:b", |
184 | 188 | .chan_nr = 4, |
185 | 189 | .led_current = 50, |
190 | + .max_current = 100, | |
186 | 191 | }, { |
187 | 192 | .name = "lp5523:g", |
188 | 193 | .chan_nr = 5, |
189 | 194 | .led_current = 50, |
195 | + .max_current = 100, | |
190 | 196 | }, { |
191 | 197 | .name = "lp5523:r", |
192 | 198 | .chan_nr = 6, |
193 | 199 | .led_current = 50, |
200 | + .max_current = 100, | |
194 | 201 | }, { |
195 | 202 | .name = "lp5523:kb5", |
196 | 203 | .chan_nr = 7, |
197 | 204 | .led_current = 50, |
205 | + .max_current = 100, | |
198 | 206 | }, { |
199 | 207 | .name = "lp5523:kb6", |
200 | 208 | .chan_nr = 8, |
201 | 209 | .led_current = 50, |
210 | + .max_current = 100, | |
202 | 211 | } |
203 | 212 | }; |
204 | 213 |
arch/arm/mach-omap2/gpmc-onenand.c
... | ... | @@ -272,9 +272,19 @@ |
272 | 272 | struct gpmc_timings t; |
273 | 273 | int ret; |
274 | 274 | |
275 | - if (gpmc_onenand_data->of_node) | |
275 | + if (gpmc_onenand_data->of_node) { | |
276 | 276 | gpmc_read_settings_dt(gpmc_onenand_data->of_node, |
277 | 277 | &onenand_async); |
278 | + if (onenand_async.sync_read || onenand_async.sync_write) { | |
279 | + if (onenand_async.sync_write) | |
280 | + gpmc_onenand_data->flags |= | |
281 | + ONENAND_SYNC_READWRITE; | |
282 | + else | |
283 | + gpmc_onenand_data->flags |= ONENAND_SYNC_READ; | |
284 | + onenand_async.sync_read = false; | |
285 | + onenand_async.sync_write = false; | |
286 | + } | |
287 | + } | |
278 | 288 | |
279 | 289 | omap2_onenand_set_async_mode(onenand_base); |
280 | 290 |
arch/arm/mach-omap2/mux.h
... | ... | @@ -28,7 +28,7 @@ |
28 | 28 | #define OMAP_PULL_UP (1 << 4) |
29 | 29 | #define OMAP_ALTELECTRICALSEL (1 << 5) |
30 | 30 | |
31 | -/* 34xx specific mux bit defines */ | |
31 | +/* omap3/4/5 specific mux bit defines */ | |
32 | 32 | #define OMAP_INPUT_EN (1 << 8) |
33 | 33 | #define OMAP_OFF_EN (1 << 9) |
34 | 34 | #define OMAP_OFFOUT_EN (1 << 10) |
... | ... | @@ -36,8 +36,6 @@ |
36 | 36 | #define OMAP_OFF_PULL_EN (1 << 12) |
37 | 37 | #define OMAP_OFF_PULL_UP (1 << 13) |
38 | 38 | #define OMAP_WAKEUP_EN (1 << 14) |
39 | - | |
40 | -/* 44xx specific mux bit defines */ | |
41 | 39 | #define OMAP_WAKEUP_EVENT (1 << 15) |
42 | 40 | |
43 | 41 | /* Active pin states */ |
arch/arm/mach-omap2/timer.c
... | ... | @@ -628,7 +628,7 @@ |
628 | 628 | #endif /* CONFIG_HAVE_ARM_TWD */ |
629 | 629 | #endif /* CONFIG_ARCH_OMAP4 */ |
630 | 630 | |
631 | -#ifdef CONFIG_SOC_OMAP5 | |
631 | +#if defined(CONFIG_SOC_OMAP5) || defined(CONFIG_SOC_DRA7XX) | |
632 | 632 | void __init omap5_realtime_timer_init(void) |
633 | 633 | { |
634 | 634 | omap4_sync32k_timer_init(); |
... | ... | @@ -636,7 +636,7 @@ |
636 | 636 | |
637 | 637 | clocksource_of_init(); |
638 | 638 | } |
639 | -#endif /* CONFIG_SOC_OMAP5 */ | |
639 | +#endif /* CONFIG_SOC_OMAP5 || CONFIG_SOC_DRA7XX */ | |
640 | 640 | |
641 | 641 | /** |
642 | 642 | * omap_timer_init - build and register timer device with an |
include/dt-bindings/pinctrl/omap.h
... | ... | @@ -23,7 +23,7 @@ |
23 | 23 | #define PULL_UP (1 << 4) |
24 | 24 | #define ALTELECTRICALSEL (1 << 5) |
25 | 25 | |
26 | -/* 34xx specific mux bit defines */ | |
26 | +/* omap3/4/5 specific mux bit defines */ | |
27 | 27 | #define INPUT_EN (1 << 8) |
28 | 28 | #define OFF_EN (1 << 9) |
29 | 29 | #define OFFOUT_EN (1 << 10) |
... | ... | @@ -31,8 +31,6 @@ |
31 | 31 | #define OFF_PULL_EN (1 << 12) |
32 | 32 | #define OFF_PULL_UP (1 << 13) |
33 | 33 | #define WAKEUP_EN (1 << 14) |
34 | - | |
35 | -/* 44xx specific mux bit defines */ | |
36 | 34 | #define WAKEUP_EVENT (1 << 15) |
37 | 35 | |
38 | 36 | /* Active pin states */ |