Re: [PATCH] mmc: sdhci-sprd: remove prefer asynchronous probe

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Dec 7, 2022 at 8:50 PM Ulf Hansson <ulf.hansson@xxxxxxxxxx> wrote:
>
> On Fri, 2 Dec 2022 at 03:41, Wenchao Chen <wenchao.chen666@xxxxxxxxx> wrote:
> >
> > On Thu, Dec 1, 2022 at 6:41 PM Ulf Hansson <ulf.hansson@xxxxxxxxxx> wrote:
> > >
> > > On Thu, 1 Dec 2022 at 10:12, Wenchao Chen <wenchao.chen@xxxxxxxxxx> wrote:
> > > >
> > > > The prefer asynchronous probe affects the order of device probes.
> > >
> > > Is there a problem with this? If so, can you elaborate on what kind of problems?
> > >
> >
> > Hi Uffe
> > dts:
> > sdio0: sdio@71100000 {
> > ...
> > bus-width = <4>;
> > no-sdio;
> > no-mmc;
> > ...
> > }; // SD Host(Device: SD CARD)
> >
> > sdio3: sdio@71400000 {
> > ...
> > bus-width = <8>;
> > non-removable;
> > no-sdio;
> > no-sd;
> > ...
> > }; // eMMC Host(Device: eMMC)
> >
> > According to the order of DTS: sdio0: sdio@71100000 is MMC0, sdio3:
> > sdio@71400000 is MMC1.
> > Log:
> > [    1.714617][   T11] mmc1: SDHCI controller on 71400000.sdio
> > [71400000.sdio] using ADMA 64-bit
> > [    1.715276][    T9] mmc0: SDHCI controller on 71100000.sdio
> > [71100000.sdio] using ADMA 64-bit
> > [    1.884525][   T75] mmc1: Host Software Queue enabled
> > [    1.890965][   T75] mmc1: new HS400 Enhanced strobe MMC card at address 0001
> >
> > But set prefer_asynchronous_probe, sometimes there will be sdio0:
> > sdio@71100000 is MMC1, sdio3: sdio@71400000 is MMC0.
> > Log:
> > [    1.619888][   T68] mmc0: SDHCI controller on 71400000.sdio
> > [71400000.sdio] using ADMA 64-bit
> > [    1.620534][    T9] mmc1: SDHCI controller on 71100000.sdio
> > [71100000.sdio] using ADMA 64-bit
> > [    1.792570][   T77] mmc0: Host Software Queue enabled
> > [    1.799532][   T77] mmc0: new HS400 Enhanced strobe MMC card at address 0001
>
> Neither the order of the nodes in DT or dropping
> PROBE_PREFER_ASYNCHRONOUS provides the guarantees that you suggest
> above. In fact, that has never been the case for eMMC/SD cards.
>
> >
> > We use emmc as rootfs (without ramfs or initfs), but with SD card
> > inserted and not inserted, the partition name of emmc is different, we
> > need to fix this partition name.
>
> If you can't use PARTUUID/UUID, which is certainly the preferred
> solution - you may also assign a fixed index mmcN to an MMC host
> controller and its corresponding mmcblk[n] devices, by defining an
> alias in the /aliases device tree node.
>

You're right.

        aliases {
...
               mmc0 = &sdio3;
               mmc1 = &sdio0;
...
        };

Thank you very much.

> [...]
>
> Kind regards
> Uffe



[Index of Archives]     [Linux Memonry Technology]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux