Hi Ulf, Sorry for replying late. On 04/07/2016 10:07 PM, Ulf Hansson wrote: > On 7 April 2016 at 14:07, Jaehoon Chung <jh80.chung@xxxxxxxxxxx> wrote: >> On 04/07/2016 04:57 PM, Ulf Hansson wrote: >>> Commit 520bd7a8b415 ("mmc: core: Optimize boot time by detecting cards >>> simultaneously") causes regressions for some platforms. >>> >>> These platforms relies on fixed mmcblk device indexes, instead of >>> deploying the defacto standard with UUID/PARTUUID. In other words their >>> rootfs needs to be available at hardcoded paths, like /dev/mmcblk0p2. >>> >>> Such guarantees have never been made by the kernel, but clearly the above >>> commit changes the behaviour. More precisely, because of that the order >>> changes of how cards becomes detected, so do their corresponding mmcblk >>> device indexes. >>> >>> As the above commit significantly improves boot time for some platforms >>> (magnitude of seconds), let's avoid reverting this change but instead >>> restore the behaviour of how mmcblk device indexes becomes picked. >>> >>> By using the same index for the mmcblk device as for the corresponding mmc >>> host device, the probe order of mmc host devices decides the index we get >>> for the mmcblk device. >>> >>> For those platforms that suffers from a regression, one could expect that >>> this updated behaviour should be sufficient to meet their expectations of >>> "fixed" mmcblk device indexes. >>> >>> Another side effect from this change, is that the same index is used for >>> the mmc host device, the mmcblk device and the mmc block queue. That >>> should clarify their relationship. >> >> I have tested with this patch..but there also are side-effects. >> Exynos4 series has the two host controller..one is sdhci, one is dwmmc for eMMC. >> In this case, dwmmc controller is probed after sdhci controller. >> >> Then eMMC is always assigned to mmcblk1. > > Okay, let me follow up with some questions. > > 1) > What is the sdhci controller used for? Some of Exynos4 series have two MMC host controller. As i mentioned, one is sdhci, other is dwmmc. sdhci controller can be used for eMMC/SD/SDIO. (emmc, T-flash, WiFi) And dwmmc controller can be only used for eMMC. It can choose which controller user uses. In normal, i recommend the dwmmc controller is used for eMMC. (There are some reason..I/O performance, and functionality.) > > 2) > Are you seeing regressions for Exynos for this? I was under the > assumption that your vendor trees contained patches to deal with fixed > mmcblk ids? Actually not...but i need to check more..in vendor tress. > > 3) > You proposed [1] recently to use aliases in DT to support fixed mmcblk > ids. I do realize that as UUID/PARTUUID sometimes can be a bit > cumbersome to use for an embedded system. Using aliases via DT seems > like a very good option. To implement that on top of $subject patch > should be quite easy to fix (I am happy to help with it). Would that > address your concerns? I saw this patch was applied in your repository..So i will test with your tree. In normal case, i think it's not problem...but i remembered there is a rare case about removable case. I will try to test with all cases..:) Best Regards, Jaehoon Chung > >> >> I think it's not good that make another problem for solving something. >> It needs more discussion for this.. > > Thanks for testing and your comments! > > Kind regards > Uffe > > [1] > http://www.spinics.net/lists/linux-mmc/msg35980.html > > -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html