
On 10/12/20 5:35 AM, Simon Glass wrote:
Hi Marek,
On Sun, 11 Oct 2020 at 10:03, Marek Vasut marek.vasut@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.