[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