Re: [PATCH] arm64: dts: ls1028a: make the eMMC and SD card controllers use fixed indices

From: Michael Walle
Date: Tue Nov 24 2020 - 03:03:35 EST


Am 2020-11-24 08:41, schrieb Y.b. Lu:
Hi Vladimir,

-----Original Message-----
From: Vladimir Oltean <vladimir.oltean@xxxxxxx>
Sent: Friday, November 20, 2020 5:30 PM
To: Y.b. Lu <yangbo.lu@xxxxxxx>
Cc: Shawn Guo <shawnguo@xxxxxxxxxx>; Leo Li <leoyang.li@xxxxxxx>; Rob
Herring <robh+dt@xxxxxxxxxx>; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx;
devicetree@xxxxxxxxxxxxxxx; Adrian Hunter <adrian.hunter@xxxxxxxxx>; Ulf
Hansson <ulf.hansson@xxxxxxxxxx>; linux-mmc@xxxxxxxxxxxxxxx;
linux-kernel@xxxxxxxxxxxxxxx; Ashish Kumar <ashish.kumar@xxxxxxx>;
Michael Walle <michael@xxxxxxxx>
Subject: Re: [PATCH] arm64: dts: ls1028a: make the eMMC and SD card
controllers use fixed indices

On Fri, Nov 20, 2020 at 02:04:02AM +0000, Y.b. Lu wrote:
> Hi Vladimir,
>
> I have already upstreamed a patch for all affected layerscape boards.
>
https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux.git/commit/?
h=imx/dt64&id=342ab37ecaf8c1b10dd3ca9a1271db29a6af0705
>
> Please check whether it works for you.

Thanks, one can tell that I haven't done my due diligence of checking
Shawn's tree first. I'll cherry-pick that patch and carry on with my
work.

However, the fact still remains that Michael has expressed his opinion
regarding mmcblk0 vs mmcblk1. Do you think that we could make the
aliases a per-board option instead of per-SoC? Consider that there might
even be boards that only use SD card. It would be strange for the block
device in that case to be called /dev/mmcblk1.

I don't think it's a problem in board dts to define board specific
thing, like re-defining alias, and disabling any IP it not using.

First, why would you put it in the architecture include anyway? That
is really board-specific. That is like you would say, we enable all
devices and a board could potentially disable it. TBH it seems that
this will fit your reference boards and you don't care about the
other ones which uses that include.

And as Vladimir pointed out, what do you do if you just have the eMMC
on the LS1028A. It will be mmcblk1 unless you do something like the
following in the board dts:

mmc0 = &esdhc;
/delete-property/ mmc1;

That is really cumbersome, isnt it?

-michael