On 10/12/20 5:35 AM, Simon Glass wrote: > Hi Marek, > > On Sun, 11 Oct 2020 at 10:03, Marek Vasut <marek.va...@gmail.com> wrote: >> >> Add another flag to the DM core which could be assigned to drivers and >> which makes those drivers call their remove callbacks last, just before >> booting OS and after all the other drivers finished with their remove >> callbacks. This is necessary for things like clock drivers, where the >> other drivers might depend on the clock driver in their remove callbacks. >> Prime example is the mmc subsystem, which can reconfigure a card from HS >> mode to slower modes in the remove callback and for that it needs to >> reconfigure the controller clock.
[...] >> arch/arm/lib/bootm.c | 1 + >> board/Marvell/octeontx2/board.c | 4 ++-- >> drivers/core/device-remove.c | 11 ++++++++--- >> drivers/core/root.c | 2 ++ >> drivers/core/uclass.c | 32 +++++++++++++++++++++++++------- >> include/dm/device.h | 4 ++++ >> include/dm/uclass-internal.h | 3 ++- >> test/dm/core.c | 21 ++++++++++++--------- >> test/dm/test-main.c | 30 +++++++++++++++++------------- >> 9 files changed, 73 insertions(+), 35 deletions(-) > > I remember seeing a similar patch before. Do you have a change log? Nothing changed since except for the octeon fix, I still require this patch in to correctly stop SD/MMC controller and then the clock before booting Linux.