Message ID | 20180722164936.20581-1-marcel@ziswiler.com |
---|---|
Headers | show |
Series | ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support | expand |
On Sunday, 22 July 2018 19:49:09 MSK Marcel Ziswiler wrote: > From: Marcel Ziswiler <marcel.ziswiler@toradex.com> > > Avoid eMMC issues by specifying broken-hpi. > > Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> > > --- Is it a specific eMMC card model that has broken HPI or it is a host controller bug? -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, 2018-07-24 at 17:03 +0300, Dmitry Osipenko wrote: > On Sunday, 22 July 2018 19:49:09 MSK Marcel Ziswiler wrote: > > From: Marcel Ziswiler <marcel.ziswiler@toradex.com> > > > > Avoid eMMC issues by specifying broken-hpi. > > > > Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> > > > > --- > > Is it a specific eMMC card model that has broken HPI or it is a host > controller bug? That is a very good question. So far we only have confirmation that at least some eMMCs from Hynix resp. SKHynix definitely do have bad firmware. I also found out that ASUS resp. Google did disable HPI on their Nexus 7 tablet. Therefore, we also disabled HPI quite a while ago in our downstream BSPs which we successfully validated & verified doing power cuts and running stress tests in our temperature chambers. I guess we would have to run more extensive tests with mainline with and without this setting to be able to really answer your question. For now I just successfully run a few Apalis T30 and Colibri T30 modules with this setting over the weekend doing both hdparm -t as well as dding some urandom files to the eMMC in a loop without seeing any issues.
On Tuesday, 24 July 2018 17:26:58 MSK Marcel Ziswiler wrote: > On Tue, 2018-07-24 at 17:03 +0300, Dmitry Osipenko wrote: > > > On Sunday, 22 July 2018 19:49:09 MSK Marcel Ziswiler wrote: > > > > > From: Marcel Ziswiler <marcel.ziswiler@toradex.com> > > > > > > Avoid eMMC issues by specifying broken-hpi. > > > > > > Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> > > > > > > --- > > > > > > Is it a specific eMMC card model that has broken HPI or it is a host > > controller bug? > > > That is a very good question. So far we only have confirmation that at > least some eMMCs from Hynix resp. SKHynix definitely do have bad > firmware. I also found out that ASUS resp. Google did disable HPI on > their Nexus 7 tablet. Therefore, we also disabled HPI quite a while ago > in our downstream BSPs which we successfully validated & verified doing > power cuts and running stress tests in our temperature chambers. I > guess we would have to run more extensive tests with mainline with and > without this setting to be able to really answer your question. For now > I just successfully run a few Apalis T30 and Colibri T30 modules with > this setting over the weekend doing both hdparm -t as well as dding > some urandom files to the eMMC in a loop without seeing any issues. The broken-hpi quirk was added for the Hynix cards specifically in [0]. Maybe you should just extend the mmc_ext_csd_fixups list in [1] with another OEM ID? [0] https://patchwork.kernel.org/patch/9168455/ [1] drivers/mmc/core/quirks.h -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, 2018-07-24 at 17:55 +0300, Dmitry Osipenko wrote: > On Tuesday, 24 July 2018 17:26:58 MSK Marcel Ziswiler wrote: > > On Tue, 2018-07-24 at 17:03 +0300, Dmitry Osipenko wrote: > > > > > On Sunday, 22 July 2018 19:49:09 MSK Marcel Ziswiler wrote: > > > > > > > From: Marcel Ziswiler <marcel.ziswiler@toradex.com> > > > > > > > > Avoid eMMC issues by specifying broken-hpi. > > > > > > > > Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> > > > > > > > > --- > > > > > > > > > Is it a specific eMMC card model that has broken HPI or it is a > > > host > > > controller bug? > > > > > > That is a very good question. So far we only have confirmation that > > at > > least some eMMCs from Hynix resp. SKHynix definitely do have bad > > firmware. I also found out that ASUS resp. Google did disable HPI > > on > > their Nexus 7 tablet. Therefore, we also disabled HPI quite a while > > ago > > in our downstream BSPs which we successfully validated & verified > > doing > > power cuts and running stress tests in our temperature chambers. I > > guess we would have to run more extensive tests with mainline with > > and > > without this setting to be able to really answer your question. For > > now > > I just successfully run a few Apalis T30 and Colibri T30 modules > > with > > this setting over the weekend doing both hdparm -t as well as dding > > some urandom files to the eMMC in a loop without seeing any issues. > > The broken-hpi quirk was added for the Hynix cards specifically in > [0]. Maybe > you should just extend the mmc_ext_csd_fixups list in [1] with > another OEM ID? > > [0] https://patchwork.kernel.org/patch/9168455/ > [1] drivers/mmc/core/quirks.h Ah, interesting, somehow I missed how that works. Let me give that a try and if it does work I may make use of this in a v2. Thanks for the tip, Dmitry.
On Sun, 2018-07-22 at 18:49 +0200, Marcel Ziswiler wrote: > From: Marcel Ziswiler <marcel.ziswiler@toradex.com> > > Add i2c-thermtrip which would set the DEV_OFF bit in the DCDC control > register of the TPS65911 PMIC. > > Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> > > --- > > arch/arm/boot/dts/tegra30-apalis.dtsi | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi > b/arch/arm/boot/dts/tegra30-apalis.dtsi > index 4e8ea1a8d9ec..f8caf3f07fff 100644 > --- a/arch/arm/boot/dts/tegra30-apalis.dtsi > +++ b/arch/arm/boot/dts/tegra30-apalis.dtsi > @@ -1055,6 +1055,14 @@ > nvidia,core-pwr-off-time = <0>; > nvidia,core-power-req-active-high; > nvidia,sys-clock-req-active-high; > + > + /* Set DEV_OFF bit in DCDC control register of > TPS65911 PMIC */ > + i2c-thermtrip { > + nvidia,i2c-controller-id = <4>; > + nvidia,bus-addr = <0x2d>; > + nvidia,reg-addr = <0x3e>; When running some more tests I just realized that the reg-addr should really be 0x3f instead. Will change this in a v2. > + nvidia,reg-data = <0x1>; > + }; > }; > > ahub@70080000 {