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

Merge tag 'imx-fixes-4.20-3' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into fixes

i.MX fixes for 4.20, round 3:
- A couple of fixes on imx7d-pico and imx7d-nitrogen7 boards to correct
the description of the Wifi clock.
- Change SW2ISO count to get a safer ARM LDO ramp-up time, so that
different boards can be covered. This fixes the ARM LDO failure seen
on some customer boards.

* tag 'imx-fixes-4.20-3' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
ARM: dts: imx7d-nitrogen7: Fix the description of the Wifi clock
ARM: imx: update the cpu power up timing setting on i.mx6sx
ARM: dts: imx7d-pico: Describe the Wifi clock

Signed-off-by: Olof Johansson <olof@lixom.net>

+29 -4
+7 -2
arch/arm/boot/dts/imx7d-nitrogen7.dts
··· 86 86 compatible = "regulator-fixed"; 87 87 regulator-min-microvolt = <3300000>; 88 88 regulator-max-microvolt = <3300000>; 89 - clocks = <&clks IMX7D_CLKO2_ROOT_DIV>; 90 - clock-names = "slow"; 91 89 regulator-name = "reg_wlan"; 92 90 startup-delay-us = <70000>; 93 91 gpio = <&gpio4 21 GPIO_ACTIVE_HIGH>; 94 92 enable-active-high; 93 + }; 94 + 95 + usdhc2_pwrseq: usdhc2_pwrseq { 96 + compatible = "mmc-pwrseq-simple"; 97 + clocks = <&clks IMX7D_CLKO2_ROOT_DIV>; 98 + clock-names = "ext_clock"; 95 99 }; 96 100 }; 97 101 ··· 379 375 bus-width = <4>; 380 376 non-removable; 381 377 vmmc-supply = <&reg_wlan>; 378 + mmc-pwrseq = <&usdhc2_pwrseq>; 382 379 cap-power-off-card; 383 380 keep-power-in-suspend; 384 381 status = "okay";
+21 -1
arch/arm/boot/dts/imx7d-pico.dtsi
··· 100 100 regulator-min-microvolt = <1800000>; 101 101 regulator-max-microvolt = <1800000>; 102 102 }; 103 + 104 + usdhc2_pwrseq: usdhc2_pwrseq { 105 + compatible = "mmc-pwrseq-simple"; 106 + clocks = <&clks IMX7D_CLKO2_ROOT_DIV>; 107 + clock-names = "ext_clock"; 108 + }; 109 + }; 110 + 111 + &clks { 112 + assigned-clocks = <&clks IMX7D_CLKO2_ROOT_SRC>, 113 + <&clks IMX7D_CLKO2_ROOT_DIV>; 114 + assigned-clock-parents = <&clks IMX7D_CKIL>; 115 + assigned-clock-rates = <0>, <32768>; 103 116 }; 104 117 105 118 &i2c4 { ··· 212 199 213 200 &usdhc2 { /* Wifi SDIO */ 214 201 pinctrl-names = "default"; 215 - pinctrl-0 = <&pinctrl_usdhc2>; 202 + pinctrl-0 = <&pinctrl_usdhc2 &pinctrl_wifi_clk>; 216 203 no-1-8-v; 217 204 non-removable; 218 205 keep-power-in-suspend; 219 206 wakeup-source; 220 207 vmmc-supply = <&reg_ap6212>; 208 + mmc-pwrseq = <&usdhc2_pwrseq>; 221 209 status = "okay"; 222 210 }; 223 211 ··· 315 301 }; 316 302 317 303 &iomuxc_lpsr { 304 + pinctrl_wifi_clk: wificlkgrp { 305 + fsl,pins = < 306 + MX7D_PAD_LPSR_GPIO1_IO03__CCM_CLKO2 0x7d 307 + >; 308 + }; 309 + 318 310 pinctrl_wdog: wdoggrp { 319 311 fsl,pins = < 320 312 MX7D_PAD_LPSR_GPIO1_IO00__WDOG1_WDOG_B 0x74
+1 -1
arch/arm/mach-imx/cpuidle-imx6sx.c
··· 110 110 * except for power up sw2iso which need to be 111 111 * larger than LDO ramp up time. 112 112 */ 113 - imx_gpc_set_arm_power_up_timing(2, 1); 113 + imx_gpc_set_arm_power_up_timing(0xf, 1); 114 114 imx_gpc_set_arm_power_down_timing(1, 1); 115 115 116 116 return cpuidle_register(&imx6sx_cpuidle_driver, NULL);