aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOlof Johansson <olof@lixom.net>2017-01-29 20:14:43 -0500
committerOlof Johansson <olof@lixom.net>2017-01-29 20:14:43 -0500
commitc0d32456091a81b0880e302d8c38c736a4dddab0 (patch)
tree2f53c0b902a61e1480b2b5dc13d0f993ff6db73a
parent2af49ab6868ca84e7a0c5e8d984d4e1754edb5a5 (diff)
parent631af44c10f9430163296626c6134db16a4f51fb (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.dtsi3
-rw-r--r--arch/arm/boot/dts/dm814x.dtsi9
-rw-r--r--arch/arm/boot/dts/dm816x.dtsi6
-rw-r--r--arch/arm/mach-omap2/id.c10
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_54xx_data.c8
-rw-r--r--arch/arm/mach-omap2/pdata-quirks.c1
-rw-r--r--include/dt-bindings/pinctrl/omap.h4
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/*