At present if device_remove() decides that the device should not actually be removed, it still calls the uclass pre_remove() method and powers the device down.
Signed-off-by: Simon Glass <s...@chromium.org> --- (no changes since v1) drivers/core/device-remove.c | 59 ++++++++++++++++++++++++------------ include/dm/device-internal.h | 9 +++++- test/dm/virtio.c | 4 ++- 3 files changed, 51 insertions(+), 21 deletions(-) Applied to u-boot-dm, thanks!