Commit b0eae27fce90f00f407961c5907e0e21cf47ef18

Authored by Ye Li
1 parent f0a7dde8eb

MLK-19726-2 arm: Don't remove all devices when power domain driver is enabled

Because we power off all devices in board_quiesce_devices which is prior then
executing dm_remove_devices_flags. So any access to HW in dm_remove_devices_flags
will cause problem.
However, some drivers like ethernet which implements the pre_remove callback is always
called without any flags check, and this finally accesses FEC controller.

Since we don't need to remove all devices in u-boot before starting kernel, disable
this feature when power domain is enabled.

Signed-off-by: Ye Li <ye.li@nxp.com>
(cherry picked from commit 741f2ea182bf293d8270bdc4a217a96db22c414c)

Showing 1 changed file with 2 additions and 0 deletions Side-by-side Diff

arch/arm/lib/bootm.c
... ... @@ -109,7 +109,9 @@
109 109 * This may be useful for last-stage operations, like cancelling
110 110 * of DMA operation or releasing device internal buffers.
111 111 */
  112 +#ifndef CONFIG_POWER_DOMAIN
112 113 dm_remove_devices_flags(DM_REMOVE_ACTIVE_ALL);
  114 +#endif
113 115  
114 116 cleanup_before_linux();
115 117 }