>-----Original Message----- >From: Lucas Stach [mailto:l.stach@xxxxxxxxxxxxxx] >Sent: 2018年2月23日 23:46 >To: Juergen Borleis <jbe@xxxxxxxxxxxxxx>; kernel@xxxxxxxxxxxxxx >Cc: Shawn Guo <shawnguo@xxxxxxxxxx>; Mark Rutland ><mark.rutland@xxxxxxx>; devicetree@xxxxxxxxxxxxxxx; Baruch Siach ><baruch@xxxxxxxxxx>; Catalin Marinas <catalin.marinas@xxxxxxx>; Will >Deacon <will.deacon@xxxxxxx>; patchwork-lst@xxxxxxxxxxxxxx; Rob Herring ><robh+dt@xxxxxxxxxx>; dl-linux-imx <linux-imx@xxxxxxx>; Fabio Estevam ><fabio.estevam@xxxxxxx>; A.s. Dong <aisheng.dong@xxxxxxx>; >linux-arm-kernel@xxxxxxxxxxxxxxxxxxx >Subject: Re: [PATCH v2 3/4] arm64: add support for i.MX8M EVK board > >Am Freitag, den 23.02.2018, 16:30 +0100 schrieb Juergen Borleis: >> On Friday 23 February 2018 16:03:53 Shawn Guo wrote: >> > On Thu, Feb 01, 2018 at 07:31:25PM +0100, Lucas Stach wrote: >> > > +&usdhc1 { >> > > + pinctrl-names = "default", "state_100mhz", "state_200mhz"; >> > > + pinctrl-0 = <&pinctrl_usdhc1_cd_reset>, >> <&pinctrl_usdhc1_clk_strobe>, >> > > + <&pinctrl_usdhc1_data>; >> > > + pinctrl-1 = <&pinctrl_usdhc1_cd_reset>, >> > > + <&pinctrl_usdhc1_clk_strobe_100mhz>, >> > > + <&pinctrl_usdhc1_data_100mhz>; >> > > + pinctrl-2 = <&pinctrl_usdhc1_cd_reset>, >> > > + <&pinctrl_usdhc1_clk_strobe_200mhz>, >> > > + <&pinctrl_usdhc1_data_200mhz>; >> > > + vqmmc-supply = <&sw4_reg>; >> > > + bus-width = <8>; >> > > + non-removable; >> > > + no-sd; >> > > + no-sdio; >> > > + status = "okay"; >> > > +}; >> > EMMC do not need cd pin, and I notice that pinctrl_usdhc1_cd_reset also contains a usdhc2 pad, this is wrong. So please remove pinctrl_usdhc1_cd_reset. EMMC I/O voltage is fixed to 1.8v so I think no need to add vqmmc-supply, can remove this property here. For pinctrl_usdhc1_clk_strobe, clock pad need to be pull down, otherwise you will meet data crc error in hs400 mode. Best Regards, Bough Chen >> > I'm not sure it can be enabled right now. Per my testing, eMMC is >> not >> > working yet. >> > >> > [ 0.879756] mmc0: Switching to 3.3V signalling voltage failed [ >> > 0.913587] mmc0: SDHCI controller on 30b40000.usdhc >> [30b40000.usdhc] >> > using ADMA ... >> > [ 1.007628] mmc0: switch to high-speed from hs200 failed, err:- >> 110 >> > [ 1.013873] mmc0: error -110 whilst initialising MMC card [ >> > 1.020639] mmc0: Switching to 3.3V signalling voltage failed ... >> > [ 1.132462] mmc0: switch to high-speed from hs200 failed, err:- >> 110 >> > [ 1.138674] mmc0: error -110 whilst initialising MMC card [ >> > 1.145394] mmc0: Switching to 3.3V signalling voltage failed [ >> > 1.268367] mmc0: switch to high-speed from hs200 failed, err:- >> 110 >> > [ 1.274576] mmc0: error -110 whilst initialising MMC card [ >> > 1.281291] mmc0: Switching to 3.3V signalling voltage failed [ >> > 1.440708] mmc0: switch to high-speed from hs200 failed, err:- >> 110 >> > [ 1.446919] mmc0: error -110 whilst initialising MMC card >> > >> > Or am I missing anything? >> >> Property "no-1-8-v;" if no 1.8 V is available? > >The issue is the other way around: the eMMC is hardwired to 1.8V IO voltage >(which is fine per eMMC spec), so it can't switch to 3.3V mode. > >Regards, >Lucas ��.n��������+%������w��{.n����z�{��ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f