mirror of
https://xff.cz/git/u-boot/
synced 2025-09-29 22:41:17 +02:00
dm: Add a new CPU init function which can use driver model
Since driver model is set up after arch_cpu_init(), that function cannot use drivers. Add a new arch_cpu_init_dm() function which is called immediately after driver model is ready, and can reference devices. This can be used to probe essential devices for the CPU. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
This commit is contained in:
@@ -815,6 +815,11 @@ __weak int reserve_arch(void)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
__weak int arch_cpu_init_dm(void)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
static init_fnc_t init_sequence_f[] = {
|
static init_fnc_t init_sequence_f[] = {
|
||||||
#ifdef CONFIG_SANDBOX
|
#ifdef CONFIG_SANDBOX
|
||||||
setup_ram_buf,
|
setup_ram_buf,
|
||||||
@@ -835,6 +840,7 @@ static init_fnc_t init_sequence_f[] = {
|
|||||||
fdtdec_check_fdt,
|
fdtdec_check_fdt,
|
||||||
#endif
|
#endif
|
||||||
initf_dm,
|
initf_dm,
|
||||||
|
arch_cpu_init_dm,
|
||||||
#if defined(CONFIG_BOARD_EARLY_INIT_F)
|
#if defined(CONFIG_BOARD_EARLY_INIT_F)
|
||||||
board_early_init_f,
|
board_early_init_f,
|
||||||
#endif
|
#endif
|
||||||
|
@@ -252,6 +252,17 @@ static inline int print_cpuinfo(void)
|
|||||||
int update_flash_size(int flash_size);
|
int update_flash_size(int flash_size);
|
||||||
int arch_early_init_r(void);
|
int arch_early_init_r(void);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* arch_cpu_init_dm() - init CPU after driver model is available
|
||||||
|
*
|
||||||
|
* This is called immediately after driver model is available before
|
||||||
|
* relocation. This is similar to arch_cpu_init() but is able to reference
|
||||||
|
* devices
|
||||||
|
*
|
||||||
|
* @return 0 if OK, -ve on error
|
||||||
|
*/
|
||||||
|
int arch_cpu_init_dm(void);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Reserve all necessary stacks
|
* Reserve all necessary stacks
|
||||||
*
|
*
|
||||||
|
Reference in New Issue
Block a user