Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull ARM SoC fixes from Olof Johansson:
"A slightly larger set of fixes have accrued in the last two weeks.
Mostly a collection of the usual smaller fixes:

- Marvell Armada: USB phy setup issues on Turris Mox

- Broadcom: GPIO/pinmux DT mapping corrections for Stingray, MMC bus
width fix for RPi Zero W, GPIO LED removal for RPI CM3. Also some
maintainer updates.

- OMAP: Fixlets for display config, interrupt settings for wifi, some
clock/PM pieces. Also IOMMU regression fix and a ti-sysc
no-watchdog regression fix.

- i.MX: A few fixes around PM/settings, some devicetree fixlets and
catching up with config option changes in DRM

- Rockchip: RockRro64 misc DT fixups, Hugsun X99 USB-C, Kevin display
panel settings

... and some smaller fixes for Davinci (backlight, McBSP DMA),
Allwinner (phy regulators, PMU removal on A64, etc)"

* tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (42 commits)
ARM: dts: stm32: relax qspi pins slew-rate for stm32mp157
MAINTAINERS: Update the Spreadtrum SoC maintainer
MAINTAINERS: Remove Gregory and Brian for ARCH_BRCMSTB
ARM: dts: bcm2837-rpi-cm3: Avoid leds-gpio probing issue
bus: ti-sysc: Fix watchdog quirk handling
ARM: OMAP2+: Add pdata for OMAP3 ISP IOMMU
ARM: OMAP2+: Plug in device_enable/idle ops for IOMMUs
ARM: davinci_all_defconfig: enable GPIO backlight
ARM: davinci: dm365: Fix McBSP dma_slave_map entry
ARM: dts: bcm2835-rpi-zero-w: Fix bus-width of sdhci
ARM: imx_v6_v7_defconfig: Enable CONFIG_DRM_MSM
arm64: dts: imx8mn: Use correct clock for usdhc's ipg clk
arm64: dts: imx8mm: Use correct clock for usdhc's ipg clk
arm64: dts: imx8mq: Use correct clock for usdhc's ipg clk
ARM: dts: imx7s: Correct GPT's ipg clock source
ARM: dts: vf610-zii-scu4-aib: Specify 'i2c-mux-idle-disconnect'
ARM: dts: imx6q-logicpd: Re-Enable SNVS power key
arm64: dts: lx2160a: Correct CPU core idle state name
mailmap: Add Simon Arlott (replacement for expired email address)
arm64: dts: rockchip: Fix override mode for rk3399-kevin panel
...

