From: Stefan Roese Date: Mon, 20 Mar 2017 11:51:50 +0000 (+0100) Subject: arm: bootm: Add dm_remove_devices_flags() call to announce_and_cleanup() X-Git-Tag: v2017.05-rc2~121^2~2 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=1b8220aa2ab09d936c427dae84b40edf51c8b194;p=oweals%2Fu-boot.git arm: bootm: Add dm_remove_devices_flags() call to announce_and_cleanup() This patch adds a call to dm_remove_devices_flags() to announce_and_cleanup() so that drivers that have one of the removal flags set (e.g. DM_FLAG_ACTIVE_DMA_REMOVE) in their driver struct, may do some last-stage cleanup before the OS is started. Signed-off-by: Stefan Roese Reviewed-by: Simon Glass --- diff --git a/arch/arm/lib/bootm.c b/arch/arm/lib/bootm.c index 8125cf023f..426bee6da5 100644 --- a/arch/arm/lib/bootm.c +++ b/arch/arm/lib/bootm.c @@ -14,6 +14,8 @@ #include #include +#include +#include #include #include #include @@ -91,6 +93,13 @@ static void announce_and_cleanup(int fake) board_quiesce_devices(); + /* + * Call remove function of all devices with a removal flag set. + * This may be useful for last-stage operations, like cancelling + * of DMA operation or releasing device internal buffers. + */ + dm_remove_devices_flags(DM_REMOVE_ACTIVE_ALL); + cleanup_before_linux(); }