Message ID | 20190220111922.6763-1-m.szyprowski@samsung.com |
---|---|
State | New |
Headers | show |
Series | ARM: dts: exynos: Fix max voltage for BUCK8 regulator on Odroid XU3/4 | expand |
On Wed, 20 Feb 2019 at 12:19, Marek Szyprowski <m.szyprowski@samsung.com> wrote: > > The maximum voltage value for BUCK8 regulator on Odroid XU3/4 boards is > set too low. Increase it to the 2000mV as specified on the board schematic. > So far the board worked fine, because of the bug in the PMIC driver, which > used incorrect step value for that regulator. It interpreted the voltage > value set by the bootloader as 1500mV and kept it unchanged. The regulator ... as 1225mV (below the maximum voltage constraints) and kept it unchanged... And we need cc-stable because previous value was clearly wrong (max 1.5 V while regulator is named 1.8 V) and the s2mps11 commit might end up in stable kernels: Fixes: 86a2d2ac5e5d ("ARM: dts: Add dts file for Odroid XU3 board") Cc: <stable@vger.kernel.org> I can add these during applying. BR, Krzysztof > driver has been however fixed recently in the commit 56b5d4ea778c > ("regulator: s2mps11: Fix steps for buck7, buck8 and LDO35"), what results > in reading the proper BUCK8 value and forcing it to 1500mV on boot. This > is not enough for proper board operation and results in eMMC errors during > heavy IO traffic. Increasing maximum voltage value for BUCK8 restores > original driver behavior and fixes eMMC issues. > > Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> > --- > arch/arm/boot/dts/exynos5422-odroid-core.dtsi | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/arm/boot/dts/exynos5422-odroid-core.dtsi b/arch/arm/boot/dts/exynos5422-odroid-core.dtsi > index bf09eab90f8a..6bf3661293ee 100644 > --- a/arch/arm/boot/dts/exynos5422-odroid-core.dtsi > +++ b/arch/arm/boot/dts/exynos5422-odroid-core.dtsi > @@ -468,7 +468,7 @@ > buck8_reg: BUCK8 { > regulator-name = "vdd_1.8v_ldo"; > regulator-min-microvolt = <800000>; > - regulator-max-microvolt = <1500000>; > + regulator-max-microvolt = <2000000>; > regulator-always-on; > regulator-boot-on; > }; > -- > 2.17.1 >
On Wed, 20 Feb 2019 at 12:24, Krzysztof Kozlowski <krzk@kernel.org> wrote: > > On Wed, 20 Feb 2019 at 12:19, Marek Szyprowski <m.szyprowski@samsung.com> wrote: > > > > The maximum voltage value for BUCK8 regulator on Odroid XU3/4 boards is > > set too low. Increase it to the 2000mV as specified on the board schematic. > > So far the board worked fine, because of the bug in the PMIC driver, which > > used incorrect step value for that regulator. It interpreted the voltage > > value set by the bootloader as 1500mV and kept it unchanged. The regulator > > ... as 1225mV (below the maximum voltage constraints) and kept it unchanged... > > And we need cc-stable because previous value was clearly wrong (max > 1.5 V while regulator is named 1.8 V) and the s2mps11 commit might end > up in stable kernels: > > Fixes: 86a2d2ac5e5d ("ARM: dts: Add dts file for Odroid XU3 board") And maybe also: Fixes: 56b5d4ea778c ("regulator: s2mps11: Fix steps for buck7, buck8 and LDO35") to clearly indicate that they must go together? It is not clearly fix for this commit but I am not aware of any other syntax. BR, Krzysztof > Cc: <stable@vger.kernel.org> > > I can add these during applying. > > BR, > Krzysztof > > > driver has been however fixed recently in the commit 56b5d4ea778c > > ("regulator: s2mps11: Fix steps for buck7, buck8 and LDO35"), what results > > in reading the proper BUCK8 value and forcing it to 1500mV on boot. This > > is not enough for proper board operation and results in eMMC errors during > > heavy IO traffic. Increasing maximum voltage value for BUCK8 restores > > original driver behavior and fixes eMMC issues. > > > > Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> > > --- > > arch/arm/boot/dts/exynos5422-odroid-core.dtsi | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/arch/arm/boot/dts/exynos5422-odroid-core.dtsi b/arch/arm/boot/dts/exynos5422-odroid-core.dtsi > > index bf09eab90f8a..6bf3661293ee 100644 > > --- a/arch/arm/boot/dts/exynos5422-odroid-core.dtsi > > +++ b/arch/arm/boot/dts/exynos5422-odroid-core.dtsi > > @@ -468,7 +468,7 @@ > > buck8_reg: BUCK8 { > > regulator-name = "vdd_1.8v_ldo"; > > regulator-min-microvolt = <800000>; > > - regulator-max-microvolt = <1500000>; > > + regulator-max-microvolt = <2000000>; > > regulator-always-on; > > regulator-boot-on; > > }; > > -- > > 2.17.1 > >
Hi Marek, On Wed, 20 Feb 2019 at 16:49, Marek Szyprowski <m.szyprowski@samsung.com> wrote: > > The maximum voltage value for BUCK8 regulator on Odroid XU3/4 boards is > set too low. Increase it to the 2000mV as specified on the board schematic. > So far the board worked fine, because of the bug in the PMIC driver, which > used incorrect step value for that regulator. It interpreted the voltage > value set by the bootloader as 1500mV and kept it unchanged. The regulator > driver has been however fixed recently in the commit 56b5d4ea778c > ("regulator: s2mps11: Fix steps for buck7, buck8 and LDO35"), what results > in reading the proper BUCK8 value and forcing it to 1500mV on boot. This > is not enough for proper board operation and results in eMMC errors during > heavy IO traffic. Increasing maximum voltage value for BUCK8 restores > original driver behavior and fixes eMMC issues. > Their is a pincrtl setting to configure Read Strobe (RDQS) added to support higher data rate RDSQ --------XMMC0RDQS/GPC0_7/EXT_INT9_7 will setting this bit help resolve the eMMC error Also we could increase the following samsung,read-strobe-delay = <150>; To increase stability of the eMMC. Best Regards -Anand
diff --git a/arch/arm/boot/dts/exynos5422-odroid-core.dtsi b/arch/arm/boot/dts/exynos5422-odroid-core.dtsi index bf09eab90f8a..6bf3661293ee 100644 --- a/arch/arm/boot/dts/exynos5422-odroid-core.dtsi +++ b/arch/arm/boot/dts/exynos5422-odroid-core.dtsi @@ -468,7 +468,7 @@ buck8_reg: BUCK8 { regulator-name = "vdd_1.8v_ldo"; regulator-min-microvolt = <800000>; - regulator-max-microvolt = <1500000>; + regulator-max-microvolt = <2000000>; regulator-always-on; regulator-boot-on; };
The maximum voltage value for BUCK8 regulator on Odroid XU3/4 boards is set too low. Increase it to the 2000mV as specified on the board schematic. So far the board worked fine, because of the bug in the PMIC driver, which used incorrect step value for that regulator. It interpreted the voltage value set by the bootloader as 1500mV and kept it unchanged. The regulator driver has been however fixed recently in the commit 56b5d4ea778c ("regulator: s2mps11: Fix steps for buck7, buck8 and LDO35"), what results in reading the proper BUCK8 value and forcing it to 1500mV on boot. This is not enough for proper board operation and results in eMMC errors during heavy IO traffic. Increasing maximum voltage value for BUCK8 restores original driver behavior and fixes eMMC issues. Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> --- arch/arm/boot/dts/exynos5422-odroid-core.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.17.1