diff options
author | Simon Glass <sjg@chromium.org> | 2016-11-13 14:21:58 -0700 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2016-12-02 20:53:19 -0700 |
commit | 2f11cd9121658b65a1d0789b37f290b207993a34 (patch) | |
tree | c90d05480e74767fefc3b1ba0e855070a3a5c977 /common/spl/spl_dfu.c | |
parent | a9401b2bc93a750d1566174b18d23bcdc2a45b7b (diff) | |
download | u-boot-imx-2f11cd9121658b65a1d0789b37f290b207993a34.zip u-boot-imx-2f11cd9121658b65a1d0789b37f290b207993a34.tar.gz u-boot-imx-2f11cd9121658b65a1d0789b37f290b207993a34.tar.bz2 |
dm: core: Handle global_data moving in SPL
When CONFIG_SPL_STACK_R is enabled, and spl_init() is called before
board_init_r(), spl_relocate_stack_gd() will move global_data to a new
place in memory. This affects driver model since it uses a list for the
uclasses. Unless this is updated the list will become invalid. When
looking for a non-existent uclass, such as when adding a new one, the loop
in uclass_find() may continue forever, thus causing a hang.
Add a function to correct this rather obscure bug.
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'common/spl/spl_dfu.c')
0 files changed, 0 insertions, 0 deletions