+145 -107
+1
.mailmap
··· 229 229 Shuah Khan <shuah@kernel.org> <shuah.khan@hp.com> 230 230 Shuah Khan <shuah@kernel.org> <shuahkh@osg.samsung.com> 231 231 Shuah Khan <shuah@kernel.org> <shuah.kh@samsung.com> 232 + Simon Arlott <simon@octiron.net> <simon@fire.lp0.eu> 232 233 Simon Kelley <simon@thekelleys.org.uk> 233 234 Stéphane Witzmann <stephane.witzmann@ubpmes.univ-bpclermont.fr> 234 235 Stephen Hemminger <shemminger@osdl.org>
+2 -2
Documentation/devicetree/bindings/arm/rockchip.yaml
··· 496 496 497 497 - description: Theobroma Systems RK3368-uQ7 with Haikou baseboard 498 498 items: 499 - - const: tsd,rk3368-uq7-haikou 499 + - const: tsd,rk3368-lion-haikou 500 500 - const: rockchip,rk3368 501 501 502 502 - description: Theobroma Systems RK3399-Q7 with Haikou baseboard 503 503 items: 504 - - const: tsd,rk3399-q7-haikou 504 + - const: tsd,rk3399-puma-haikou 505 505 - const: rockchip,rk3399 506 506 507 507 - description: Tronsmart Orion R68 Meta
+3 -6
Documentation/devicetree/bindings/media/allwinner,sun4i-a10-csi.yaml
··· 1 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2 2 %YAML 1.2 3 3 --- 4 - $id: http://devicetree.org/schemas/arm/allwinner,sun4i-a10-csi.yaml# 4 + $id: http://devicetree.org/schemas/media/allwinner,sun4i-a10-csi.yaml# 5 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 7 title: Allwinner A10 CMOS Sensor Interface (CSI) Device Tree Bindings ··· 27 27 clocks: 28 28 items: 29 29 - description: The CSI interface clock 30 - - description: The CSI module clock 31 30 - description: The CSI ISP clock 32 31 - description: The CSI DRAM clock 33 32 34 33 clock-names: 35 34 items: 36 35 - const: bus 37 - - const: mod 38 36 - const: isp 39 37 - const: ram 40 38 ··· 87 89 compatible = "allwinner,sun7i-a20-csi0"; 88 90 reg = <0x01c09000 0x1000>; 89 91 interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>; 90 - clocks = <&ccu CLK_AHB_CSI0>, <&ccu CLK_CSI0>, 91 - <&ccu CLK_CSI_SCLK>, <&ccu CLK_DRAM_CSI0>; 92 - clock-names = "bus", "mod", "isp", "ram"; 92 + clocks = <&ccu CLK_AHB_CSI0>, <&ccu CLK_CSI_SCLK>, <&ccu CLK_DRAM_CSI0>; 93 + clock-names = "bus", "isp", "ram"; 93 94 resets = <&ccu RST_CSI0>; 94 95 95 96 port {
+5 -4
MAINTAINERS
··· 2323 2323 2324 2324 ARM/SPREADTRUM SoC SUPPORT 2325 2325 M: Orson Zhai <orsonzhai@gmail.com> 2326 - M: Baolin Wang <baolin.wang@linaro.org> 2326 + M: Baolin Wang <baolin.wang7@gmail.com> 2327 2327 M: Chunyan Zhang <zhang.lyra@gmail.com> 2328 2328 S: Maintained 2329 2329 F: arch/arm64/boot/dts/sprd 2330 2330 N: sprd 2331 + N: sc27xx 2332 + N: sc2731 2331 2333 2332 2334 ARM/STI ARCHITECTURE 2333 2335 M: Patrice Chotard <patrice.chotard@st.com> ··· 3185 3183 N: kona 3186 3184 F: arch/arm/mach-bcm/ 3187 3185 3188 - BROADCOM BCM2835 ARM ARCHITECTURE 3186 + BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE 3189 3187 M: Eric Anholt <eric@anholt.net> 3190 3188 M: Stefan Wahren <wahrenst@gmx.net> 3191 3189 L: bcm-kernel-feedback-list@broadcom.com ··· 3193 3191 L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) 3194 3192 T: git git://github.com/anholt/linux 3195 3193 S: Maintained 3194 + N: bcm2711 3196 3195 N: bcm2835 3197 3196 F: drivers/staging/vc04_services 3198 3197 ··· 3240 3237 F: drivers/usb/gadget/udc/bcm63xx_udc.* 3241 3238 3242 3239 BROADCOM BCM7XXX ARM ARCHITECTURE 3243 - M: Brian Norris <computersforpeace@gmail.com> 3244 - M: Gregory Fong <gregory.0xf0@gmail.com> 3245 3240 M: Florian Fainelli <f.fainelli@gmail.com> 3246 3241 M: bcm-kernel-feedback-list@broadcom.com 3247 3242 L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
+1 -8
arch/arm/boot/dts/am3874-iceboard.dts
··· 111 111 reg = <0x70>; 112 112 #address-cells = <1>; 113 113 #size-cells = <0>; 114 + i2c-mux-idle-disconnect; 114 115 115 116 i2c@0 { 116 117 /* FMC A */ 117 118 #address-cells = <1>; 118 119 #size-cells = <0>; 119 120 reg = <0>; 120 - i2c-mux-idle-disconnect; 121 121 }; 122 122 123 123 i2c@1 { ··· 125 125 #address-cells = <1>; 126 126 #size-cells = <0>; 127 127 reg = <1>; 128 - i2c-mux-idle-disconnect; 129 128 }; 130 129 131 130 i2c@2 { ··· 132 133 #address-cells = <1>; 133 134 #size-cells = <0>; 134 135 reg = <2>; 135 - i2c-mux-idle-disconnect; 136 136 }; 137 137 138 138 i2c@3 { ··· 139 141 #address-cells = <1>; 140 142 #size-cells = <0>; 141 143 reg = <3>; 142 - i2c-mux-idle-disconnect; 143 144 }; 144 145 145 146 i2c@4 { ··· 146 149 #address-cells = <1>; 147 150 #size-cells = <0>; 148 151 reg = <4>; 149 - i2c-mux-idle-disconnect; 150 152 }; 151 153 152 154 i2c@5 { 153 155 #address-cells = <1>; 154 156 #size-cells = <0>; 155 157 reg = <5>; 156 - i2c-mux-idle-disconnect; 157 158 158 159 ina230@40 { compatible = "ti,ina230"; reg = <0x40>; shunt-resistor = <5000>; }; 159 160 ina230@41 { compatible = "ti,ina230"; reg = <0x41>; shunt-resistor = <5000>; }; ··· 177 182 #address-cells = <1>; 178 183 #size-cells = <0>; 179 184 reg = <6>; 180 - i2c-mux-idle-disconnect; 181 185 }; 182 186 183 187 i2c@7 { 184 188 #address-cells = <1>; 185 189 #size-cells = <0>; 186 190 reg = <7>; 187 - i2c-mux-idle-disconnect; 188 191 189 192 u41: pca9575@20 { 190 193 compatible = "nxp,pca9575";
+1
arch/arm/boot/dts/bcm2835-rpi-zero-w.dts
··· 113 113 #address-cells = <1>; 114 114 #size-cells = <0>; 115 115 pinctrl-0 = <&emmc_gpio34 &gpclk2_gpio43>; 116 + bus-width = <4>; 116 117 mmc-pwrseq = <&wifi_pwrseq>; 117 118 non-removable; 118 119 status = "okay";
+8
arch/arm/boot/dts/bcm2837-rpi-cm3.dtsi
··· 9 9 reg = <0 0x40000000>; 10 10 }; 11 11 12 + leds { 13 + /* 14 + * Since there is no upstream GPIO driver yet, 15 + * remove the incomplete node. 16 + */ 17 + /delete-node/ act; 18 + }; 19 + 12 20 reg_3v3: fixed-regulator { 13 21 compatible = "regulator-fixed"; 14 22 regulator-name = "3V3";
+4
arch/arm/boot/dts/imx6-logicpd-som.dtsi
··· 207 207 vin-supply = <&sw1c_reg>; 208 208 }; 209 209 210 + &snvs_poweroff { 211 + status = "okay"; 212 + }; 213 + 210 214 &iomuxc { 211 215 pinctrl-names = "default"; 212 216 pinctrl-0 = <&pinctrl_hog>;
+4 -4
arch/arm/boot/dts/imx7s.dtsi
··· 448 448 compatible = "fsl,imx7d-gpt", "fsl,imx6sx-gpt"; 449 449 reg = <0x302d0000 0x10000>; 450 450 interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>; 451 - clocks = <&clks IMX7D_CLK_DUMMY>, 451 + clocks = <&clks IMX7D_GPT1_ROOT_CLK>, 452 452 <&clks IMX7D_GPT1_ROOT_CLK>; 453 453 clock-names = "ipg", "per"; 454 454 }; ··· 457 457 compatible = "fsl,imx7d-gpt", "fsl,imx6sx-gpt"; 458 458 reg = <0x302e0000 0x10000>; 459 459 interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>; 460 - clocks = <&clks IMX7D_CLK_DUMMY>, 460 + clocks = <&clks IMX7D_GPT2_ROOT_CLK>, 461 461 <&clks IMX7D_GPT2_ROOT_CLK>; 462 462 clock-names = "ipg", "per"; 463 463 status = "disabled"; ··· 467 467 compatible = "fsl,imx7d-gpt", "fsl,imx6sx-gpt"; 468 468 reg = <0x302f0000 0x10000>; 469 469 interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>; 470 - clocks = <&clks IMX7D_CLK_DUMMY>, 470 + clocks = <&clks IMX7D_GPT3_ROOT_CLK>, 471 471 <&clks IMX7D_GPT3_ROOT_CLK>; 472 472 clock-names = "ipg", "per"; 473 473 status = "disabled"; ··· 477 477 compatible = "fsl,imx7d-gpt", "fsl,imx6sx-gpt"; 478 478 reg = <0x30300000 0x10000>; 479 479 interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>; 480 - clocks = <&clks IMX7D_CLK_DUMMY>, 480 + clocks = <&clks IMX7D_GPT4_ROOT_CLK>, 481 481 <&clks IMX7D_GPT4_ROOT_CLK>; 482 482 clock-names = "ipg", "per"; 483 483 status = "disabled";
+4
arch/arm/boot/dts/logicpd-torpedo-som.dtsi
··· 192 192 &twl_gpio { 193 193 ti,use-leds; 194 194 }; 195 + 196 + &twl_keypad { 197 + status = "disabled"; 198 + };
+1 -1
arch/arm/boot/dts/omap4-droid4-xt894.dts
··· 369 369 compatible = "ti,wl1285", "ti,wl1283"; 370 370 reg = <2>; 371 371 /* gpio_100 with gpmc_wait2 pad as wakeirq */ 372 - interrupts-extended = <&gpio4 4 IRQ_TYPE_EDGE_RISING>, 372 + interrupts-extended = <&gpio4 4 IRQ_TYPE_LEVEL_HIGH>, 373 373 <&omap4_pmx_core 0x4e>; 374 374 interrupt-names = "irq", "wakeup"; 375 375 ref-clock-frequency = <26000000>;
+1 -1
arch/arm/boot/dts/omap4-panda-common.dtsi
··· 474 474 compatible = "ti,wl1271"; 475 475 reg = <2>; 476 476 /* gpio_53 with gpmc_ncs3 pad as wakeup */ 477 - interrupts-extended = <&gpio2 21 IRQ_TYPE_EDGE_RISING>, 477 + interrupts-extended = <&gpio2 21 IRQ_TYPE_LEVEL_HIGH>, 478 478 <&omap4_pmx_core 0x3a>; 479 479 interrupt-names = "irq", "wakeup"; 480 480 ref-clock-frequency = <38400000>;
+1 -1
arch/arm/boot/dts/omap4-sdp.dts
··· 512 512 compatible = "ti,wl1281"; 513 513 reg = <2>; 514 514 interrupt-parent = <&gpio1>; 515 - interrupts = <21 IRQ_TYPE_EDGE_RISING>; /* gpio 53 */ 515 + interrupts = <21 IRQ_TYPE_LEVEL_HIGH>; /* gpio 53 */ 516 516 ref-clock-frequency = <26000000>; 517 517 tcxo-clock-frequency = <26000000>; 518 518 };
+1 -1
arch/arm/boot/dts/omap4-var-som-om44-wlan.dtsi
··· 69 69 compatible = "ti,wl1271"; 70 70 reg = <2>; 71 71 interrupt-parent = <&gpio2>; 72 - interrupts = <9 IRQ_TYPE_EDGE_RISING>; /* gpio 41 */ 72 + interrupts = <9 IRQ_TYPE_LEVEL_HIGH>; /* gpio 41 */ 73 73 ref-clock-frequency = <38400000>; 74 74 }; 75 75 };
+1 -1
arch/arm/boot/dts/omap5-board-common.dtsi
··· 362 362 pinctrl-names = "default"; 363 363 pinctrl-0 = <&wlcore_irq_pin>; 364 364 interrupt-parent = <&gpio1>; 365 - interrupts = <14 IRQ_TYPE_EDGE_RISING>; /* gpio 14 */ 365 + interrupts = <14 IRQ_TYPE_LEVEL_HIGH>; /* gpio 14 */ 366 366 ref-clock-frequency = <26000000>; 367 367 }; 368 368 };
+1 -1
arch/arm/boot/dts/omap54xx-clocks.dtsi
··· 1146 1146 }; 1147 1147 }; 1148 1148 1149 - gpu_cm: clock-controller@1500 { 1149 + gpu_cm: gpu_cm@1500 { 1150 1150 compatible = "ti,omap4-cm"; 1151 1151 reg = <0x1500 0x100>; 1152 1152 #address-cells = <1>;
+4 -4
arch/arm/boot/dts/stm32mp157-pinctrl.dtsi
··· 609 609 <STM32_PINMUX('F', 6, AF9)>; /* QSPI_BK1_IO3 */ 610 610 bias-disable; 611 611 drive-push-pull; 612 - slew-rate = <3>; 612 + slew-rate = <1>; 613 613 }; 614 614 pins2 { 615 615 pinmux = <STM32_PINMUX('B', 6, AF10)>; /* QSPI_BK1_NCS */ 616 616 bias-pull-up; 617 617 drive-push-pull; 618 - slew-rate = <3>; 618 + slew-rate = <1>; 619 619 }; 620 620 }; 621 621 ··· 637 637 <STM32_PINMUX('G', 7, AF11)>; /* QSPI_BK2_IO3 */ 638 638 bias-disable; 639 639 drive-push-pull; 640 - slew-rate = <3>; 640 + slew-rate = <1>; 641 641 }; 642 642 pins2 { 643 643 pinmux = <STM32_PINMUX('C', 0, AF10)>; /* QSPI_BK2_NCS */ 644 644 bias-pull-up; 645 645 drive-push-pull; 646 - slew-rate = <3>; 646 + slew-rate = <1>; 647 647 }; 648 648 }; 649 649
+2 -3
arch/arm/boot/dts/sun7i-a20.dtsi
··· 380 380 compatible = "allwinner,sun7i-a20-csi0"; 381 381 reg = <0x01c09000 0x1000>; 382 382 interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>; 383 - clocks = <&ccu CLK_AHB_CSI0>, <&ccu CLK_CSI0>, 384 - <&ccu CLK_CSI_SCLK>, <&ccu CLK_DRAM_CSI0>; 385 - clock-names = "bus", "mod", "isp", "ram"; 383 + clocks = <&ccu CLK_AHB_CSI0>, <&ccu CLK_CSI_SCLK>, <&ccu CLK_DRAM_CSI0>; 384 + clock-names = "bus", "isp", "ram"; 386 385 resets = <&ccu RST_CSI0>; 387 386 status = "disabled"; 388 387 };
+2
arch/arm/boot/dts/vf610-zii-scu4-aib.dts
··· 602 602 #address-cells = <1>; 603 603 #size-cells = <0>; 604 604 reg = <0x70>; 605 + i2c-mux-idle-disconnect; 605 606 606 607 sff0_i2c: i2c@1 { 607 608 #address-cells = <1>; ··· 641 640 reg = <0x71>; 642 641 #address-cells = <1>; 643 642 #size-cells = <0>; 643 + i2c-mux-idle-disconnect; 644 644 645 645 sff5_i2c: i2c@1 { 646 646 #address-cells = <1>;
+1
arch/arm/configs/davinci_all_defconfig
··· 167 167 CONFIG_FIRMWARE_EDID=y 168 168 CONFIG_FB_DA8XX=y 169 169 CONFIG_BACKLIGHT_PWM=m 170 + CONFIG_BACKLIGHT_GPIO=m 170 171 CONFIG_FRAMEBUFFER_CONSOLE=y 171 172 CONFIG_LOGO=y 172 173 CONFIG_SOUND=m
+1
arch/arm/configs/imx_v6_v7_defconfig
··· 276 276 CONFIG_VIDEO_OV5645=m 277 277 CONFIG_IMX_IPUV3_CORE=y 278 278 CONFIG_DRM=y 279 + CONFIG_DRM_MSM=y 279 280 CONFIG_DRM_PANEL_LVDS=y 280 281 CONFIG_DRM_PANEL_SIMPLE=y 281 282 CONFIG_DRM_PANEL_SEIKO_43WVF1G=y
+6 -6
arch/arm/configs/omap2plus_defconfig
··· 356 356 CONFIG_DRM_OMAP_CONNECTOR_ANALOG_TV=m 357 357 CONFIG_DRM_OMAP_PANEL_DPI=m 358 358 CONFIG_DRM_OMAP_PANEL_DSI_CM=m 359 - CONFIG_DRM_OMAP_PANEL_SONY_ACX565AKM=m 360 - CONFIG_DRM_OMAP_PANEL_LGPHILIPS_LB035Q02=m 361 - CONFIG_DRM_OMAP_PANEL_SHARP_LS037V7DW01=m 362 - CONFIG_DRM_OMAP_PANEL_TPO_TD028TTEC1=m 363 - CONFIG_DRM_OMAP_PANEL_TPO_TD043MTEA1=m 364 - CONFIG_DRM_OMAP_PANEL_NEC_NL8048HL11=m 365 359 CONFIG_DRM_TILCDC=m 366 360 CONFIG_DRM_PANEL_SIMPLE=m 367 361 CONFIG_DRM_TI_TFP410=m 362 + CONFIG_DRM_PANEL_LG_LB035Q02=m 363 + CONFIG_DRM_PANEL_NEC_NL8048HL11=m 364 + CONFIG_DRM_PANEL_SHARP_LS037V7DW01=m 365 + CONFIG_DRM_PANEL_SONY_ACX565AKM=m 366 + CONFIG_DRM_PANEL_TPO_TD028TTEC1=m 367 + CONFIG_DRM_PANEL_TPO_TD043MTEA1=m 368 368 CONFIG_FB=y 369 369 CONFIG_FIRMWARE_EDID=y 370 370 CONFIG_FB_MODE_HELPERS=y
+2 -2
arch/arm/mach-davinci/dm365.c
··· 462 462 }; 463 463 464 464 static const struct dma_slave_map dm365_edma_map[] = { 465 - { "davinci-mcbsp.0", "tx", EDMA_FILTER_PARAM(0, 2) }, 466 - { "davinci-mcbsp.0", "rx", EDMA_FILTER_PARAM(0, 3) }, 465 + { "davinci-mcbsp", "tx", EDMA_FILTER_PARAM(0, 2) }, 466 + { "davinci-mcbsp", "rx", EDMA_FILTER_PARAM(0, 3) }, 467 467 { "davinci_voicecodec", "tx", EDMA_FILTER_PARAM(0, 2) }, 468 468 { "davinci_voicecodec", "rx", EDMA_FILTER_PARAM(0, 3) }, 469 469 { "spi_davinci.2", "tx", EDMA_FILTER_PARAM(0, 10) },
+11
arch/arm/mach-omap2/pdata-quirks.c
··· 89 89 .reset_name = "mmu", 90 90 .assert_reset = omap_device_assert_hardreset, 91 91 .deassert_reset = omap_device_deassert_hardreset, 92 + .device_enable = omap_device_enable, 93 + .device_idle = omap_device_idle, 94 + }; 95 + 96 + static struct iommu_platform_data omap3_iommu_isp_pdata = { 97 + .device_enable = omap_device_enable, 98 + .device_idle = omap_device_idle, 92 99 }; 93 100 94 101 static int omap3_sbc_t3730_twl_callback(struct device *dev, ··· 431 424 .reset_name = "mmu_cache", 432 425 .assert_reset = omap_device_assert_hardreset, 433 426 .deassert_reset = omap_device_deassert_hardreset, 427 + .device_enable = omap_device_enable, 428 + .device_idle = omap_device_idle, 434 429 }; 435 430 #endif 436 431 ··· 626 617 #ifdef CONFIG_ARCH_OMAP3 627 618 OF_DEV_AUXDATA("ti,omap2-iommu", 0x5d000000, "5d000000.mmu", 628 619 &omap3_iommu_pdata), 620 + OF_DEV_AUXDATA("ti,omap2-iommu", 0x480bd400, "480bd400.mmu", 621 + &omap3_iommu_isp_pdata), 629 622 OF_DEV_AUXDATA("ti,omap3-smartreflex-core", 0x480cb000, 630 623 "480cb000.smartreflex", &omap_sr_pdata[OMAP_SR_CORE]), 631 624 OF_DEV_AUXDATA("ti,omap3-smartreflex-mpu-iva", 0x480c9000,
+9
arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts
··· 63 63 reg = <1>; 64 64 }; 65 65 }; 66 + 67 + &reg_dc1sw { 68 + /* 69 + * Ethernet PHY needs 30ms to properly power up and some more 70 + * to initialize. 100ms should be plenty of time to finish 71 + * whole process. 72 + */ 73 + regulator-enable-ramp-delay = <100000>; 74 + };
+6
arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts
··· 159 159 }; 160 160 161 161 &reg_dc1sw { 162 + /* 163 + * Ethernet PHY needs 30ms to properly power up and some more 164 + * to initialize. 100ms should be plenty of time to finish 165 + * whole process. 166 + */ 167 + regulator-enable-ramp-delay = <100000>; 162 168 regulator-name = "vcc-phy"; 163 169 }; 164 170
-9
arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
··· 142 142 clock-output-names = "ext-osc32k"; 143 143 }; 144 144 145 - pmu { 146 - compatible = "arm,cortex-a53-pmu"; 147 - interrupts = <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>, 148 - <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>, 149 - <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>, 150 - <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>; 151 - interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>; 152 - }; 153 - 154 145 psci { 155 146 compatible = "arm,psci-0.2"; 156 147 method = "smc";
+3 -2
arch/arm64/boot/dts/broadcom/stingray/stingray-pinctrl.dtsi
··· 42 42 43 43 pinmux: pinmux@14029c { 44 44 compatible = "pinctrl-single"; 45 - reg = <0x0014029c 0x250>; 45 + reg = <0x0014029c 0x26c>; 46 46 #address-cells = <1>; 47 47 #size-cells = <1>; 48 48 pinctrl-single,register-width = <32>; 49 49 pinctrl-single,function-mask = <0xf>; 50 50 pinctrl-single,gpio-range = < 51 - &range 0 154 MODE_GPIO 51 + &range 0 91 MODE_GPIO 52 + &range 95 60 MODE_GPIO 52 53 >; 53 54 range: gpio-range { 54 55 #pinctrl-single,gpio-range-cells = <3>;
+1 -2
arch/arm64/boot/dts/broadcom/stingray/stingray.dtsi
··· 464 464 <&pinmux 108 16 27>, 465 465 <&pinmux 135 77 6>, 466 466 <&pinmux 141 67 4>, 467 - <&pinmux 145 149 6>, 468 - <&pinmux 151 91 4>; 467 + <&pinmux 145 149 6>; 469 468 }; 470 469 471 470 i2c1: i2c@e0000 {
+18 -18
arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi
··· 33 33 i-cache-line-size = <64>; 34 34 i-cache-sets = <192>; 35 35 next-level-cache = <&cluster0_l2>; 36 - cpu-idle-states = <&cpu_pw20>; 36 + cpu-idle-states = <&cpu_pw15>; 37 37 }; 38 38 39 39 cpu@1 { ··· 49 49 i-cache-line-size = <64>; 50 50 i-cache-sets = <192>; 51 51 next-level-cache = <&cluster0_l2>; 52 - cpu-idle-states = <&cpu_pw20>; 52 + cpu-idle-states = <&cpu_pw15>; 53 53 }; 54 54 55 55 cpu@100 { ··· 65 65 i-cache-line-size = <64>; 66 66 i-cache-sets = <192>; 67 67 next-level-cache = <&cluster1_l2>; 68 - cpu-idle-states = <&cpu_pw20>; 68 + cpu-idle-states = <&cpu_pw15>; 69 69 }; 70 70 71 71 cpu@101 { ··· 81 81 i-cache-line-size = <64>; 82 82 i-cache-sets = <192>; 83 83 next-level-cache = <&cluster1_l2>; 84 - cpu-idle-states = <&cpu_pw20>; 84 + cpu-idle-states = <&cpu_pw15>; 85 85 }; 86 86 87 87 cpu@200 { ··· 97 97 i-cache-line-size = <64>; 98 98 i-cache-sets = <192>; 99 99 next-level-cache = <&cluster2_l2>; 100 - cpu-idle-states = <&cpu_pw20>; 100 + cpu-idle-states = <&cpu_pw15>; 101 101 }; 102 102 103 103 cpu@201 { ··· 113 113 i-cache-line-size = <64>; 114 114 i-cache-sets = <192>; 115 115 next-level-cache = <&cluster2_l2>; 116 - cpu-idle-states = <&cpu_pw20>; 116 + cpu-idle-states = <&cpu_pw15>; 117 117 }; 118 118 119 119 cpu@300 { ··· 129 129 i-cache-line-size = <64>; 130 130 i-cache-sets = <192>; 131 131 next-level-cache = <&cluster3_l2>; 132 - cpu-idle-states = <&cpu_pw20>; 132 + cpu-idle-states = <&cpu_pw15>; 133 133 }; 134 134 135 135 cpu@301 { ··· 145 145 i-cache-line-size = <64>; 146 146 i-cache-sets = <192>; 147 147 next-level-cache = <&cluster3_l2>; 148 - cpu-idle-states = <&cpu_pw20>; 148 + cpu-idle-states = <&cpu_pw15>; 149 149 }; 150 150 151 151 cpu@400 { ··· 161 161 i-cache-line-size = <64>; 162 162 i-cache-sets = <192>; 163 163 next-level-cache = <&cluster4_l2>; 164 - cpu-idle-states = <&cpu_pw20>; 164 + cpu-idle-states = <&cpu_pw15>; 165 165 }; 166 166 167 167 cpu@401 { ··· 177 177 i-cache-line-size = <64>; 178 178 i-cache-sets = <192>; 179 179 next-level-cache = <&cluster4_l2>; 180 - cpu-idle-states = <&cpu_pw20>; 180 + cpu-idle-states = <&cpu_pw15>; 181 181 }; 182 182 183 183 cpu@500 { ··· 193 193 i-cache-line-size = <64>; 194 194 i-cache-sets = <192>; 195 195 next-level-cache = <&cluster5_l2>; 196 - cpu-idle-states = <&cpu_pw20>; 196 + cpu-idle-states = <&cpu_pw15>; 197 197 }; 198 198 199 199 cpu@501 { ··· 209 209 i-cache-line-size = <64>; 210 210 i-cache-sets = <192>; 211 211 next-level-cache = <&cluster5_l2>; 212 - cpu-idle-states = <&cpu_pw20>; 212 + cpu-idle-states = <&cpu_pw15>; 213 213 }; 214 214 215 215 cpu@600 { ··· 225 225 i-cache-line-size = <64>; 226 226 i-cache-sets = <192>; 227 227 next-level-cache = <&cluster6_l2>; 228 - cpu-idle-states = <&cpu_pw20>; 228 + cpu-idle-states = <&cpu_pw15>; 229 229 }; 230 230 231 231 cpu@601 { ··· 241 241 i-cache-line-size = <64>; 242 242 i-cache-sets = <192>; 243 243 next-level-cache = <&cluster6_l2>; 244 - cpu-idle-states = <&cpu_pw20>; 244 + cpu-idle-states = <&cpu_pw15>; 245 245 }; 246 246 247 247 cpu@700 { ··· 257 257 i-cache-line-size = <64>; 258 258 i-cache-sets = <192>; 259 259 next-level-cache = <&cluster7_l2>; 260 - cpu-idle-states = <&cpu_pw20>; 260 + cpu-idle-states = <&cpu_pw15>; 261 261 }; 262 262 263 263 cpu@701 { ··· 273 273 i-cache-line-size = <64>; 274 274 i-cache-sets = <192>; 275 275 next-level-cache = <&cluster7_l2>; 276 - cpu-idle-states = <&cpu_pw20>; 276 + cpu-idle-states = <&cpu_pw15>; 277 277 }; 278 278 279 279 cluster0_l2: l2-cache0 { ··· 340 340 cache-level = <2>; 341 341 }; 342 342 343 - cpu_pw20: cpu-pw20 { 343 + cpu_pw15: cpu-pw15 { 344 344 compatible = "arm,idle-state"; 345 - idle-state-name = "PW20"; 345 + idle-state-name = "PW15"; 346 346 arm,psci-suspend-param = <0x0>; 347 347 entry-latency-us = <2000>; 348 348 exit-latency-us = <2000>;
+3 -3
arch/arm64/boot/dts/freescale/imx8mm.dtsi
··· 694 694 compatible = "fsl,imx8mm-usdhc", "fsl,imx7d-usdhc"; 695 695 reg = <0x30b40000 0x10000>; 696 696 interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>; 697 - clocks = <&clk IMX8MM_CLK_DUMMY>, 697 + clocks = <&clk IMX8MM_CLK_IPG_ROOT>, 698 698 <&clk IMX8MM_CLK_NAND_USDHC_BUS>, 699 699 <&clk IMX8MM_CLK_USDHC1_ROOT>; 700 700 clock-names = "ipg", "ahb", "per"; ··· 710 710 compatible = "fsl,imx8mm-usdhc", "fsl,imx7d-usdhc"; 711 711 reg = <0x30b50000 0x10000>; 712 712 interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; 713 - clocks = <&clk IMX8MM_CLK_DUMMY>, 713 + clocks = <&clk IMX8MM_CLK_IPG_ROOT>, 714 714 <&clk IMX8MM_CLK_NAND_USDHC_BUS>, 715 715 <&clk IMX8MM_CLK_USDHC2_ROOT>; 716 716 clock-names = "ipg", "ahb", "per"; ··· 724 724 compatible = "fsl,imx8mm-usdhc", "fsl,imx7d-usdhc"; 725 725 reg = <0x30b60000 0x10000>; 726 726 interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>; 727 - clocks = <&clk IMX8MM_CLK_DUMMY>, 727 + clocks = <&clk IMX8MM_CLK_IPG_ROOT>, 728 728 <&clk IMX8MM_CLK_NAND_USDHC_BUS>, 729 729 <&clk IMX8MM_CLK_USDHC3_ROOT>; 730 730 clock-names = "ipg", "ahb", "per";
+3 -3
arch/arm64/boot/dts/freescale/imx8mn.dtsi
··· 569 569 compatible = "fsl,imx8mn-usdhc", "fsl,imx7d-usdhc"; 570 570 reg = <0x30b40000 0x10000>; 571 571 interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>; 572 - clocks = <&clk IMX8MN_CLK_DUMMY>, 572 + clocks = <&clk IMX8MN_CLK_IPG_ROOT>, 573 573 <&clk IMX8MN_CLK_NAND_USDHC_BUS>, 574 574 <&clk IMX8MN_CLK_USDHC1_ROOT>; 575 575 clock-names = "ipg", "ahb", "per"; ··· 585 585 compatible = "fsl,imx8mn-usdhc", "fsl,imx7d-usdhc"; 586 586 reg = <0x30b50000 0x10000>; 587 587 interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; 588 - clocks = <&clk IMX8MN_CLK_DUMMY>, 588 + clocks = <&clk IMX8MN_CLK_IPG_ROOT>, 589 589 <&clk IMX8MN_CLK_NAND_USDHC_BUS>, 590 590 <&clk IMX8MN_CLK_USDHC2_ROOT>; 591 591 clock-names = "ipg", "ahb", "per"; ··· 599 599 compatible = "fsl,imx8mn-usdhc", "fsl,imx7d-usdhc"; 600 600 reg = <0x30b60000 0x10000>; 601 601 interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>; 602 - clocks = <&clk IMX8MN_CLK_DUMMY>, 602 + clocks = <&clk IMX8MN_CLK_IPG_ROOT>, 603 603 <&clk IMX8MN_CLK_NAND_USDHC_BUS>, 604 604 <&clk IMX8MN_CLK_USDHC3_ROOT>; 605 605 clock-names = "ipg", "ahb", "per";
+2 -2
arch/arm64/boot/dts/freescale/imx8mq-zii-ultra.dtsi
··· 89 89 regulator-min-microvolt = <900000>; 90 90 regulator-max-microvolt = <1000000>; 91 91 gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>; 92 - states = <1000000 0x0 93 - 900000 0x1>; 92 + states = <1000000 0x1 93 + 900000 0x0>; 94 94 regulator-always-on; 95 95 }; 96 96 };
+2 -2
arch/arm64/boot/dts/freescale/imx8mq.dtsi
··· 850 850 "fsl,imx7d-usdhc"; 851 851 reg = <0x30b40000 0x10000>; 852 852 interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>; 853 - clocks = <&clk IMX8MQ_CLK_DUMMY>, 853 + clocks = <&clk IMX8MQ_CLK_IPG_ROOT>, 854 854 <&clk IMX8MQ_CLK_NAND_USDHC_BUS>, 855 855 <&clk IMX8MQ_CLK_USDHC1_ROOT>; 856 856 clock-names = "ipg", "ahb", "per"; ··· 867 867 "fsl,imx7d-usdhc"; 868 868 reg = <0x30b50000 0x10000>; 869 869 interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; 870 - clocks = <&clk IMX8MQ_CLK_DUMMY>, 870 + clocks = <&clk IMX8MQ_CLK_IPG_ROOT>, 871 871 <&clk IMX8MQ_CLK_NAND_USDHC_BUS>, 872 872 <&clk IMX8MQ_CLK_USDHC2_ROOT>; 873 873 clock-names = "ipg", "ahb", "per";
+7 -6
arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
··· 60 60 gpio = <&gpiosb 0 GPIO_ACTIVE_HIGH>; 61 61 }; 62 62 63 - usb3_phy: usb3-phy { 64 - compatible = "usb-nop-xceiv"; 65 - vcc-supply = <&exp_usb3_vbus>; 66 - }; 67 - 68 63 vsdc_reg: vsdc-reg { 69 64 compatible = "regulator-gpio"; 70 65 regulator-name = "vsdc"; ··· 250 255 status = "okay"; 251 256 }; 252 257 258 + &comphy2 { 259 + connector { 260 + compatible = "usb-a-connector"; 261 + phy-supply = <&exp_usb3_vbus>; 262 + }; 263 + }; 264 + 253 265 &usb3 { 254 266 status = "okay"; 255 267 phys = <&comphy2 0>; 256 - usb-phy = <&usb3_phy>; 257 268 }; 258 269 259 270 &mdio {
+1 -1
arch/arm64/boot/dts/rockchip/rk3399-gru-kevin.dts
··· 44 44 power-supply = <&pp3300_disp>; 45 45 46 46 panel-timing { 47 - clock-frequency = <266604720>; 47 + clock-frequency = <266666667>; 48 48 hactive = <2400>; 49 49 hfront-porch = <48>; 50 50 hback-porch = <84>;
+2 -2
arch/arm64/boot/dts/rockchip/rk3399-hugsun-x99.dts
··· 644 644 status = "okay"; 645 645 646 646 u2phy0_host: host-port { 647 - phy-supply = <&vcc5v0_host>; 647 + phy-supply = <&vcc5v0_typec>; 648 648 status = "okay"; 649 649 }; 650 650 ··· 712 712 713 713 &usbdrd_dwc3_0 { 714 714 status = "okay"; 715 - dr_mode = "otg"; 715 + dr_mode = "host"; 716 716 }; 717 717 718 718 &usbdrd3_1 {
+5 -7
arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dts
··· 173 173 regulator-always-on; 174 174 regulator-boot-on; 175 175 regulator-min-microvolt = <800000>; 176 - regulator-max-microvolt = <1400000>; 176 + regulator-max-microvolt = <1700000>; 177 177 vin-supply = <&vcc5v0_sys>; 178 178 }; 179 179 }; ··· 247 247 rk808: pmic@1b { 248 248 compatible = "rockchip,rk808"; 249 249 reg = <0x1b>; 250 - interrupt-parent = <&gpio1>; 251 - interrupts = <21 IRQ_TYPE_LEVEL_LOW>; 250 + interrupt-parent = <&gpio3>; 251 + interrupts = <10 IRQ_TYPE_LEVEL_LOW>; 252 252 #clock-cells = <1>; 253 253 clock-output-names = "xin32k", "rk808-clkout2"; 254 254 pinctrl-names = "default"; ··· 574 574 575 575 pmic { 576 576 pmic_int_l: pmic-int-l { 577 - rockchip,pins = <1 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>; 577 + rockchip,pins = <3 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>; 578 578 }; 579 579 580 580 vsel1_gpio: vsel1-gpio { ··· 624 624 625 625 &sdmmc { 626 626 bus-width = <4>; 627 - cap-mmc-highspeed; 628 627 cap-sd-highspeed; 629 628 cd-gpios = <&gpio0 7 GPIO_ACTIVE_LOW>; 630 629 disable-wp; ··· 635 636 636 637 &sdhci { 637 638 bus-width = <8>; 638 - mmc-hs400-1_8v; 639 - mmc-hs400-enhanced-strobe; 639 + mmc-hs200-1_8v; 640 640 non-removable; 641 641 status = "okay"; 642 642 };
+14 -4
drivers/bus/ti-sysc.c
··· 74 74 * @clk_disable_quirk: module specific clock disable quirk 75 75 * @reset_done_quirk: module specific reset done quirk 76 76 * @module_enable_quirk: module specific enable quirk 77 + * @module_disable_quirk: module specific disable quirk 77 78 */ 78 79 struct sysc { 79 80 struct device *dev; ··· 101 100 void (*clk_disable_quirk)(struct sysc *sysc); 102 101 void (*reset_done_quirk)(struct sysc *sysc); 103 102 void (*module_enable_quirk)(struct sysc *sysc); 103 + void (*module_disable_quirk)(struct sysc *sysc); 104 104 }; 105 105 106 106 static void sysc_parse_dts_quirks(struct sysc *ddata, struct device_node *np, ··· 961 959 if (ddata->offsets[SYSC_SYSCONFIG] == -ENODEV) 962 960 return 0; 963 961 962 + if (ddata->module_disable_quirk) 963 + ddata->module_disable_quirk(ddata); 964 + 964 965 regbits = ddata->cap->regbits; 965 966 reg = sysc_read(ddata, ddata->offsets[SYSC_SYSCONFIG]); 966 967 ··· 1253 1248 SYSC_MODULE_QUIRK_SGX), 1254 1249 SYSC_QUIRK("wdt", 0, 0, 0x10, 0x14, 0x502a0500, 0xfffff0f0, 1255 1250 SYSC_MODULE_QUIRK_WDT), 1251 + /* Watchdog on am3 and am4 */ 1252 + SYSC_QUIRK("wdt", 0x44e35000, 0, 0x10, 0x14, 0x502a0500, 0xfffff0f0, 1253 + SYSC_MODULE_QUIRK_WDT | SYSC_QUIRK_SWSUP_SIDLE), 1256 1254 1257 1255 #ifdef DEBUG 1258 1256 SYSC_QUIRK("adc", 0, 0, 0x10, -1, 0x47300001, 0xffffffff, 0), ··· 1448 1440 !(val & 0x10), 100, 1449 1441 MAX_MODULE_SOFTRESET_WAIT); 1450 1442 if (error) 1451 - dev_warn(ddata->dev, "wdt disable spr failed\n"); 1443 + dev_warn(ddata->dev, "wdt disable step1 failed\n"); 1452 1444 1453 - sysc_write(ddata, wps, 0x5555); 1445 + sysc_write(ddata, spr, 0x5555); 1454 1446 error = readl_poll_timeout(ddata->module_va + wps, val, 1455 1447 !(val & 0x10), 100, 1456 1448 MAX_MODULE_SOFTRESET_WAIT); 1457 1449 if (error) 1458 - dev_warn(ddata->dev, "wdt disable wps failed\n"); 1450 + dev_warn(ddata->dev, "wdt disable step2 failed\n"); 1459 1451 } 1460 1452 1461 1453 static void sysc_init_module_quirks(struct sysc *ddata) ··· 1479 1471 if (ddata->cfg.quirks & SYSC_MODULE_QUIRK_SGX) 1480 1472 ddata->module_enable_quirk = sysc_module_enable_quirk_sgx; 1481 1473 1482 - if (ddata->cfg.quirks & SYSC_MODULE_QUIRK_WDT) 1474 + if (ddata->cfg.quirks & SYSC_MODULE_QUIRK_WDT) { 1483 1475 ddata->reset_done_quirk = sysc_reset_done_quirk_wdt; 1476 + ddata->module_disable_quirk = sysc_reset_done_quirk_wdt; 1477 + } 1484 1478 } 1485 1479 1486 1480 static int sysc_clockdomain_init(struct sysc *ddata)
+1 -1
drivers/soc/imx/soc-imx-scu.c
··· 46 46 hdr->func = IMX_SC_MISC_FUNC_UNIQUE_ID; 47 47 hdr->size = 1; 48 48 49 - ret = imx_scu_call_rpc(soc_ipc_handle, &msg, false); 49 + ret = imx_scu_call_rpc(soc_ipc_handle, &msg, true); 50 50 if (ret) { 51 51 pr_err("%s: get soc uid failed, ret %d\n", __func__, ret); 52 52 return ret;