diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2018-09-02 13:44:28 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2018-09-02 13:44:28 -0400 |
| commit | a3ea9911e225337472fe7cc9278966049a1571e5 (patch) | |
| tree | 0e454bfb536028eba241bc720d2af57316e0b950 | |
| parent | 899ba79553cf1699bdcd262950b48501b0285529 (diff) | |
| parent | a72b44a871c218e2a0580e68affa1d3528c0587a (diff) | |
Merge tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull ARM SoC fixes from Olof Johansson:
"First batch of fixes post-merge window:
- A handful of devicetree changes for i.MX2{3,8} to change over to
new panel bindings. The platforms were moved from legacy
framebuffers to DRM and some development board panels hadn't yet
been converted.
- OMAP fixes related to ti-sysc driver conversion fallout, fixing
some register offsets, no_console_suspend fixes, etc.
- Droid4 changes to fix flaky eMMC probing and vibrator DTS mismerge.
- Fixed 0755->0644 permissions on a newly added file.
- Defconfig changes to make ARM Versatile more useful with QEMU
(helps testing).
- Enable defconfig options for new TI SoC platform that was merged
this window (AM6)"
* tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
arm64: defconfig: Enable TI's AM6 SoC platform
ARM: defconfig: Update the ARM Versatile defconfig
ARM: dts: omap4-droid4: Fix emmc errors seen on some devices
ARM: dts: Fix file permission for am335x-osd3358-sm-red.dts
ARM: imx_v6_v7_defconfig: Select CONFIG_DRM_PANEL_SEIKO_43WVF1G
ARM: mxs_defconfig: Select CONFIG_DRM_PANEL_SEIKO_43WVF1G
ARM: dts: imx23-evk: Convert to the new display bindings
ARM: dts: imx23-evk: Move regulators outside simple-bus
ARM: dts: imx28-evk: Convert to the new display bindings
ARM: dts: imx28-evk: Move regulators outside simple-bus
Revert "ARM: dts: imx7d: Invert legacy PCI irq mapping"
arm: dts: am4372: setup rtc as system-power-controller
ARM: dts: omap4-droid4: fix vibrations on Droid 4
bus: ti-sysc: Fix no_console_suspend handling
bus: ti-sysc: Fix module register ioremap for larger offsets
ARM: OMAP2+: Fix module address for modules using mpu_rt_idx
ARM: OMAP2+: Fix null hwmod for ti-sysc debug
| -rw-r--r--[-rwxr-xr-x] | arch/arm/boot/dts/am335x-osd3358-sm-red.dts | 0 | ||||
| -rw-r--r-- | arch/arm/boot/dts/am4372.dtsi | 1 | ||||
| -rw-r--r-- | arch/arm/boot/dts/imx23-evk.dts | 90 | ||||
| -rw-r--r-- | arch/arm/boot/dts/imx28-evk.dts | 183 | ||||
| -rw-r--r-- | arch/arm/boot/dts/imx7d.dtsi | 12 | ||||
| -rw-r--r-- | arch/arm/boot/dts/omap4-droid4-xt894.dts | 20 | ||||
| -rw-r--r-- | arch/arm/configs/imx_v6_v7_defconfig | 1 | ||||
| -rw-r--r-- | arch/arm/configs/mxs_defconfig | 1 | ||||
| -rw-r--r-- | arch/arm/configs/versatile_defconfig | 14 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/omap_hwmod.c | 39 | ||||
| -rw-r--r-- | arch/arm64/configs/defconfig | 3 | ||||
| -rw-r--r-- | drivers/bus/ti-sysc.c | 37 |
12 files changed, 213 insertions, 188 deletions
diff --git a/arch/arm/boot/dts/am335x-osd3358-sm-red.dts b/arch/arm/boot/dts/am335x-osd3358-sm-red.dts index 4d969013f99a..4d969013f99a 100755..100644 --- a/arch/arm/boot/dts/am335x-osd3358-sm-red.dts +++ b/arch/arm/boot/dts/am335x-osd3358-sm-red.dts | |||
diff --git a/arch/arm/boot/dts/am4372.dtsi b/arch/arm/boot/dts/am4372.dtsi index f0cbd86312dc..d4b7c59eec68 100644 --- a/arch/arm/boot/dts/am4372.dtsi +++ b/arch/arm/boot/dts/am4372.dtsi | |||
| @@ -469,6 +469,7 @@ | |||
| 469 | ti,hwmods = "rtc"; | 469 | ti,hwmods = "rtc"; |
| 470 | clocks = <&clk_32768_ck>; | 470 | clocks = <&clk_32768_ck>; |
| 471 | clock-names = "int-clk"; | 471 | clock-names = "int-clk"; |
| 472 | system-power-controller; | ||
| 472 | status = "disabled"; | 473 | status = "disabled"; |
| 473 | }; | 474 | }; |
| 474 | 475 | ||
diff --git a/arch/arm/boot/dts/imx23-evk.dts b/arch/arm/boot/dts/imx23-evk.dts index 9fb47724b9c1..ad2ae25b7b4d 100644 --- a/arch/arm/boot/dts/imx23-evk.dts +++ b/arch/arm/boot/dts/imx23-evk.dts | |||
| @@ -13,6 +13,43 @@ | |||
| 13 | reg = <0x40000000 0x08000000>; | 13 | reg = <0x40000000 0x08000000>; |
| 14 | }; | 14 | }; |
| 15 | 15 | ||
| 16 | reg_vddio_sd0: regulator-vddio-sd0 { | ||
| 17 | compatible = "regulator-fixed"; | ||
| 18 | regulator-name = "vddio-sd0"; | ||
| 19 | regulator-min-microvolt = <3300000>; | ||
| 20 | regulator-max-microvolt = <3300000>; | ||
| 21 | gpio = <&gpio1 29 0>; | ||
| 22 | }; | ||
| 23 | |||
| 24 | reg_lcd_3v3: regulator-lcd-3v3 { | ||
| 25 | compatible = "regulator-fixed"; | ||
| 26 | regulator-name = "lcd-3v3"; | ||
| 27 | regulator-min-microvolt = <3300000>; | ||
| 28 | regulator-max-microvolt = <3300000>; | ||
| 29 | gpio = <&gpio1 18 0>; | ||
| 30 | enable-active-high; | ||
| 31 | }; | ||
| 32 | |||
| 33 | reg_lcd_5v: regulator-lcd-5v { | ||
| 34 | compatible = "regulator-fixed"; | ||
| 35 | regulator-name = "lcd-5v"; | ||
| 36 | regulator-min-microvolt = <5000000>; | ||
| 37 | regulator-max-microvolt = <5000000>; | ||
| 38 | }; | ||
| 39 | |||
| 40 | panel { | ||
| 41 | compatible = "sii,43wvf1g"; | ||
| 42 | backlight = <&backlight_display>; | ||
| 43 | dvdd-supply = <®_lcd_3v3>; | ||
| 44 | avdd-supply = <®_lcd_5v>; | ||
| 45 | |||
| 46 | port { | ||
| 47 | panel_in: endpoint { | ||
| 48 | remote-endpoint = <&display_out>; | ||
| 49 | }; | ||
| 50 | }; | ||
| 51 | }; | ||
| 52 | |||
| 16 | apb@80000000 { | 53 | apb@80000000 { |
| 17 | apbh@80000000 { | 54 | apbh@80000000 { |
| 18 | gpmi-nand@8000c000 { | 55 | gpmi-nand@8000c000 { |
| @@ -52,31 +89,11 @@ | |||
| 52 | lcdif@80030000 { | 89 | lcdif@80030000 { |
| 53 | pinctrl-names = "default"; | 90 | pinctrl-names = "default"; |
| 54 | pinctrl-0 = <&lcdif_24bit_pins_a>; | 91 | pinctrl-0 = <&lcdif_24bit_pins_a>; |
| 55 | lcd-supply = <®_lcd_3v3>; | ||
| 56 | display = <&display0>; | ||
| 57 | status = "okay"; | 92 | status = "okay"; |
| 58 | 93 | ||
| 59 | display0: display0 { | 94 | port { |
| 60 | bits-per-pixel = <32>; | 95 | display_out: endpoint { |
| 61 | bus-width = <24>; | 96 | remote-endpoint = <&panel_in>; |
| 62 | |||
| 63 | display-timings { | ||
| 64 | native-mode = <&timing0>; | ||
| 65 | timing0: timing0 { | ||
| 66 | clock-frequency = <9200000>; | ||
| 67 | hactive = <480>; | ||
| 68 | vactive = <272>; | ||
| 69 | hback-porch = <15>; | ||
| 70 | hfront-porch = <8>; | ||
| 71 | vback-porch = <12>; | ||
| 72 | vfront-porch = <4>; | ||
| 73 | hsync-len = <1>; | ||
| 74 | vsync-len = <1>; | ||
| 75 | hsync-active = <0>; | ||
| 76 | vsync-active = <0>; | ||
| 77 | de-active = <1>; | ||
| 78 | pixelclk-active = <0>; | ||
| 79 | }; | ||
| 80 | }; | 97 | }; |
| 81 | }; | 98 | }; |
| 82 | }; | 99 | }; |
| @@ -118,32 +135,7 @@ | |||
| 118 | }; | 135 | }; |
| 119 | }; | 136 | }; |
| 120 | 137 | ||
| 121 | regulators { | 138 | backlight_display: backlight { |
| 122 | compatible = "simple-bus"; | ||
| 123 | #address-cells = <1>; | ||
| 124 | #size-cells = <0>; | ||
| 125 | |||
| 126 | reg_vddio_sd0: regulator@0 { | ||
| 127 | compatible = "regulator-fixed"; | ||
| 128 | reg = <0>; | ||
| 129 | regulator-name = "vddio-sd0"; | ||
| 130 | regulator-min-microvolt = <3300000>; | ||
| 131 | regulator-max-microvolt = <3300000>; | ||
| 132 | gpio = <&gpio1 29 0>; | ||
| 133 | }; | ||
| 134 | |||
| 135 | reg_lcd_3v3: regulator@1 { | ||
| 136 | compatible = "regulator-fixed"; | ||
| 137 | reg = <1>; | ||
| 138 | regulator-name = "lcd-3v3"; | ||
| 139 | regulator-min-microvolt = <3300000>; | ||
| 140 | regulator-max-microvolt = <3300000>; | ||
| 141 | gpio = <&gpio1 18 0>; | ||
| 142 | enable-active-high; | ||
| 143 | }; | ||
| 144 | }; | ||
| 145 | |||
| 146 | backlight { | ||
| 147 | compatible = "pwm-backlight"; | 139 | compatible = "pwm-backlight"; |
| 148 | pwms = <&pwm 2 5000000>; | 140 | pwms = <&pwm 2 5000000>; |
| 149 | brightness-levels = <0 4 8 16 32 64 128 255>; | 141 | brightness-levels = <0 4 8 16 32 64 128 255>; |
diff --git a/arch/arm/boot/dts/imx28-evk.dts b/arch/arm/boot/dts/imx28-evk.dts index 6b0ae667640f..93ab5bdfe068 100644 --- a/arch/arm/boot/dts/imx28-evk.dts +++ b/arch/arm/boot/dts/imx28-evk.dts | |||
| @@ -13,6 +13,87 @@ | |||
| 13 | reg = <0x40000000 0x08000000>; | 13 | reg = <0x40000000 0x08000000>; |
| 14 | }; | 14 | }; |
| 15 | 15 | ||
| 16 | |||
| 17 | reg_3p3v: regulator-3p3v { | ||
| 18 | compatible = "regulator-fixed"; | ||
| 19 | regulator-name = "3P3V"; | ||
| 20 | regulator-min-microvolt = <3300000>; | ||
| 21 | regulator-max-microvolt = <3300000>; | ||
| 22 | regulator-always-on; | ||
| 23 | }; | ||
| 24 | |||
| 25 | reg_vddio_sd0: regulator-vddio-sd0 { | ||
| 26 | compatible = "regulator-fixed"; | ||
| 27 | regulator-name = "vddio-sd0"; | ||
| 28 | regulator-min-microvolt = <3300000>; | ||
| 29 | regulator-max-microvolt = <3300000>; | ||
| 30 | gpio = <&gpio3 28 0>; | ||
| 31 | }; | ||
| 32 | |||
| 33 | reg_fec_3v3: regulator-fec-3v3 { | ||
| 34 | compatible = "regulator-fixed"; | ||
| 35 | regulator-name = "fec-3v3"; | ||
| 36 | regulator-min-microvolt = <3300000>; | ||
| 37 | regulator-max-microvolt = <3300000>; | ||
| 38 | gpio = <&gpio2 15 0>; | ||
| 39 | }; | ||
| 40 | |||
| 41 | reg_usb0_vbus: regulator-usb0-vbus { | ||
| 42 | compatible = "regulator-fixed"; | ||
| 43 | regulator-name = "usb0_vbus"; | ||
| 44 | regulator-min-microvolt = <5000000>; | ||
| 45 | regulator-max-microvolt = <5000000>; | ||
| 46 | gpio = <&gpio3 9 0>; | ||
| 47 | enable-active-high; | ||
| 48 | }; | ||
| 49 | |||
| 50 | reg_usb1_vbus: regulator-usb1-vbus { | ||
| 51 | compatible = "regulator-fixed"; | ||
| 52 | regulator-name = "usb1_vbus"; | ||
| 53 | regulator-min-microvolt = <5000000>; | ||
| 54 | regulator-max-microvolt = <5000000>; | ||
| 55 | gpio = <&gpio3 8 0>; | ||
| 56 | enable-active-high; | ||
| 57 | }; | ||
| 58 | |||
| 59 | reg_lcd_3v3: regulator-lcd-3v3 { | ||
| 60 | compatible = "regulator-fixed"; | ||
| 61 | regulator-name = "lcd-3v3"; | ||
| 62 | regulator-min-microvolt = <3300000>; | ||
| 63 | regulator-max-microvolt = <3300000>; | ||
| 64 | gpio = <&gpio3 30 0>; | ||
| 65 | enable-active-high; | ||
| 66 | }; | ||
| 67 | |||
| 68 | reg_can_3v3: regulator-can-3v3 { | ||
| 69 | compatible = "regulator-fixed"; | ||
| 70 | regulator-name = "can-3v3"; | ||
| 71 | regulator-min-microvolt = <3300000>; | ||
| 72 | regulator-max-microvolt = <3300000>; | ||
| 73 | gpio = <&gpio2 13 0>; | ||
| 74 | enable-active-high; | ||
| 75 | }; | ||
| 76 | |||
| 77 | reg_lcd_5v: regulator-lcd-5v { | ||
| 78 | compatible = "regulator-fixed"; | ||
| 79 | regulator-name = "lcd-5v"; | ||
| 80 | regulator-min-microvolt = <5000000>; | ||
| 81 | regulator-max-microvolt = <5000000>; | ||
| 82 | }; | ||
| 83 | |||
| 84 | panel { | ||
| 85 | compatible = "sii,43wvf1g"; | ||
| 86 | backlight = <&backlight_display>; | ||
| 87 | dvdd-supply = <®_lcd_3v3>; | ||
| 88 | avdd-supply = <®_lcd_5v>; | ||
| 89 | |||
| 90 | port { | ||
| 91 | panel_in: endpoint { | ||
| 92 | remote-endpoint = <&display_out>; | ||
| 93 | }; | ||
| 94 | }; | ||
| 95 | }; | ||
| 96 | |||
| 16 | apb@80000000 { | 97 | apb@80000000 { |
| 17 | apbh@80000000 { | 98 | apbh@80000000 { |
| 18 | gpmi-nand@8000c000 { | 99 | gpmi-nand@8000c000 { |
| @@ -116,31 +197,11 @@ | |||
| 116 | pinctrl-names = "default"; | 197 | pinctrl-names = "default"; |
| 117 | pinctrl-0 = <&lcdif_24bit_pins_a | 198 | pinctrl-0 = <&lcdif_24bit_pins_a |
| 118 | &lcdif_pins_evk>; | 199 | &lcdif_pins_evk>; |
| 119 | lcd-supply = <®_lcd_3v3>; | ||
| 120 | display = <&display0>; | ||
| 121 | status = "okay"; | 200 | status = "okay"; |
| 122 | 201 | ||
| 123 | display0: display0 { | 202 | port { |
| 124 | bits-per-pixel = <32>; | 203 | display_out: endpoint { |
| 125 | bus-width = <24>; | 204 | remote-endpoint = <&panel_in>; |
| 126 | |||
| 127 | display-timings { | ||
| 128 | native-mode = <&timing0>; | ||
| 129 | timing0: timing0 { | ||
| 130 | clock-frequency = <33500000>; | ||
| 131 | hactive = <800>; | ||
| 132 | vactive = <480>; | ||
| 133 | hback-porch = <89>; | ||
| 134 | hfront-porch = <164>; | ||
| 135 | vback-porch = <23>; | ||
| 136 | vfront-porch = <10>; | ||
| 137 | hsync-len = <10>; | ||
| 138 | vsync-len = <10>; | ||
| 139 | hsync-active = <0>; | ||
| 140 | vsync-active = <0>; | ||
| 141 | de-active = <1>; | ||
| 142 | pixelclk-active = <0>; | ||
| 143 | }; | ||
| 144 | }; | 205 | }; |
| 145 | }; | 206 | }; |
| 146 | }; | 207 | }; |
| @@ -269,80 +330,6 @@ | |||
| 269 | }; | 330 | }; |
| 270 | }; | 331 | }; |
| 271 | 332 | ||
| 272 | regulators { | ||
| 273 | compatible = "simple-bus"; | ||
| 274 | #address-cells = <1>; | ||
| 275 | #size-cells = <0>; | ||
| 276 | |||
| 277 | reg_3p3v: regulator@0 { | ||
| 278 | compatible = "regulator-fixed"; | ||
| 279 | reg = <0>; | ||
| 280 | regulator-name = "3P3V"; | ||
| 281 | regulator-min-microvolt = <3300000>; | ||
| 282 | regulator-max-microvolt = <3300000>; | ||
| 283 | regulator-always-on; | ||
| 284 | }; | ||
| 285 | |||
| 286 | reg_vddio_sd0: regulator@1 { | ||
| 287 | compatible = "regulator-fixed"; | ||
| 288 | reg = <1>; | ||
| 289 | regulator-name = "vddio-sd0"; | ||
| 290 | regulator-min-microvolt = <3300000>; | ||
| 291 | regulator-max-microvolt = <3300000>; | ||
| 292 | gpio = <&gpio3 28 0>; | ||
| 293 | }; | ||
| 294 | |||
| 295 | reg_fec_3v3: regulator@2 { | ||
| 296 | compatible = "regulator-fixed"; | ||
| 297 | reg = <2>; | ||
| 298 | regulator-name = "fec-3v3"; | ||
| 299 | regulator-min-microvolt = <3300000>; | ||
| 300 | regulator-max-microvolt = <3300000>; | ||
| 301 | gpio = <&gpio2 15 0>; | ||
| 302 | }; | ||
| 303 | |||
| 304 | reg_usb0_vbus: regulator@3 { | ||
| 305 | compatible = "regulator-fixed"; | ||
| 306 | reg = <3>; | ||
| 307 | regulator-name = "usb0_vbus"; | ||
| 308 | regulator-min-microvolt = <5000000>; | ||
| 309 | regulator-max-microvolt = <5000000>; | ||
| 310 | gpio = <&gpio3 9 0>; | ||
| 311 | enable-active-high; | ||
| 312 | }; | ||
| 313 | |||
| 314 | reg_usb1_vbus: regulator@4 { | ||
| 315 | compatible = "regulator-fixed"; | ||
| 316 | reg = <4>; | ||
| 317 | regulator-name = "usb1_vbus"; | ||
| 318 | regulator-min-microvolt = <5000000>; | ||
| 319 | regulator-max-microvolt = <5000000>; | ||
| 320 | gpio = <&gpio3 8 0>; | ||
| 321 | enable-active-high; | ||
| 322 | }; | ||
| 323 | |||
| 324 | reg_lcd_3v3: regulator@5 { | ||
| 325 | compatible = "regulator-fixed"; | ||
| 326 | reg = <5>; | ||
| 327 | regulator-name = "lcd-3v3"; | ||
| 328 | regulator-min-microvolt = <3300000>; | ||
| 329 | regulator-max-microvolt = <3300000>; | ||
| 330 | gpio = <&gpio3 30 0>; | ||
| 331 | enable-active-high; | ||
| 332 | }; | ||
| 333 | |||
| 334 | reg_can_3v3: regulator@6 { | ||
| 335 | compatible = "regulator-fixed"; | ||
| 336 | reg = <6>; | ||
| 337 | regulator-name = "can-3v3"; | ||
| 338 | regulator-min-microvolt = <3300000>; | ||
| 339 | regulator-max-microvolt = <3300000>; | ||
| 340 | gpio = <&gpio2 13 0>; | ||
| 341 | enable-active-high; | ||
| 342 | }; | ||
| 343 | |||
| 344 | }; | ||
| 345 | |||
| 346 | sound { | 333 | sound { |
| 347 | compatible = "fsl,imx28-evk-sgtl5000", | 334 | compatible = "fsl,imx28-evk-sgtl5000", |
| 348 | "fsl,mxs-audio-sgtl5000"; | 335 | "fsl,mxs-audio-sgtl5000"; |
| @@ -363,7 +350,7 @@ | |||
| 363 | }; | 350 | }; |
| 364 | }; | 351 | }; |
| 365 | 352 | ||
| 366 | backlight { | 353 | backlight_display: backlight { |
| 367 | compatible = "pwm-backlight"; | 354 | compatible = "pwm-backlight"; |
| 368 | pwms = <&pwm 2 5000000>; | 355 | pwms = <&pwm 2 5000000>; |
| 369 | brightness-levels = <0 4 8 16 32 64 128 255>; | 356 | brightness-levels = <0 4 8 16 32 64 128 255>; |
diff --git a/arch/arm/boot/dts/imx7d.dtsi b/arch/arm/boot/dts/imx7d.dtsi index 7cbc2ffa4b3a..7234e8330a57 100644 --- a/arch/arm/boot/dts/imx7d.dtsi +++ b/arch/arm/boot/dts/imx7d.dtsi | |||
| @@ -126,10 +126,14 @@ | |||
| 126 | interrupt-names = "msi"; | 126 | interrupt-names = "msi"; |
| 127 | #interrupt-cells = <1>; | 127 | #interrupt-cells = <1>; |
| 128 | interrupt-map-mask = <0 0 0 0x7>; | 128 | interrupt-map-mask = <0 0 0 0x7>; |
| 129 | interrupt-map = <0 0 0 1 &intc GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>, | 129 | /* |
| 130 | <0 0 0 2 &intc GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>, | 130 | * Reference manual lists pci irqs incorrectly |
| 131 | <0 0 0 3 &intc GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>, | 131 | * Real hardware ordering is same as imx6: D+MSI, C, B, A |
| 132 | <0 0 0 4 &intc GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>; | 132 | */ |
| 133 | interrupt-map = <0 0 0 1 &intc GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>, | ||
| 134 | <0 0 0 2 &intc GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>, | ||
| 135 | <0 0 0 3 &intc GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>, | ||
| 136 | <0 0 0 4 &intc GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>; | ||
| 133 | clocks = <&clks IMX7D_PCIE_CTRL_ROOT_CLK>, | 137 | clocks = <&clks IMX7D_PCIE_CTRL_ROOT_CLK>, |
| 134 | <&clks IMX7D_PLL_ENET_MAIN_100M_CLK>, | 138 | <&clks IMX7D_PLL_ENET_MAIN_100M_CLK>, |
| 135 | <&clks IMX7D_PCIE_PHY_ROOT_CLK>; | 139 | <&clks IMX7D_PCIE_PHY_ROOT_CLK>; |
diff --git a/arch/arm/boot/dts/omap4-droid4-xt894.dts b/arch/arm/boot/dts/omap4-droid4-xt894.dts index 12d6822f0057..04758a2a87f0 100644 --- a/arch/arm/boot/dts/omap4-droid4-xt894.dts +++ b/arch/arm/boot/dts/omap4-droid4-xt894.dts | |||
| @@ -354,7 +354,7 @@ | |||
| 354 | &mmc2 { | 354 | &mmc2 { |
| 355 | vmmc-supply = <&vsdio>; | 355 | vmmc-supply = <&vsdio>; |
| 356 | bus-width = <8>; | 356 | bus-width = <8>; |
| 357 | non-removable; | 357 | ti,non-removable; |
| 358 | }; | 358 | }; |
| 359 | 359 | ||
| 360 | &mmc3 { | 360 | &mmc3 { |
| @@ -621,15 +621,6 @@ | |||
| 621 | OMAP4_IOPAD(0x10c, PIN_INPUT | MUX_MODE1) /* abe_mcbsp3_fsx */ | 621 | OMAP4_IOPAD(0x10c, PIN_INPUT | MUX_MODE1) /* abe_mcbsp3_fsx */ |
| 622 | >; | 622 | >; |
| 623 | }; | 623 | }; |
| 624 | }; | ||
| 625 | |||
| 626 | &omap4_pmx_wkup { | ||
| 627 | usb_gpio_mux_sel2: pinmux_usb_gpio_mux_sel2_pins { | ||
| 628 | /* gpio_wk0 */ | ||
| 629 | pinctrl-single,pins = < | ||
| 630 | OMAP4_IOPAD(0x040, PIN_OUTPUT_PULLDOWN | MUX_MODE3) | ||
| 631 | >; | ||
| 632 | }; | ||
| 633 | 624 | ||
| 634 | vibrator_direction_pin: pinmux_vibrator_direction_pin { | 625 | vibrator_direction_pin: pinmux_vibrator_direction_pin { |
| 635 | pinctrl-single,pins = < | 626 | pinctrl-single,pins = < |
| @@ -644,6 +635,15 @@ | |||
| 644 | }; | 635 | }; |
| 645 | }; | 636 | }; |
| 646 | 637 | ||
| 638 | &omap4_pmx_wkup { | ||
| 639 | usb_gpio_mux_sel2: pinmux_usb_gpio_mux_sel2_pins { | ||
| 640 | /* gpio_wk0 */ | ||
| 641 | pinctrl-single,pins = < | ||
| 642 | OMAP4_IOPAD(0x040, PIN_OUTPUT_PULLDOWN | MUX_MODE3) | ||
| 643 | >; | ||
| 644 | }; | ||
| 645 | }; | ||
| 646 | |||
| 647 | /* | 647 | /* |
| 648 | * As uart1 is wired to mdm6600 with rts and cts, we can use the cts pin for | 648 | * As uart1 is wired to mdm6600 with rts and cts, we can use the cts pin for |
| 649 | * uart1 wakeirq. | 649 | * uart1 wakeirq. |
diff --git a/arch/arm/configs/imx_v6_v7_defconfig b/arch/arm/configs/imx_v6_v7_defconfig index e2c127608bcc..7eca43ff69bb 100644 --- a/arch/arm/configs/imx_v6_v7_defconfig +++ b/arch/arm/configs/imx_v6_v7_defconfig | |||
| @@ -257,6 +257,7 @@ CONFIG_IMX_IPUV3_CORE=y | |||
| 257 | CONFIG_DRM=y | 257 | CONFIG_DRM=y |
| 258 | CONFIG_DRM_PANEL_LVDS=y | 258 | CONFIG_DRM_PANEL_LVDS=y |
| 259 | CONFIG_DRM_PANEL_SIMPLE=y | 259 | CONFIG_DRM_PANEL_SIMPLE=y |
| 260 | CONFIG_DRM_PANEL_SEIKO_43WVF1G=y | ||
| 260 | CONFIG_DRM_DW_HDMI_AHB_AUDIO=m | 261 | CONFIG_DRM_DW_HDMI_AHB_AUDIO=m |
| 261 | CONFIG_DRM_DW_HDMI_CEC=y | 262 | CONFIG_DRM_DW_HDMI_CEC=y |
| 262 | CONFIG_DRM_IMX=y | 263 | CONFIG_DRM_IMX=y |
diff --git a/arch/arm/configs/mxs_defconfig b/arch/arm/configs/mxs_defconfig index 148226e36152..7b8212857535 100644 --- a/arch/arm/configs/mxs_defconfig +++ b/arch/arm/configs/mxs_defconfig | |||
| @@ -95,6 +95,7 @@ CONFIG_MFD_MXS_LRADC=y | |||
| 95 | CONFIG_REGULATOR=y | 95 | CONFIG_REGULATOR=y |
| 96 | CONFIG_REGULATOR_FIXED_VOLTAGE=y | 96 | CONFIG_REGULATOR_FIXED_VOLTAGE=y |
| 97 | CONFIG_DRM=y | 97 | CONFIG_DRM=y |
| 98 | CONFIG_DRM_PANEL_SEIKO_43WVF1G=y | ||
| 98 | CONFIG_DRM_MXSFB=y | 99 | CONFIG_DRM_MXSFB=y |
| 99 | CONFIG_FB_MODE_HELPERS=y | 100 | CONFIG_FB_MODE_HELPERS=y |
| 100 | CONFIG_BACKLIGHT_LCD_SUPPORT=y | 101 | CONFIG_BACKLIGHT_LCD_SUPPORT=y |
diff --git a/arch/arm/configs/versatile_defconfig b/arch/arm/configs/versatile_defconfig index df68dc4056e5..5282324c7cef 100644 --- a/arch/arm/configs/versatile_defconfig +++ b/arch/arm/configs/versatile_defconfig | |||
| @@ -5,19 +5,19 @@ CONFIG_HIGH_RES_TIMERS=y | |||
| 5 | CONFIG_LOG_BUF_SHIFT=14 | 5 | CONFIG_LOG_BUF_SHIFT=14 |
| 6 | CONFIG_BLK_DEV_INITRD=y | 6 | CONFIG_BLK_DEV_INITRD=y |
| 7 | CONFIG_SLAB=y | 7 | CONFIG_SLAB=y |
| 8 | CONFIG_MODULES=y | ||
| 9 | CONFIG_MODULE_UNLOAD=y | ||
| 10 | CONFIG_PARTITION_ADVANCED=y | ||
| 11 | # CONFIG_ARCH_MULTI_V7 is not set | 8 | # CONFIG_ARCH_MULTI_V7 is not set |
| 12 | CONFIG_ARCH_VERSATILE=y | 9 | CONFIG_ARCH_VERSATILE=y |
| 13 | CONFIG_AEABI=y | 10 | CONFIG_AEABI=y |
| 14 | CONFIG_OABI_COMPAT=y | 11 | CONFIG_OABI_COMPAT=y |
| 15 | CONFIG_CMA=y | ||
| 16 | CONFIG_ZBOOT_ROM_TEXT=0x0 | 12 | CONFIG_ZBOOT_ROM_TEXT=0x0 |
| 17 | CONFIG_ZBOOT_ROM_BSS=0x0 | 13 | CONFIG_ZBOOT_ROM_BSS=0x0 |
| 18 | CONFIG_CMDLINE="root=1f03 mem=32M" | 14 | CONFIG_CMDLINE="root=1f03 mem=32M" |
| 19 | CONFIG_FPE_NWFPE=y | 15 | CONFIG_FPE_NWFPE=y |
| 20 | CONFIG_VFP=y | 16 | CONFIG_VFP=y |
| 17 | CONFIG_MODULES=y | ||
| 18 | CONFIG_MODULE_UNLOAD=y | ||
| 19 | CONFIG_PARTITION_ADVANCED=y | ||
| 20 | CONFIG_CMA=y | ||
| 21 | CONFIG_NET=y | 21 | CONFIG_NET=y |
| 22 | CONFIG_PACKET=y | 22 | CONFIG_PACKET=y |
| 23 | CONFIG_UNIX=y | 23 | CONFIG_UNIX=y |
| @@ -59,6 +59,7 @@ CONFIG_GPIO_PL061=y | |||
| 59 | CONFIG_DRM=y | 59 | CONFIG_DRM=y |
| 60 | CONFIG_DRM_PANEL_ARM_VERSATILE=y | 60 | CONFIG_DRM_PANEL_ARM_VERSATILE=y |
| 61 | CONFIG_DRM_PANEL_SIMPLE=y | 61 | CONFIG_DRM_PANEL_SIMPLE=y |
| 62 | CONFIG_DRM_DUMB_VGA_DAC=y | ||
| 62 | CONFIG_DRM_PL111=y | 63 | CONFIG_DRM_PL111=y |
| 63 | CONFIG_FB_MODE_HELPERS=y | 64 | CONFIG_FB_MODE_HELPERS=y |
| 64 | CONFIG_BACKLIGHT_LCD_SUPPORT=y | 65 | CONFIG_BACKLIGHT_LCD_SUPPORT=y |
| @@ -89,9 +90,10 @@ CONFIG_NFSD=y | |||
| 89 | CONFIG_NFSD_V3=y | 90 | CONFIG_NFSD_V3=y |
| 90 | CONFIG_NLS_CODEPAGE_850=m | 91 | CONFIG_NLS_CODEPAGE_850=m |
| 91 | CONFIG_NLS_ISO8859_1=m | 92 | CONFIG_NLS_ISO8859_1=m |
| 93 | CONFIG_FONTS=y | ||
| 94 | CONFIG_FONT_ACORN_8x8=y | ||
| 95 | CONFIG_DEBUG_FS=y | ||
| 92 | CONFIG_MAGIC_SYSRQ=y | 96 | CONFIG_MAGIC_SYSRQ=y |
| 93 | CONFIG_DEBUG_KERNEL=y | 97 | CONFIG_DEBUG_KERNEL=y |
| 94 | CONFIG_DEBUG_USER=y | 98 | CONFIG_DEBUG_USER=y |
| 95 | CONFIG_DEBUG_LL=y | 99 | CONFIG_DEBUG_LL=y |
| 96 | CONFIG_FONTS=y | ||
| 97 | CONFIG_FONT_ACORN_8x8=y | ||
diff --git a/arch/arm/mach-omap2/omap_hwmod.c b/arch/arm/mach-omap2/omap_hwmod.c index 2ceffd85dd3d..cd65ea4e9c54 100644 --- a/arch/arm/mach-omap2/omap_hwmod.c +++ b/arch/arm/mach-omap2/omap_hwmod.c | |||
| @@ -2161,6 +2161,37 @@ static int of_dev_hwmod_lookup(struct device_node *np, | |||
| 2161 | } | 2161 | } |
| 2162 | 2162 | ||
| 2163 | /** | 2163 | /** |
| 2164 | * omap_hwmod_fix_mpu_rt_idx - fix up mpu_rt_idx register offsets | ||
| 2165 | * | ||
| 2166 | * @oh: struct omap_hwmod * | ||
| 2167 | * @np: struct device_node * | ||
| 2168 | * | ||
| 2169 | * Fix up module register offsets for modules with mpu_rt_idx. | ||
| 2170 | * Only needed for cpsw with interconnect target module defined | ||
| 2171 | * in device tree while still using legacy hwmod platform data | ||
| 2172 | * for rev, sysc and syss registers. | ||
| 2173 | * | ||
| 2174 | * Can be removed when all cpsw hwmod platform data has been | ||
| 2175 | * dropped. | ||
| 2176 | */ | ||
| 2177 | static void omap_hwmod_fix_mpu_rt_idx(struct omap_hwmod *oh, | ||
| 2178 | struct device_node *np, | ||
| 2179 | struct resource *res) | ||
| 2180 | { | ||
| 2181 | struct device_node *child = NULL; | ||
| 2182 | int error; | ||
| 2183 | |||
| 2184 | child = of_get_next_child(np, child); | ||
| 2185 | if (!child) | ||
| 2186 | return; | ||
| 2187 | |||
| 2188 | error = of_address_to_resource(child, oh->mpu_rt_idx, res); | ||
| 2189 | if (error) | ||
| 2190 | pr_err("%s: error mapping mpu_rt_idx: %i\n", | ||
| 2191 | __func__, error); | ||
| 2192 | } | ||
| 2193 | |||
| 2194 | /** | ||
| 2164 | * omap_hwmod_parse_module_range - map module IO range from device tree | 2195 | * omap_hwmod_parse_module_range - map module IO range from device tree |
| 2165 | * @oh: struct omap_hwmod * | 2196 | * @oh: struct omap_hwmod * |
| 2166 | * @np: struct device_node * | 2197 | * @np: struct device_node * |
| @@ -2220,7 +2251,13 @@ int omap_hwmod_parse_module_range(struct omap_hwmod *oh, | |||
| 2220 | size = be32_to_cpup(ranges); | 2251 | size = be32_to_cpup(ranges); |
| 2221 | 2252 | ||
| 2222 | pr_debug("omap_hwmod: %s %s at 0x%llx size 0x%llx\n", | 2253 | pr_debug("omap_hwmod: %s %s at 0x%llx size 0x%llx\n", |
| 2223 | oh->name, np->name, base, size); | 2254 | oh ? oh->name : "", np->name, base, size); |
| 2255 | |||
| 2256 | if (oh && oh->mpu_rt_idx) { | ||
| 2257 | omap_hwmod_fix_mpu_rt_idx(oh, np, res); | ||
| 2258 | |||
| 2259 | return 0; | ||
| 2260 | } | ||
| 2224 | 2261 | ||
| 2225 | res->start = base; | 2262 | res->start = base; |
| 2226 | res->end = base + size - 1; | 2263 | res->end = base + size - 1; |
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig index f67e8d5e93ad..db8d364f8476 100644 --- a/arch/arm64/configs/defconfig +++ b/arch/arm64/configs/defconfig | |||
| @@ -38,6 +38,7 @@ CONFIG_ARCH_BCM_IPROC=y | |||
| 38 | CONFIG_ARCH_BERLIN=y | 38 | CONFIG_ARCH_BERLIN=y |
| 39 | CONFIG_ARCH_BRCMSTB=y | 39 | CONFIG_ARCH_BRCMSTB=y |
| 40 | CONFIG_ARCH_EXYNOS=y | 40 | CONFIG_ARCH_EXYNOS=y |
| 41 | CONFIG_ARCH_K3=y | ||
| 41 | CONFIG_ARCH_LAYERSCAPE=y | 42 | CONFIG_ARCH_LAYERSCAPE=y |
| 42 | CONFIG_ARCH_LG1K=y | 43 | CONFIG_ARCH_LG1K=y |
| 43 | CONFIG_ARCH_HISI=y | 44 | CONFIG_ARCH_HISI=y |
| @@ -605,6 +606,8 @@ CONFIG_ARCH_TEGRA_132_SOC=y | |||
| 605 | CONFIG_ARCH_TEGRA_210_SOC=y | 606 | CONFIG_ARCH_TEGRA_210_SOC=y |
| 606 | CONFIG_ARCH_TEGRA_186_SOC=y | 607 | CONFIG_ARCH_TEGRA_186_SOC=y |
| 607 | CONFIG_ARCH_TEGRA_194_SOC=y | 608 | CONFIG_ARCH_TEGRA_194_SOC=y |
| 609 | CONFIG_ARCH_K3_AM6_SOC=y | ||
| 610 | CONFIG_SOC_TI=y | ||
| 608 | CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y | 611 | CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y |
| 609 | CONFIG_EXTCON_USB_GPIO=y | 612 | CONFIG_EXTCON_USB_GPIO=y |
| 610 | CONFIG_EXTCON_USBC_CROS_EC=y | 613 | CONFIG_EXTCON_USBC_CROS_EC=y |
diff --git a/drivers/bus/ti-sysc.c b/drivers/bus/ti-sysc.c index c9bac9dc4637..e4fe954e63a9 100644 --- a/drivers/bus/ti-sysc.c +++ b/drivers/bus/ti-sysc.c | |||
| @@ -498,32 +498,29 @@ static int sysc_check_registers(struct sysc *ddata) | |||
| 498 | 498 | ||
| 499 | /** | 499 | /** |
| 500 | * syc_ioremap - ioremap register space for the interconnect target module | 500 | * syc_ioremap - ioremap register space for the interconnect target module |
| 501 | * @ddata: deviec driver data | 501 | * @ddata: device driver data |
| 502 | * | 502 | * |
| 503 | * Note that the interconnect target module registers can be anywhere | 503 | * Note that the interconnect target module registers can be anywhere |
| 504 | * within the first child device address space. For example, SGX has | 504 | * within the interconnect target module range. For example, SGX has |
| 505 | * them at offset 0x1fc00 in the 32MB module address space. We just | 505 | * them at offset 0x1fc00 in the 32MB module address space. And cpsw |
| 506 | * what we need around the interconnect target module registers. | 506 | * has them at offset 0x1200 in the CPSW_WR child. Usually the |
| 507 | * the interconnect target module registers are at the beginning of | ||
| 508 | * the module range though. | ||
| 507 | */ | 509 | */ |
| 508 | static int sysc_ioremap(struct sysc *ddata) | 510 | static int sysc_ioremap(struct sysc *ddata) |
| 509 | { | 511 | { |
| 510 | u32 size = 0; | 512 | int size; |
| 511 | |||
| 512 | if (ddata->offsets[SYSC_SYSSTATUS] >= 0) | ||
| 513 | size = ddata->offsets[SYSC_SYSSTATUS]; | ||
| 514 | else if (ddata->offsets[SYSC_SYSCONFIG] >= 0) | ||
| 515 | size = ddata->offsets[SYSC_SYSCONFIG]; | ||
| 516 | else if (ddata->offsets[SYSC_REVISION] >= 0) | ||
| 517 | size = ddata->offsets[SYSC_REVISION]; | ||
| 518 | else | ||
| 519 | return -EINVAL; | ||
| 520 | 513 | ||
| 521 | size &= 0xfff00; | 514 | size = max3(ddata->offsets[SYSC_REVISION], |
| 522 | size += SZ_256; | 515 | ddata->offsets[SYSC_SYSCONFIG], |
| 516 | ddata->offsets[SYSC_SYSSTATUS]); | ||
| 517 | |||
| 518 | if (size < 0 || (size + sizeof(u32)) > ddata->module_size) | ||
| 519 | return -EINVAL; | ||
| 523 | 520 | ||
| 524 | ddata->module_va = devm_ioremap(ddata->dev, | 521 | ddata->module_va = devm_ioremap(ddata->dev, |
| 525 | ddata->module_pa, | 522 | ddata->module_pa, |
| 526 | size); | 523 | size + sizeof(u32)); |
| 527 | if (!ddata->module_va) | 524 | if (!ddata->module_va) |
| 528 | return -EIO; | 525 | return -EIO; |
| 529 | 526 | ||
| @@ -1224,10 +1221,10 @@ static int sysc_child_suspend_noirq(struct device *dev) | |||
| 1224 | if (!pm_runtime_status_suspended(dev)) { | 1221 | if (!pm_runtime_status_suspended(dev)) { |
| 1225 | error = pm_generic_runtime_suspend(dev); | 1222 | error = pm_generic_runtime_suspend(dev); |
| 1226 | if (error) { | 1223 | if (error) { |
| 1227 | dev_err(dev, "%s error at %i: %i\n", | 1224 | dev_warn(dev, "%s busy at %i: %i\n", |
| 1228 | __func__, __LINE__, error); | 1225 | __func__, __LINE__, error); |
| 1229 | 1226 | ||
| 1230 | return error; | 1227 | return 0; |
| 1231 | } | 1228 | } |
| 1232 | 1229 | ||
| 1233 | error = sysc_runtime_suspend(ddata->dev); | 1230 | error = sysc_runtime_suspend(ddata->dev); |
