Re: [PATCH] ARM: dts: imx6qdl-sabre: Add mmc aliases

From: Ahmad Fatoum
Date: Mon Nov 28 2022 - 03:43:10 EST


Hello Detlev,
Hello Shawn,

On 11.11.22 20:35, Detlev Casanova wrote:
> On Thursday, November 10, 2022 9:52:32 P.M. EST Shawn Guo wrote:
>> On Fri, Oct 28, 2022 at 10:18:11AM -0400, Detlev Casanova wrote:
>>> If not specified, the mmc0 and mmc1 devices will be the devices
>>> mmc@2190000 and mmc@2194000, which are in disabled state on the iMX.6
>>> Sabrelite devices.
>>>
>>> The actual SD card reader devices are the ones at mmc@2198000 and
>>> mmc@219c000.
>>>
>>> Set aliases to use the correct mmc devices order.
>>
>> Is this something never worked or a regression? For the latter, we may
>> need a Fixes tag?
>
> These were apparently never set in the kernel device-tree and added manually
> in u-boot when dts are synced.
>
> Because most distributions use UUIDs in fstab, it is not a big problem in
> Linux, just that the SD card is called /dev/mmcblk2. I would say that this has
> always been an issue in Linux.

We already have aliases in imx6qdl.dtsi. Existing Installations that hardcode
root=mmcblk2 _will_ be broken by this change. Installations that are fixed
by this change have never worked properly, because prior to commit fa2d0aa96941
("mmc: core: Allow setting slot index via device tree alias"), it depended
on probe order and/or whether a card was present.

Whether SD/eMMC comes first or if they start at 0 or 2 is just cosmetic.
The alias order corresponds with the order in the data sheet and that's a
good default and I see no reason to change this here and risk breakage.

I thus don't think this patch should go mainline.

Thanks,
Ahmad

>
>> Shawn
>>
>>> Signed-off-by: Detlev Casanova <detlev.casanova@xxxxxxxxxxxxx>
>>> ---
>>>
>>> arch/arm/boot/dts/imx6qdl-sabrelite.dtsi | 5 +++++
>>> 1 file changed, 5 insertions(+)
>>>
>>> diff --git a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
>>> b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi index
>>> 22f8e2783cdf..12573e1f917c 100644
>>> --- a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
>>> +++ b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
>>> @@ -14,6 +14,11 @@ chosen {
>>>
>>> stdout-path = &uart2;
>>>
>>> };
>>>
>>> + aliases {
>>> + mmc0 = &usdhc3;
>>> + mmc1 = &usdhc4;
>>> + };
>>> +
>>>
>>> memory@10000000 {
>>>
>>> device_type = "memory";
>>> reg = <0x10000000 0x40000000>;
>
>
>
>
>
>

--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |