Message ID | CAOMZO5CJEoe_fGLH-Uu9uVwNdWPp940k3WGAkjzkCiGmjAPAXA@mail.gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi, Fabio Estevam wrote: > Hi Dong, > > I have tested the following patch to add support for the emmc port on > mx6qsabresd: > > --- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi > +++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi > @@ -444,6 +444,21 @@ > MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x17059 > >; > }; > + > + pinctrl_usdhc4: usdhc4grp { > + fsl,pins = < > + MX6QDL_PAD_SD4_CMD__SD4_CMD 0x17059 > + MX6QDL_PAD_SD4_CLK__SD4_CLK 0x10059 > + MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17059 > + MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17059 > + MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17059 > + MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17059 > + MX6QDL_PAD_SD4_DAT4__SD4_DATA4 0x17059 > + MX6QDL_PAD_SD4_DAT5__SD4_DATA5 0x17059 > + MX6QDL_PAD_SD4_DAT6__SD4_DATA6 0x17059 > + MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x17059 [...] > > Is there any extra patch I need to apply? I am running linux-next 20140506. > I'm using the pad settings 0x070b1 for our i.MX6 module with eMMC. At least you should probably drop the HYS setting (0x10000), since according to my experience the SD interface works much better with hysteresis disabled. Lothar Waßmann
On Thu, May 08, 2014 at 09:18:35AM +0200, Lothar Waßmann wrote: > Hi, > > Fabio Estevam wrote: > > Hi Dong, > > > > I have tested the following patch to add support for the emmc port on > > mx6qsabresd: > > > > --- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi > > +++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi > > @@ -444,6 +444,21 @@ > > MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x17059 > > >; > > }; > > + > > + pinctrl_usdhc4: usdhc4grp { > > + fsl,pins = < > > + MX6QDL_PAD_SD4_CMD__SD4_CMD 0x17059 > > + MX6QDL_PAD_SD4_CLK__SD4_CLK 0x10059 > > + MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17059 > > + MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17059 > > + MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17059 > > + MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17059 > > + MX6QDL_PAD_SD4_DAT4__SD4_DATA4 0x17059 > > + MX6QDL_PAD_SD4_DAT5__SD4_DATA5 0x17059 > > + MX6QDL_PAD_SD4_DAT6__SD4_DATA6 0x17059 > > + MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x17059 > [...] > > > > Is there any extra patch I need to apply? I am running linux-next 20140506. > > > I'm using the pad settings 0x070b1 for our i.MX6 module with eMMC. > At least you should probably drop the HYS setting (0x10000), since > according to my experience the SD interface works much better with > hysteresis disabled. > I'm not very sure about HYS bit, but it should not be pad setting issue. This pad setting was tested ok with FSL internal tree. I just tested an old Chris/mmc-next tree which is 3.14 rc2 with the top commit is b42b9b. The eMMC works well on SabreSD boards. But it failed and got the same issue with latest chris/mmc-next tree. I noticed there's no changes on sdhci-esdhc-imx.c Probably some other changes breaks this function. Fabio, You may bisect it yourself or i will do it later when i'm a bit free. Shawn, I remember this patch should have been upstream through your tree long time ago. http://lists.infradead.org/pipermail/linux-arm-kernel/2013-October/206446.html It seems somehow missed. Regards Dong Aisheng > > Lothar Waßmann > -- > ___________________________________________________________ > > Ka-Ro electronics GmbH | Pascalstraße 22 | D - 52076 Aachen > Phone: +49 2408 1402-0 | Fax: +49 2408 1402-10 > Geschäftsführer: Matthias Kaussen > Handelsregistereintrag: Amtsgericht Aachen, HRB 4996 > > www.karo-electronics.de | info@karo-electronics.de > ___________________________________________________________ -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Thu, May 8, 2014 at 7:17 AM, Dong Aisheng <b29396@freescale.com> wrote: > I'm not very sure about HYS bit, but it should not be pad setting issue. > This pad setting was tested ok with FSL internal tree. > > I just tested an old Chris/mmc-next tree which is 3.14 rc2 with the top commit is b42b9b. > The eMMC works well on SabreSD boards. > But it failed and got the same issue with latest chris/mmc-next tree. > I noticed there's no changes on sdhci-esdhc-imx.c > Probably some other changes breaks this function. > > Fabio, > You may bisect it yourself or i will do it later when i'm a bit free. Ok, I have just tested with Shawn's branch and the mmc error does not happen, so it must be something in linux-next that causes the issue. Will submit the dts change. Regards, Fabio Estevam -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, May 09, 2014 at 11:16:25AM +0800, Shawn Guo wrote: > On Thu, May 08, 2014 at 06:17:32PM +0800, Dong Aisheng wrote: > > I just tested an old Chris/mmc-next tree which is 3.14 rc2 with the top commit is b42b9b. > > The eMMC works well on SabreSD boards. > > But it failed and got the same issue with latest chris/mmc-next tree. > > I noticed there's no changes on sdhci-esdhc-imx.c > > Probably some other changes breaks this function. > > > > Fabio, > > You may bisect it yourself or i will do it later when i'm a bit free. > > The regression is caused by the following commit ... > > commit 79f7ae7c45a6ccf04e2908337461dee615f6afb0 > Author: Seungwon Jeon <tgih.jun@samsung.com> > Date: Fri Mar 14 21:11:56 2014 +0900 > > mmc: clarify DDR timing mode between SD-UHS and eMMC > > This change distinguishes DDR timing mode of current > mixed usage to clarify device type. > > Signed-off-by: Seungwon Jeon <tgih.jun@samsung.com> > Acked-by: Jaehoon Chung <jh80.chung@samsung.com> > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> > Signed-off-by: Chris Ball <chris@printf.net> > > ... and the line below. > > @@ -1264,7 +1264,7 @@ static int mmc_init_card(struct mmc_host *host, u32 ocr, > goto err; > } > mmc_card_set_ddr_mode(card); > - mmc_set_timing(card->host, MMC_TIMING_UHS_DDR50); > + mmc_set_timing(card->host, MMC_TIMING_MMC_DDR52); > mmc_set_bus_width(card->host, bus_width); > } > } > Thanks for the info. The plat driver is still using UHS_DDR50 which may need update too. I will submit a patch to fix it ASAP. Regards Dong Aisheng > > > Shawn, > > I remember this patch should have been upstream through your tree long time ago. > > http://lists.infradead.org/pipermail/linux-arm-kernel/2013-October/206446.html > > It seems somehow missed. > > Ah, yes. It got lost. > > Shawn -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Thu, May 08, 2014 at 06:17:32PM +0800, Dong Aisheng wrote: > I just tested an old Chris/mmc-next tree which is 3.14 rc2 with the top commit is b42b9b. > The eMMC works well on SabreSD boards. > But it failed and got the same issue with latest chris/mmc-next tree. > I noticed there's no changes on sdhci-esdhc-imx.c > Probably some other changes breaks this function. > > Fabio, > You may bisect it yourself or i will do it later when i'm a bit free. The regression is caused by the following commit ... commit 79f7ae7c45a6ccf04e2908337461dee615f6afb0 Author: Seungwon Jeon <tgih.jun@samsung.com> Date: Fri Mar 14 21:11:56 2014 +0900 mmc: clarify DDR timing mode between SD-UHS and eMMC This change distinguishes DDR timing mode of current mixed usage to clarify device type. Signed-off-by: Seungwon Jeon <tgih.jun@samsung.com> Acked-by: Jaehoon Chung <jh80.chung@samsung.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by: Chris Ball <chris@printf.net> ... and the line below. @@ -1264,7 +1264,7 @@ static int mmc_init_card(struct mmc_host *host, u32 ocr, goto err; } mmc_card_set_ddr_mode(card); - mmc_set_timing(card->host, MMC_TIMING_UHS_DDR50); + mmc_set_timing(card->host, MMC_TIMING_MMC_DDR52); mmc_set_bus_width(card->host, bus_width); } } > Shawn, > I remember this patch should have been upstream through your tree long time ago. > http://lists.infradead.org/pipermail/linux-arm-kernel/2013-October/206446.html > It seems somehow missed. Ah, yes. It got lost. Shawn -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
--- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi +++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi @@ -444,6 +444,21 @@ MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x17059 >; }; + + pinctrl_usdhc4: usdhc4grp { + fsl,pins = < + MX6QDL_PAD_SD4_CMD__SD4_CMD 0x17059 + MX6QDL_PAD_SD4_CLK__SD4_CLK 0x10059 + MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17059 + MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17059 + MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17059 + MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17059 + MX6QDL_PAD_SD4_DAT4__SD4_DATA4 0x17059 + MX6QDL_PAD_SD4_DAT5__SD4_DATA5 0x17059 + MX6QDL_PAD_SD4_DAT6__SD4_DATA6 0x17059 + MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x17059 + >; + }; }; gpio_leds { @@ -535,3 +550,11 @@ wp-gpios = <&gpio2 1 0>; status = "okay"; }; + +&usdhc4 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usdhc4>; + bus-width = <8>; + non-removable; + status = "okay"; +};