diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-08-02 12:12:46 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-08-02 12:12:46 -0400 |
commit | 30c7b56d63fc717bd0aa74da6e3cf354f2ed3b3e (patch) | |
tree | 99d3fa6f824db17050fac5dc6bf3c41e7f8e0f85 | |
parent | 01183609ab61d11f1c310d42552a97be3051cc0f (diff) | |
parent | c1bfa985ded82cacdfc6403e78f329c44e35534a (diff) |
Merge tag 'armsoc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull ARM SoC fixes from Olof Johansson:
"Things are calming down nicely here w.r.t. fixes. This batch
includes two week's worth since I missed to send before -rc4.
Nothing particularly scary to point out, smaller fixes here and there.
Shortlog describes it pretty well"
* tag 'armsoc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
ARM: dts: keystone: fix dt bindings to use post div register for mainpll
ARM: nomadik: disable UART0 on Nomadik boards
ARM: dts: i.MX35: Fix can support.
ARM: OMAP2+: hwmod: Fix _wait_target_ready() for hwmods without sysc
ARM: dts: add CPU OPP and regulator supply property for exynos4210
ARM: dts: Update video-phy node with syscon phandle for exynos3250
ARM: DRA7: hwmod: fix gpmc hwmod
-rw-r--r-- | arch/arm/boot/dts/exynos3250.dtsi | 2 | ||||
-rw-r--r-- | arch/arm/boot/dts/exynos4210-origen.dts | 4 | ||||
-rw-r--r-- | arch/arm/boot/dts/exynos4210-trats.dts | 4 | ||||
-rw-r--r-- | arch/arm/boot/dts/exynos4210-universal_c210.dts | 4 | ||||
-rw-r--r-- | arch/arm/boot/dts/exynos4210.dtsi | 12 | ||||
-rw-r--r-- | arch/arm/boot/dts/imx35.dtsi | 8 | ||||
-rw-r--r-- | arch/arm/boot/dts/k2e-clocks.dtsi | 5 | ||||
-rw-r--r-- | arch/arm/boot/dts/k2hk-clocks.dtsi | 5 | ||||
-rw-r--r-- | arch/arm/boot/dts/k2l-clocks.dtsi | 5 | ||||
-rw-r--r-- | arch/arm/boot/dts/ste-nomadik-nhk15.dts | 1 | ||||
-rw-r--r-- | arch/arm/boot/dts/ste-nomadik-s8815.dts | 4 | ||||
-rw-r--r-- | arch/arm/boot/dts/ste-nomadik-stn8815.dtsi | 1 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap_hwmod.c | 24 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 5 |
14 files changed, 59 insertions, 25 deletions
diff --git a/arch/arm/boot/dts/exynos3250.dtsi b/arch/arm/boot/dts/exynos3250.dtsi index d7201333e3bc..2db99433e17f 100644 --- a/arch/arm/boot/dts/exynos3250.dtsi +++ b/arch/arm/boot/dts/exynos3250.dtsi | |||
@@ -138,8 +138,8 @@ | |||
138 | 138 | ||
139 | mipi_phy: video-phy@10020710 { | 139 | mipi_phy: video-phy@10020710 { |
140 | compatible = "samsung,s5pv210-mipi-video-phy"; | 140 | compatible = "samsung,s5pv210-mipi-video-phy"; |
141 | reg = <0x10020710 8>; | ||
142 | #phy-cells = <1>; | 141 | #phy-cells = <1>; |
142 | syscon = <&pmu_system_controller>; | ||
143 | }; | 143 | }; |
144 | 144 | ||
145 | pd_cam: cam-power-domain@10023C00 { | 145 | pd_cam: cam-power-domain@10023C00 { |
diff --git a/arch/arm/boot/dts/exynos4210-origen.dts b/arch/arm/boot/dts/exynos4210-origen.dts index e0abfc3324d1..e050d85cdacd 100644 --- a/arch/arm/boot/dts/exynos4210-origen.dts +++ b/arch/arm/boot/dts/exynos4210-origen.dts | |||
@@ -127,6 +127,10 @@ | |||
127 | }; | 127 | }; |
128 | }; | 128 | }; |
129 | 129 | ||
130 | &cpu0 { | ||
131 | cpu0-supply = <&buck1_reg>; | ||
132 | }; | ||
133 | |||
130 | &fimd { | 134 | &fimd { |
131 | pinctrl-0 = <&lcd_en &lcd_clk &lcd_data24 &pwm0_out>; | 135 | pinctrl-0 = <&lcd_en &lcd_clk &lcd_data24 &pwm0_out>; |
132 | pinctrl-names = "default"; | 136 | pinctrl-names = "default"; |
diff --git a/arch/arm/boot/dts/exynos4210-trats.dts b/arch/arm/boot/dts/exynos4210-trats.dts index 98f3ce65cb9a..ba34886f8b65 100644 --- a/arch/arm/boot/dts/exynos4210-trats.dts +++ b/arch/arm/boot/dts/exynos4210-trats.dts | |||
@@ -188,6 +188,10 @@ | |||
188 | }; | 188 | }; |
189 | }; | 189 | }; |
190 | 190 | ||
191 | &cpu0 { | ||
192 | cpu0-supply = <&varm_breg>; | ||
193 | }; | ||
194 | |||
191 | &dsi_0 { | 195 | &dsi_0 { |
192 | vddcore-supply = <&vusb_reg>; | 196 | vddcore-supply = <&vusb_reg>; |
193 | vddio-supply = <&vmipi_reg>; | 197 | vddio-supply = <&vmipi_reg>; |
diff --git a/arch/arm/boot/dts/exynos4210-universal_c210.dts b/arch/arm/boot/dts/exynos4210-universal_c210.dts index d4f2b11319dd..775892b2cc6a 100644 --- a/arch/arm/boot/dts/exynos4210-universal_c210.dts +++ b/arch/arm/boot/dts/exynos4210-universal_c210.dts | |||
@@ -548,6 +548,10 @@ | |||
548 | }; | 548 | }; |
549 | }; | 549 | }; |
550 | 550 | ||
551 | &cpu0 { | ||
552 | cpu0-supply = <&vdd_arm_reg>; | ||
553 | }; | ||
554 | |||
551 | &pinctrl_1 { | 555 | &pinctrl_1 { |
552 | hdmi_hpd: hdmi-hpd { | 556 | hdmi_hpd: hdmi-hpd { |
553 | samsung,pins = "gpx3-7"; | 557 | samsung,pins = "gpx3-7"; |
diff --git a/arch/arm/boot/dts/exynos4210.dtsi b/arch/arm/boot/dts/exynos4210.dtsi index 10d3c173396e..3e5ba665d200 100644 --- a/arch/arm/boot/dts/exynos4210.dtsi +++ b/arch/arm/boot/dts/exynos4210.dtsi | |||
@@ -40,6 +40,18 @@ | |||
40 | device_type = "cpu"; | 40 | device_type = "cpu"; |
41 | compatible = "arm,cortex-a9"; | 41 | compatible = "arm,cortex-a9"; |
42 | reg = <0x900>; | 42 | reg = <0x900>; |
43 | clocks = <&clock CLK_ARM_CLK>; | ||
44 | clock-names = "cpu"; | ||
45 | clock-latency = <160000>; | ||
46 | |||
47 | operating-points = < | ||
48 | 1200000 1250000 | ||
49 | 1000000 1150000 | ||
50 | 800000 1075000 | ||
51 | 500000 975000 | ||
52 | 400000 975000 | ||
53 | 200000 950000 | ||
54 | >; | ||
43 | cooling-min-level = <4>; | 55 | cooling-min-level = <4>; |
44 | cooling-max-level = <2>; | 56 | cooling-max-level = <2>; |
45 | #cooling-cells = <2>; /* min followed by max */ | 57 | #cooling-cells = <2>; /* min followed by max */ |
diff --git a/arch/arm/boot/dts/imx35.dtsi b/arch/arm/boot/dts/imx35.dtsi index b6478e97d6a7..e6540b5cfa4c 100644 --- a/arch/arm/boot/dts/imx35.dtsi +++ b/arch/arm/boot/dts/imx35.dtsi | |||
@@ -286,8 +286,8 @@ | |||
286 | can1: can@53fe4000 { | 286 | can1: can@53fe4000 { |
287 | compatible = "fsl,imx35-flexcan", "fsl,p1010-flexcan"; | 287 | compatible = "fsl,imx35-flexcan", "fsl,p1010-flexcan"; |
288 | reg = <0x53fe4000 0x1000>; | 288 | reg = <0x53fe4000 0x1000>; |
289 | clocks = <&clks 33>; | 289 | clocks = <&clks 33>, <&clks 33>; |
290 | clock-names = "ipg"; | 290 | clock-names = "ipg", "per"; |
291 | interrupts = <43>; | 291 | interrupts = <43>; |
292 | status = "disabled"; | 292 | status = "disabled"; |
293 | }; | 293 | }; |
@@ -295,8 +295,8 @@ | |||
295 | can2: can@53fe8000 { | 295 | can2: can@53fe8000 { |
296 | compatible = "fsl,imx35-flexcan", "fsl,p1010-flexcan"; | 296 | compatible = "fsl,imx35-flexcan", "fsl,p1010-flexcan"; |
297 | reg = <0x53fe8000 0x1000>; | 297 | reg = <0x53fe8000 0x1000>; |
298 | clocks = <&clks 34>; | 298 | clocks = <&clks 34>, <&clks 34>; |
299 | clock-names = "ipg"; | 299 | clock-names = "ipg", "per"; |
300 | interrupts = <44>; | 300 | interrupts = <44>; |
301 | status = "disabled"; | 301 | status = "disabled"; |
302 | }; | 302 | }; |
diff --git a/arch/arm/boot/dts/k2e-clocks.dtsi b/arch/arm/boot/dts/k2e-clocks.dtsi index 4773d6af66a0..d56d68fe7ffc 100644 --- a/arch/arm/boot/dts/k2e-clocks.dtsi +++ b/arch/arm/boot/dts/k2e-clocks.dtsi | |||
@@ -13,9 +13,8 @@ clocks { | |||
13 | #clock-cells = <0>; | 13 | #clock-cells = <0>; |
14 | compatible = "ti,keystone,main-pll-clock"; | 14 | compatible = "ti,keystone,main-pll-clock"; |
15 | clocks = <&refclksys>; | 15 | clocks = <&refclksys>; |
16 | reg = <0x02620350 4>, <0x02310110 4>; | 16 | reg = <0x02620350 4>, <0x02310110 4>, <0x02310108 4>; |
17 | reg-names = "control", "multiplier"; | 17 | reg-names = "control", "multiplier", "post-divider"; |
18 | fixed-postdiv = <2>; | ||
19 | }; | 18 | }; |
20 | 19 | ||
21 | papllclk: papllclk@2620358 { | 20 | papllclk: papllclk@2620358 { |
diff --git a/arch/arm/boot/dts/k2hk-clocks.dtsi b/arch/arm/boot/dts/k2hk-clocks.dtsi index d5adee3c0067..af9b7190533a 100644 --- a/arch/arm/boot/dts/k2hk-clocks.dtsi +++ b/arch/arm/boot/dts/k2hk-clocks.dtsi | |||
@@ -22,9 +22,8 @@ clocks { | |||
22 | #clock-cells = <0>; | 22 | #clock-cells = <0>; |
23 | compatible = "ti,keystone,main-pll-clock"; | 23 | compatible = "ti,keystone,main-pll-clock"; |
24 | clocks = <&refclksys>; | 24 | clocks = <&refclksys>; |
25 | reg = <0x02620350 4>, <0x02310110 4>; | 25 | reg = <0x02620350 4>, <0x02310110 4>, <0x02310108 4>; |
26 | reg-names = "control", "multiplier"; | 26 | reg-names = "control", "multiplier", "post-divider"; |
27 | fixed-postdiv = <2>; | ||
28 | }; | 27 | }; |
29 | 28 | ||
30 | papllclk: papllclk@2620358 { | 29 | papllclk: papllclk@2620358 { |
diff --git a/arch/arm/boot/dts/k2l-clocks.dtsi b/arch/arm/boot/dts/k2l-clocks.dtsi index eb1e3e29f073..ef8464bb11ff 100644 --- a/arch/arm/boot/dts/k2l-clocks.dtsi +++ b/arch/arm/boot/dts/k2l-clocks.dtsi | |||
@@ -22,9 +22,8 @@ clocks { | |||
22 | #clock-cells = <0>; | 22 | #clock-cells = <0>; |
23 | compatible = "ti,keystone,main-pll-clock"; | 23 | compatible = "ti,keystone,main-pll-clock"; |
24 | clocks = <&refclksys>; | 24 | clocks = <&refclksys>; |
25 | reg = <0x02620350 4>, <0x02310110 4>; | 25 | reg = <0x02620350 4>, <0x02310110 4>, <0x02310108 4>; |
26 | reg-names = "control", "multiplier"; | 26 | reg-names = "control", "multiplier", "post-divider"; |
27 | fixed-postdiv = <2>; | ||
28 | }; | 27 | }; |
29 | 28 | ||
30 | papllclk: papllclk@2620358 { | 29 | papllclk: papllclk@2620358 { |
diff --git a/arch/arm/boot/dts/ste-nomadik-nhk15.dts b/arch/arm/boot/dts/ste-nomadik-nhk15.dts index 3d0b8755caee..3d25dba143a5 100644 --- a/arch/arm/boot/dts/ste-nomadik-nhk15.dts +++ b/arch/arm/boot/dts/ste-nomadik-nhk15.dts | |||
@@ -17,6 +17,7 @@ | |||
17 | }; | 17 | }; |
18 | 18 | ||
19 | aliases { | 19 | aliases { |
20 | serial1 = &uart1; | ||
20 | stmpe-i2c0 = &stmpe0; | 21 | stmpe-i2c0 = &stmpe0; |
21 | stmpe-i2c1 = &stmpe1; | 22 | stmpe-i2c1 = &stmpe1; |
22 | }; | 23 | }; |
diff --git a/arch/arm/boot/dts/ste-nomadik-s8815.dts b/arch/arm/boot/dts/ste-nomadik-s8815.dts index 85d3b95dfdba..3c140d05f796 100644 --- a/arch/arm/boot/dts/ste-nomadik-s8815.dts +++ b/arch/arm/boot/dts/ste-nomadik-s8815.dts | |||
@@ -15,6 +15,10 @@ | |||
15 | bootargs = "root=/dev/ram0 console=ttyAMA1,115200n8 earlyprintk"; | 15 | bootargs = "root=/dev/ram0 console=ttyAMA1,115200n8 earlyprintk"; |
16 | }; | 16 | }; |
17 | 17 | ||
18 | aliases { | ||
19 | serial1 = &uart1; | ||
20 | }; | ||
21 | |||
18 | src@101e0000 { | 22 | src@101e0000 { |
19 | /* These chrystal drivers are not used on this board */ | 23 | /* These chrystal drivers are not used on this board */ |
20 | disable-sxtalo; | 24 | disable-sxtalo; |
diff --git a/arch/arm/boot/dts/ste-nomadik-stn8815.dtsi b/arch/arm/boot/dts/ste-nomadik-stn8815.dtsi index 9a5f2ba139b7..ef794a33b4dc 100644 --- a/arch/arm/boot/dts/ste-nomadik-stn8815.dtsi +++ b/arch/arm/boot/dts/ste-nomadik-stn8815.dtsi | |||
@@ -757,6 +757,7 @@ | |||
757 | clock-names = "uartclk", "apb_pclk"; | 757 | clock-names = "uartclk", "apb_pclk"; |
758 | pinctrl-names = "default"; | 758 | pinctrl-names = "default"; |
759 | pinctrl-0 = <&uart0_default_mux>; | 759 | pinctrl-0 = <&uart0_default_mux>; |
760 | status = "disabled"; | ||
760 | }; | 761 | }; |
761 | 762 | ||
762 | uart1: uart@101fb000 { | 763 | uart1: uart@101fb000 { |
diff --git a/arch/arm/mach-omap2/omap_hwmod.c b/arch/arm/mach-omap2/omap_hwmod.c index d78c12e7cb5e..486cc4ded190 100644 --- a/arch/arm/mach-omap2/omap_hwmod.c +++ b/arch/arm/mach-omap2/omap_hwmod.c | |||
@@ -2373,6 +2373,9 @@ static int of_dev_hwmod_lookup(struct device_node *np, | |||
2373 | * registers. This address is needed early so the OCP registers that | 2373 | * registers. This address is needed early so the OCP registers that |
2374 | * are part of the device's address space can be ioremapped properly. | 2374 | * are part of the device's address space can be ioremapped properly. |
2375 | * | 2375 | * |
2376 | * If SYSC access is not needed, the registers will not be remapped | ||
2377 | * and non-availability of MPU access is not treated as an error. | ||
2378 | * | ||
2376 | * Returns 0 on success, -EINVAL if an invalid hwmod is passed, and | 2379 | * Returns 0 on success, -EINVAL if an invalid hwmod is passed, and |
2377 | * -ENXIO on absent or invalid register target address space. | 2380 | * -ENXIO on absent or invalid register target address space. |
2378 | */ | 2381 | */ |
@@ -2387,6 +2390,11 @@ static int __init _init_mpu_rt_base(struct omap_hwmod *oh, void *data, | |||
2387 | 2390 | ||
2388 | _save_mpu_port_index(oh); | 2391 | _save_mpu_port_index(oh); |
2389 | 2392 | ||
2393 | /* if we don't need sysc access we don't need to ioremap */ | ||
2394 | if (!oh->class->sysc) | ||
2395 | return 0; | ||
2396 | |||
2397 | /* we can't continue without MPU PORT if we need sysc access */ | ||
2390 | if (oh->_int_flags & _HWMOD_NO_MPU_PORT) | 2398 | if (oh->_int_flags & _HWMOD_NO_MPU_PORT) |
2391 | return -ENXIO; | 2399 | return -ENXIO; |
2392 | 2400 | ||
@@ -2396,8 +2404,10 @@ static int __init _init_mpu_rt_base(struct omap_hwmod *oh, void *data, | |||
2396 | oh->name); | 2404 | oh->name); |
2397 | 2405 | ||
2398 | /* Extract the IO space from device tree blob */ | 2406 | /* Extract the IO space from device tree blob */ |
2399 | if (!np) | 2407 | if (!np) { |
2408 | pr_err("omap_hwmod: %s: no dt node\n", oh->name); | ||
2400 | return -ENXIO; | 2409 | return -ENXIO; |
2410 | } | ||
2401 | 2411 | ||
2402 | va_start = of_iomap(np, index + oh->mpu_rt_idx); | 2412 | va_start = of_iomap(np, index + oh->mpu_rt_idx); |
2403 | } else { | 2413 | } else { |
@@ -2456,13 +2466,11 @@ static int __init _init(struct omap_hwmod *oh, void *data) | |||
2456 | oh->name, np->name); | 2466 | oh->name, np->name); |
2457 | } | 2467 | } |
2458 | 2468 | ||
2459 | if (oh->class->sysc) { | 2469 | r = _init_mpu_rt_base(oh, NULL, index, np); |
2460 | r = _init_mpu_rt_base(oh, NULL, index, np); | 2470 | if (r < 0) { |
2461 | if (r < 0) { | 2471 | WARN(1, "omap_hwmod: %s: doesn't have mpu register target base\n", |
2462 | WARN(1, "omap_hwmod: %s: doesn't have mpu register target base\n", | 2472 | oh->name); |
2463 | oh->name); | 2473 | return 0; |
2464 | return 0; | ||
2465 | } | ||
2466 | } | 2474 | } |
2467 | 2475 | ||
2468 | r = _init_clocks(oh, NULL); | 2476 | r = _init_clocks(oh, NULL); |
diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c index 2606c6608bd8..562247bced49 100644 --- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c | |||
@@ -827,8 +827,7 @@ static struct omap_hwmod_class_sysconfig dra7xx_gpmc_sysc = { | |||
827 | .syss_offs = 0x0014, | 827 | .syss_offs = 0x0014, |
828 | .sysc_flags = (SYSC_HAS_AUTOIDLE | SYSC_HAS_SIDLEMODE | | 828 | .sysc_flags = (SYSC_HAS_AUTOIDLE | SYSC_HAS_SIDLEMODE | |
829 | SYSC_HAS_SOFTRESET | SYSS_HAS_RESET_STATUS), | 829 | SYSC_HAS_SOFTRESET | SYSS_HAS_RESET_STATUS), |
830 | .idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART | | 830 | .idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART), |
831 | SIDLE_SMART_WKUP), | ||
832 | .sysc_fields = &omap_hwmod_sysc_type1, | 831 | .sysc_fields = &omap_hwmod_sysc_type1, |
833 | }; | 832 | }; |
834 | 833 | ||
@@ -844,7 +843,7 @@ static struct omap_hwmod dra7xx_gpmc_hwmod = { | |||
844 | .class = &dra7xx_gpmc_hwmod_class, | 843 | .class = &dra7xx_gpmc_hwmod_class, |
845 | .clkdm_name = "l3main1_clkdm", | 844 | .clkdm_name = "l3main1_clkdm", |
846 | /* Skip reset for CONFIG_OMAP_GPMC_DEBUG for bootloader timings */ | 845 | /* Skip reset for CONFIG_OMAP_GPMC_DEBUG for bootloader timings */ |
847 | .flags = HWMOD_SWSUP_SIDLE | DEBUG_OMAP_GPMC_HWMOD_FLAGS, | 846 | .flags = DEBUG_OMAP_GPMC_HWMOD_FLAGS, |
848 | .main_clk = "l3_iclk_div", | 847 | .main_clk = "l3_iclk_div", |
849 | .prcm = { | 848 | .prcm = { |
850 | .omap4 = { | 849 | .omap4 = { |