diff options
author | Olof Johansson <olof@lixom.net> | 2017-01-29 20:14:43 -0500 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2017-01-29 20:14:43 -0500 |
commit | c0d32456091a81b0880e302d8c38c736a4dddab0 (patch) | |
tree | 2f53c0b902a61e1480b2b5dc13d0f993ff6db73a | |
parent | 2af49ab6868ca84e7a0c5e8d984d4e1754edb5a5 (diff) | |
parent | 631af44c10f9430163296626c6134db16a4f51fb (diff) |
Merge tag 'omap-for-v4.11/fixes-not-urgent-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/fixes-non-critical
Non-urgent fixes for omaps for v4.11 merge window. These all are
fixes for things that have never worked or have been broken for
a long time and nobody noticed:
- Fix omap3 off mode pull defines
- Allow multiple pdata quirks instead of just one
- Fix am335x and dm814x scm syscon to probe children too
- Fix compatible for ti81xx to allow use with 8250_omap as well
- Fix 8250_omap on omap5 by adding HWMOD_SWSUP_SIDLE_ACT flag
- Fix SoC detection for omap36/37 SoCs
* tag 'omap-for-v4.11/fixes-not-urgent-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
ARM: OMAP3: Fix SoC detection of OMAP36/37 Family
ARM: OMAP5: Add HWMOD_SWSUP_SIDLE_ACT flag for UART
ARM: dts: Fix compatible for ti81xx uarts for 8250
ARM: dts: Fix am335x and dm814x scm syscon to probe children
ARM: OMAP2+: Fix init for multiple quirks for the same SoC
ARM: dts: Fix omap3 off mode pull defines
Signed-off-by: Olof Johansson <olof@lixom.net>
-rw-r--r-- | arch/arm/boot/dts/am33xx.dtsi | 3 | ||||
-rw-r--r-- | arch/arm/boot/dts/dm814x.dtsi | 9 | ||||
-rw-r--r-- | arch/arm/boot/dts/dm816x.dtsi | 6 | ||||
-rw-r--r-- | arch/arm/mach-omap2/id.c | 10 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_54xx_data.c | 8 | ||||
-rw-r--r-- | arch/arm/mach-omap2/pdata-quirks.c | 1 | ||||
-rw-r--r-- | include/dt-bindings/pinctrl/omap.h | 4 |
7 files changed, 27 insertions, 14 deletions
diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi index 64c8aa9057a3..8e80d979db2d 100644 --- a/arch/arm/boot/dts/am33xx.dtsi +++ b/arch/arm/boot/dts/am33xx.dtsi | |||
@@ -144,10 +144,11 @@ | |||
144 | }; | 144 | }; |
145 | 145 | ||
146 | scm_conf: scm_conf@0 { | 146 | scm_conf: scm_conf@0 { |
147 | compatible = "syscon"; | 147 | compatible = "syscon", "simple-bus"; |
148 | reg = <0x0 0x800>; | 148 | reg = <0x0 0x800>; |
149 | #address-cells = <1>; | 149 | #address-cells = <1>; |
150 | #size-cells = <1>; | 150 | #size-cells = <1>; |
151 | ranges = <0 0 0x800>; | ||
151 | 152 | ||
152 | scm_clocks: clocks { | 153 | scm_clocks: clocks { |
153 | #address-cells = <1>; | 154 | #address-cells = <1>; |
diff --git a/arch/arm/boot/dts/dm814x.dtsi b/arch/arm/boot/dts/dm814x.dtsi index 1facc5f12cef..da423c72bac0 100644 --- a/arch/arm/boot/dts/dm814x.dtsi +++ b/arch/arm/boot/dts/dm814x.dtsi | |||
@@ -251,7 +251,7 @@ | |||
251 | }; | 251 | }; |
252 | 252 | ||
253 | uart1: uart@20000 { | 253 | uart1: uart@20000 { |
254 | compatible = "ti,omap3-uart"; | 254 | compatible = "ti,am3352-uart", "ti,omap3-uart"; |
255 | ti,hwmods = "uart1"; | 255 | ti,hwmods = "uart1"; |
256 | reg = <0x20000 0x2000>; | 256 | reg = <0x20000 0x2000>; |
257 | clock-frequency = <48000000>; | 257 | clock-frequency = <48000000>; |
@@ -261,7 +261,7 @@ | |||
261 | }; | 261 | }; |
262 | 262 | ||
263 | uart2: uart@22000 { | 263 | uart2: uart@22000 { |
264 | compatible = "ti,omap3-uart"; | 264 | compatible = "ti,am3352-uart", "ti,omap3-uart"; |
265 | ti,hwmods = "uart2"; | 265 | ti,hwmods = "uart2"; |
266 | reg = <0x22000 0x2000>; | 266 | reg = <0x22000 0x2000>; |
267 | clock-frequency = <48000000>; | 267 | clock-frequency = <48000000>; |
@@ -271,7 +271,7 @@ | |||
271 | }; | 271 | }; |
272 | 272 | ||
273 | uart3: uart@24000 { | 273 | uart3: uart@24000 { |
274 | compatible = "ti,omap3-uart"; | 274 | compatible = "ti,am3352-uart", "ti,omap3-uart"; |
275 | ti,hwmods = "uart3"; | 275 | ti,hwmods = "uart3"; |
276 | reg = <0x24000 0x2000>; | 276 | reg = <0x24000 0x2000>; |
277 | clock-frequency = <48000000>; | 277 | clock-frequency = <48000000>; |
@@ -331,10 +331,11 @@ | |||
331 | ranges = <0 0x140000 0x20000>; | 331 | ranges = <0 0x140000 0x20000>; |
332 | 332 | ||
333 | scm_conf: scm_conf@0 { | 333 | scm_conf: scm_conf@0 { |
334 | compatible = "syscon"; | 334 | compatible = "syscon", "simple-bus"; |
335 | reg = <0x0 0x800>; | 335 | reg = <0x0 0x800>; |
336 | #address-cells = <1>; | 336 | #address-cells = <1>; |
337 | #size-cells = <1>; | 337 | #size-cells = <1>; |
338 | ranges = <0 0 0x800>; | ||
338 | 339 | ||
339 | scm_clocks: clocks { | 340 | scm_clocks: clocks { |
340 | #address-cells = <1>; | 341 | #address-cells = <1>; |
diff --git a/arch/arm/boot/dts/dm816x.dtsi b/arch/arm/boot/dts/dm816x.dtsi index 61dd2f6b02bc..621c211a436c 100644 --- a/arch/arm/boot/dts/dm816x.dtsi +++ b/arch/arm/boot/dts/dm816x.dtsi | |||
@@ -372,7 +372,7 @@ | |||
372 | }; | 372 | }; |
373 | 373 | ||
374 | uart1: uart@48020000 { | 374 | uart1: uart@48020000 { |
375 | compatible = "ti,omap3-uart"; | 375 | compatible = "ti,am3352-uart", "ti,omap3-uart"; |
376 | ti,hwmods = "uart1"; | 376 | ti,hwmods = "uart1"; |
377 | reg = <0x48020000 0x2000>; | 377 | reg = <0x48020000 0x2000>; |
378 | clock-frequency = <48000000>; | 378 | clock-frequency = <48000000>; |
@@ -382,7 +382,7 @@ | |||
382 | }; | 382 | }; |
383 | 383 | ||
384 | uart2: uart@48022000 { | 384 | uart2: uart@48022000 { |
385 | compatible = "ti,omap3-uart"; | 385 | compatible = "ti,am3352-uart", "ti,omap3-uart"; |
386 | ti,hwmods = "uart2"; | 386 | ti,hwmods = "uart2"; |
387 | reg = <0x48022000 0x2000>; | 387 | reg = <0x48022000 0x2000>; |
388 | clock-frequency = <48000000>; | 388 | clock-frequency = <48000000>; |
@@ -392,7 +392,7 @@ | |||
392 | }; | 392 | }; |
393 | 393 | ||
394 | uart3: uart@48024000 { | 394 | uart3: uart@48024000 { |
395 | compatible = "ti,omap3-uart"; | 395 | compatible = "ti,am3352-uart", "ti,omap3-uart"; |
396 | ti,hwmods = "uart3"; | 396 | ti,hwmods = "uart3"; |
397 | reg = <0x48024000 0x2000>; | 397 | reg = <0x48024000 0x2000>; |
398 | clock-frequency = <48000000>; | 398 | clock-frequency = <48000000>; |
diff --git a/arch/arm/mach-omap2/id.c b/arch/arm/mach-omap2/id.c index cc6d9fa60924..e2274a162b74 100644 --- a/arch/arm/mach-omap2/id.c +++ b/arch/arm/mach-omap2/id.c | |||
@@ -223,7 +223,15 @@ static void __init omap3_cpuinfo(void) | |||
223 | * and CPU class bits. | 223 | * and CPU class bits. |
224 | */ | 224 | */ |
225 | if (soc_is_omap3630()) { | 225 | if (soc_is_omap3630()) { |
226 | cpu_name = "OMAP3630"; | 226 | if (omap3_has_iva() && omap3_has_sgx()) { |
227 | cpu_name = (omap3_has_isp()) ? "OMAP3630/DM3730" : "OMAP3621"; | ||
228 | } else if (omap3_has_iva()) { | ||
229 | cpu_name = "DM3725"; | ||
230 | } else if (omap3_has_sgx()) { | ||
231 | cpu_name = "OMAP3615/AM3715"; | ||
232 | } else { | ||
233 | cpu_name = (omap3_has_isp()) ? "AM3703" : "OMAP3611"; | ||
234 | } | ||
227 | } else if (soc_is_am35xx()) { | 235 | } else if (soc_is_am35xx()) { |
228 | cpu_name = (omap3_has_sgx()) ? "AM3517" : "AM3505"; | 236 | cpu_name = (omap3_has_sgx()) ? "AM3517" : "AM3505"; |
229 | } else if (soc_is_ti816x()) { | 237 | } else if (soc_is_ti816x()) { |
diff --git a/arch/arm/mach-omap2/omap_hwmod_54xx_data.c b/arch/arm/mach-omap2/omap_hwmod_54xx_data.c index 8cdfd9b7ab4f..a2d763a4cc57 100644 --- a/arch/arm/mach-omap2/omap_hwmod_54xx_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_54xx_data.c | |||
@@ -1748,6 +1748,7 @@ static struct omap_hwmod omap54xx_uart1_hwmod = { | |||
1748 | .name = "uart1", | 1748 | .name = "uart1", |
1749 | .class = &omap54xx_uart_hwmod_class, | 1749 | .class = &omap54xx_uart_hwmod_class, |
1750 | .clkdm_name = "l4per_clkdm", | 1750 | .clkdm_name = "l4per_clkdm", |
1751 | .flags = HWMOD_SWSUP_SIDLE_ACT, | ||
1751 | .main_clk = "func_48m_fclk", | 1752 | .main_clk = "func_48m_fclk", |
1752 | .prcm = { | 1753 | .prcm = { |
1753 | .omap4 = { | 1754 | .omap4 = { |
@@ -1763,6 +1764,7 @@ static struct omap_hwmod omap54xx_uart2_hwmod = { | |||
1763 | .name = "uart2", | 1764 | .name = "uart2", |
1764 | .class = &omap54xx_uart_hwmod_class, | 1765 | .class = &omap54xx_uart_hwmod_class, |
1765 | .clkdm_name = "l4per_clkdm", | 1766 | .clkdm_name = "l4per_clkdm", |
1767 | .flags = HWMOD_SWSUP_SIDLE_ACT, | ||
1766 | .main_clk = "func_48m_fclk", | 1768 | .main_clk = "func_48m_fclk", |
1767 | .prcm = { | 1769 | .prcm = { |
1768 | .omap4 = { | 1770 | .omap4 = { |
@@ -1778,7 +1780,7 @@ static struct omap_hwmod omap54xx_uart3_hwmod = { | |||
1778 | .name = "uart3", | 1780 | .name = "uart3", |
1779 | .class = &omap54xx_uart_hwmod_class, | 1781 | .class = &omap54xx_uart_hwmod_class, |
1780 | .clkdm_name = "l4per_clkdm", | 1782 | .clkdm_name = "l4per_clkdm", |
1781 | .flags = DEBUG_OMAP4UART3_FLAGS, | 1783 | .flags = DEBUG_OMAP4UART3_FLAGS | HWMOD_SWSUP_SIDLE_ACT, |
1782 | .main_clk = "func_48m_fclk", | 1784 | .main_clk = "func_48m_fclk", |
1783 | .prcm = { | 1785 | .prcm = { |
1784 | .omap4 = { | 1786 | .omap4 = { |
@@ -1794,7 +1796,7 @@ static struct omap_hwmod omap54xx_uart4_hwmod = { | |||
1794 | .name = "uart4", | 1796 | .name = "uart4", |
1795 | .class = &omap54xx_uart_hwmod_class, | 1797 | .class = &omap54xx_uart_hwmod_class, |
1796 | .clkdm_name = "l4per_clkdm", | 1798 | .clkdm_name = "l4per_clkdm", |
1797 | .flags = DEBUG_OMAP4UART4_FLAGS, | 1799 | .flags = DEBUG_OMAP4UART4_FLAGS | HWMOD_SWSUP_SIDLE_ACT, |
1798 | .main_clk = "func_48m_fclk", | 1800 | .main_clk = "func_48m_fclk", |
1799 | .prcm = { | 1801 | .prcm = { |
1800 | .omap4 = { | 1802 | .omap4 = { |
@@ -1810,6 +1812,7 @@ static struct omap_hwmod omap54xx_uart5_hwmod = { | |||
1810 | .name = "uart5", | 1812 | .name = "uart5", |
1811 | .class = &omap54xx_uart_hwmod_class, | 1813 | .class = &omap54xx_uart_hwmod_class, |
1812 | .clkdm_name = "l4per_clkdm", | 1814 | .clkdm_name = "l4per_clkdm", |
1815 | .flags = HWMOD_SWSUP_SIDLE_ACT, | ||
1813 | .main_clk = "func_48m_fclk", | 1816 | .main_clk = "func_48m_fclk", |
1814 | .prcm = { | 1817 | .prcm = { |
1815 | .omap4 = { | 1818 | .omap4 = { |
@@ -1825,6 +1828,7 @@ static struct omap_hwmod omap54xx_uart6_hwmod = { | |||
1825 | .name = "uart6", | 1828 | .name = "uart6", |
1826 | .class = &omap54xx_uart_hwmod_class, | 1829 | .class = &omap54xx_uart_hwmod_class, |
1827 | .clkdm_name = "l4per_clkdm", | 1830 | .clkdm_name = "l4per_clkdm", |
1831 | .flags = HWMOD_SWSUP_SIDLE_ACT, | ||
1828 | .main_clk = "func_48m_fclk", | 1832 | .main_clk = "func_48m_fclk", |
1829 | .prcm = { | 1833 | .prcm = { |
1830 | .omap4 = { | 1834 | .omap4 = { |
diff --git a/arch/arm/mach-omap2/pdata-quirks.c b/arch/arm/mach-omap2/pdata-quirks.c index 477910a48448..58d87a78cb90 100644 --- a/arch/arm/mach-omap2/pdata-quirks.c +++ b/arch/arm/mach-omap2/pdata-quirks.c | |||
@@ -599,7 +599,6 @@ static void pdata_quirks_check(struct pdata_init *quirks) | |||
599 | if (of_machine_is_compatible(quirks->compatible)) { | 599 | if (of_machine_is_compatible(quirks->compatible)) { |
600 | if (quirks->fn) | 600 | if (quirks->fn) |
601 | quirks->fn(); | 601 | quirks->fn(); |
602 | break; | ||
603 | } | 602 | } |
604 | quirks++; | 603 | quirks++; |
605 | } | 604 | } |
diff --git a/include/dt-bindings/pinctrl/omap.h b/include/dt-bindings/pinctrl/omap.h index effadd05695b..fbd6f7202476 100644 --- a/include/dt-bindings/pinctrl/omap.h +++ b/include/dt-bindings/pinctrl/omap.h | |||
@@ -45,8 +45,8 @@ | |||
45 | #define PIN_OFF_NONE 0 | 45 | #define PIN_OFF_NONE 0 |
46 | #define PIN_OFF_OUTPUT_HIGH (OFF_EN | OFFOUT_EN | OFFOUT_VAL) | 46 | #define PIN_OFF_OUTPUT_HIGH (OFF_EN | OFFOUT_EN | OFFOUT_VAL) |
47 | #define PIN_OFF_OUTPUT_LOW (OFF_EN | OFFOUT_EN) | 47 | #define PIN_OFF_OUTPUT_LOW (OFF_EN | OFFOUT_EN) |
48 | #define PIN_OFF_INPUT_PULLUP (OFF_EN | OFF_PULL_EN | OFF_PULL_UP) | 48 | #define PIN_OFF_INPUT_PULLUP (OFF_EN | OFFOUT_EN | OFF_PULL_EN | OFF_PULL_UP) |
49 | #define PIN_OFF_INPUT_PULLDOWN (OFF_EN | OFF_PULL_EN) | 49 | #define PIN_OFF_INPUT_PULLDOWN (OFF_EN | OFFOUT_EN | OFF_PULL_EN) |
50 | #define PIN_OFF_WAKEUPENABLE WAKEUP_EN | 50 | #define PIN_OFF_WAKEUPENABLE WAKEUP_EN |
51 | 51 | ||
52 | /* | 52 | /* |