Somehow I missed that ipuv3_fb_shutdown() can be called for inactive
devices, resulting in invalid memory access and preventing the kernel
from booting.
Fixes: 32da6773f62 ("video: imx: ipuv3: refactor to use dm-managed state")
Signed-off-by: Brian Ruley <[email protected]>
---
Changes in v2:
- New
arch/arm/mach-imx/cpu.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/arch/arm/mach-imx/cpu.c b/arch/arm/mach-imx/cpu.c
index 20c741283cd..8af45e14707 100644
--- a/arch/arm/mach-imx/cpu.c
+++ b/arch/arm/mach-imx/cpu.c
@@ -310,7 +310,8 @@ void arch_preboot_os(void)
/* disable video before launching O/S */
rc = uclass_find_first_device(UCLASS_VIDEO, &dev);
while (!rc && dev) {
- ipuv3_fb_shutdown(dev);
+ if (device_active(dev))
+ ipuv3_fb_shutdown(dev);
uclass_find_next_device(&dev);
}
#endif
--
2.39.5