[PATCH] arm64: dts: rockchip: Assign a fixed index to mmc devices on rk3399-roc-pc boards.

Robin Murphy robin.murphy at arm.com
Wed Nov 4 07:17:57 EST 2020


On 2020-11-04 11:15, Markus Reichl wrote:
> Hi Heiko,
> 
> Am 04.11.20 um 11:51 schrieb Heiko Stübner:
>> Hi Markus,
>>
>> Am Mittwoch, 4. November 2020, 10:49:45 CET schrieb Markus Reichl:
>>> Recently introduced async probe on mmc devices can shuffle block IDs.
>>> Pin them to fixed values to ease booting in evironments where UUIDs
>>> are not practical. Use newly introduced aliases for mmcblk devices 
>>> from [1].
>>>
>>> [1]
>>> https://patchwork.kernel.org/patch/11747669/
>>>
>>> Signed-off-by: Markus Reichl <m.reichl at fivetechno.de>
>>> ---
>>>  arch/arm64/boot/dts/rockchip/rk3399-roc-pc.dtsi | 5 +++++
>>>  1 file changed, 5 insertions(+)
>>>
>>> diff --git a/arch/arm64/boot/dts/rockchip/rk3399-roc-pc.dtsi 
>>> b/arch/arm64/boot/dts/rockchip/rk3399-roc-pc.dtsi
>>> index e7a459fa4322..bc9482b59428 100644
>>> --- a/arch/arm64/boot/dts/rockchip/rk3399-roc-pc.dtsi
>>> +++ b/arch/arm64/boot/dts/rockchip/rk3399-roc-pc.dtsi
>>> @@ -13,6 +13,11 @@ / {
>>>      model = "Firefly ROC-RK3399-PC Board";
>>>      compatible = "firefly,roc-rk3399-pc", "rockchip,rk3399";
>>>
>>> +    aliases {
>>> +        mmc0 = &sdmmc;
>>> +        mmc1 = &sdhci;
>>> +    };
>>> +
>>
>> Any reason for this odering?
> 
> Without pinning roc-pc mostly booted as
> mmcblk0 = sdmmc = µSD
> mmcblk1 = sdhci = eMMC
> so I kept this behaviour in aliases
> 
> roc-pc-mezzanine with populated SDIO-M2-slot booted
> mmc0 = sdio = (no mmcblk)
> mmcblk1 = sdmmc = µSD
> mmcblk2 = sdhci = eMMC

FWIW that's also how my NanoPC-T4 behaves. Given that it's the order 
they appear in the DT, not too surprising ;)

Robin.

> With my aliases both boards behave the same now and the optional SDIO slot
> goes out of the way to mmc2.
> 
>>
>> I.e. some previous incarnations had it ordered as (emmc, mmc, sdio).
>> This is also true for the ChromeOS out-of-tree usage of those, the
>> rk3399 dts in the chromeos-4.4 tree also orders this as sdhci, sdmmc, 
>> sdio.
> 
> The boards from my zoo (exynos, rk3399) mostly come up with SD-card as mmc0
> and eMMC as mmc1 in mainline as opposed in some vendor kernels.
> but I have no objection to set it the other way round if this is more 
> common
> with rk3399 boards.
> 
>>
>> And I guess a further question would be when we're doing arbitary 
>> orderings
>> anyway, why is this not in rk3399.dtsi ;-) ?
> 
> I restricted the ordering to the boards I have, not to confuse other 
> established
> use cases, but if a standard ordering is desired this can go to 
> rk3399.dtsi.
> 
>>
>>
>> Heiko
>>
>>
> 
> Gruß,



More information about the Linux-rockchip mailing list