On 11.11.19 01:51, Kever Yang wrote: > Since there is no devfreq used for vdd_log, so the vdd_log(pwm regulator) > will be 'enable' with the dts node at a default PWM state with high or low > output. Both too high or too low for vdd_log is not good for the board, > add init voltage for driver to make the regulator get into a know output. > > Note that this will be used by U-Boot for init voltage output, and this > is very important for it may get system hang somewhere during system > boot up with regulator enable and without this init value. I think it's a good idea to include this setting in the main dts for the boards (not in u-boot specific additions as is done now). But there is (for some reason?) no documented binding for regulator-init-microvolt in linux. Regards, Soeren > > CC: Elaine Zhang <zhangqing@xxxxxxxxxxxxxx> > CC: Peter Robinson <pbrobinson@xxxxxxxxx> > Signed-off-by: Kever Yang <kever.yang@xxxxxxxxxxxxxx> > --- > > arch/arm64/boot/dts/rockchip/rk3399-evb.dts | 1 + > arch/arm64/boot/dts/rockchip/rk3399-firefly.dts | 1 + > arch/arm64/boot/dts/rockchip/rk3399-hugsun-x99.dts | 1 + > arch/arm64/boot/dts/rockchip/rk3399-khadas-edge.dtsi | 1 + > arch/arm64/boot/dts/rockchip/rk3399-leez-p710.dts | 1 + > arch/arm64/boot/dts/rockchip/rk3399-orangepi.dts | 1 + > arch/arm64/boot/dts/rockchip/rk3399-roc-pc.dts | 1 + > arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dts | 1 + > arch/arm64/boot/dts/rockchip/rk3399-sapphire.dtsi | 1 + > 9 files changed, 9 insertions(+) > > diff --git a/arch/arm64/boot/dts/rockchip/rk3399-evb.dts b/arch/arm64/boot/dts/rockchip/rk3399-evb.dts > index 77008dca45bc..fa241aeb11b0 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3399-evb.dts > +++ b/arch/arm64/boot/dts/rockchip/rk3399-evb.dts > @@ -65,6 +65,7 @@ > regulator-name = "vdd_center"; > regulator-min-microvolt = <800000>; > regulator-max-microvolt = <1400000>; > + regulator-init-microvolt = <950000>; > regulator-always-on; > regulator-boot-on; > status = "okay"; > diff --git a/arch/arm64/boot/dts/rockchip/rk3399-firefly.dts b/arch/arm64/boot/dts/rockchip/rk3399-firefly.dts > index 92de83dd4dbc..4e45269fcdff 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3399-firefly.dts > +++ b/arch/arm64/boot/dts/rockchip/rk3399-firefly.dts > @@ -208,6 +208,7 @@ > regulator-boot-on; > regulator-min-microvolt = <430000>; > regulator-max-microvolt = <1400000>; > + regulator-init-microvolt = <950000>; > vin-supply = <&vcc_sys>; > }; > }; > diff --git a/arch/arm64/boot/dts/rockchip/rk3399-hugsun-x99.dts b/arch/arm64/boot/dts/rockchip/rk3399-hugsun-x99.dts > index c133e8d64b2a..692f3154edc3 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3399-hugsun-x99.dts > +++ b/arch/arm64/boot/dts/rockchip/rk3399-hugsun-x99.dts > @@ -100,6 +100,7 @@ > regulator-name = "vdd_log"; > regulator-min-microvolt = <800000>; > regulator-max-microvolt = <1400000>; > + regulator-init-microvolt = <950000>; > regulator-always-on; > regulator-boot-on; > }; > diff --git a/arch/arm64/boot/dts/rockchip/rk3399-khadas-edge.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-khadas-edge.dtsi > index 4944d78a0a1c..c2ac80d99301 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3399-khadas-edge.dtsi > +++ b/arch/arm64/boot/dts/rockchip/rk3399-khadas-edge.dtsi > @@ -79,6 +79,7 @@ > regulator-boot-on; > regulator-min-microvolt = <800000>; > regulator-max-microvolt = <1400000>; > + regulator-init-microvolt = <950000>; > vin-supply = <&vsys_3v3>; > }; > > diff --git a/arch/arm64/boot/dts/rockchip/rk3399-leez-p710.dts b/arch/arm64/boot/dts/rockchip/rk3399-leez-p710.dts > index 73be38a53796..c32abcc4ddc1 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3399-leez-p710.dts > +++ b/arch/arm64/boot/dts/rockchip/rk3399-leez-p710.dts > @@ -101,6 +101,7 @@ > regulator-boot-on; > regulator-min-microvolt = <800000>; > regulator-max-microvolt = <1400000>; > + regulator-init-microvolt = <950000>; > vin-supply = <&vcc5v0_sys>; > }; > }; > diff --git a/arch/arm64/boot/dts/rockchip/rk3399-orangepi.dts b/arch/arm64/boot/dts/rockchip/rk3399-orangepi.dts > index 0541dfce924d..9d674c51f025 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3399-orangepi.dts > +++ b/arch/arm64/boot/dts/rockchip/rk3399-orangepi.dts > @@ -164,6 +164,7 @@ > regulator-boot-on; > regulator-min-microvolt = <800000>; > regulator-max-microvolt = <1400000>; > + regulator-init-microvolt = <950000>; > vin-supply = <&vcc_sys>; > }; > }; > diff --git a/arch/arm64/boot/dts/rockchip/rk3399-roc-pc.dts b/arch/arm64/boot/dts/rockchip/rk3399-roc-pc.dts > index 19f7732d728c..7d856ce1d156 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3399-roc-pc.dts > +++ b/arch/arm64/boot/dts/rockchip/rk3399-roc-pc.dts > @@ -129,6 +129,7 @@ > regulator-boot-on; > regulator-min-microvolt = <800000>; > regulator-max-microvolt = <1400000>; > + regulator-init-microvolt = <950000>; > vin-supply = <&vcc3v3_sys>; > }; > }; > diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dts b/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dts > index e544deb61d28..8fbccbc8bf47 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dts > +++ b/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dts > @@ -174,6 +174,7 @@ > regulator-boot-on; > regulator-min-microvolt = <800000>; > regulator-max-microvolt = <1700000>; > + regulator-init-microvolt = <950000>; > vin-supply = <&vcc5v0_sys>; > }; > }; > diff --git a/arch/arm64/boot/dts/rockchip/rk3399-sapphire.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-sapphire.dtsi > index 1bc1579674e5..f8e2cb8c0624 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3399-sapphire.dtsi > +++ b/arch/arm64/boot/dts/rockchip/rk3399-sapphire.dtsi > @@ -133,6 +133,7 @@ > regulator-boot-on; > regulator-min-microvolt = <800000>; > regulator-max-microvolt = <1400000>; > + regulator-init-microvolt = <950000>; > vin-supply = <&vcc_sys>; > }; > };