U-BOOT启动分析

1. u-boot/cpu/armxx/start.S
2. u-boot/cpu/armxx/lowlevel_init.S
3. u-boot/lib_arm/board.c   ... start_armboot()
 init_fnc_t *init_sequence[] = {
  cpu_init,  /* basic cpu dependent setup */    u-boot/cpu/armxx/cpu.c
  board_init,  /* basic board dependent setup */  u-boot/board/boardxx/board_init.c
  interrupt_init,  /* set up exceptions */            u-boot/cpu/armxx/interrupt_init.c
  env_init,  /* initialize environment */    u-boot/common/env_xx.c
  init_baudrate,  /* initialze baudrate settings */  u-boot/lib_arm/board.c
  serial_init,  /* serial communications setup */  u-boot/cpu/armxx/board_xx/serial.c
  console_init_f,  /* stage 1 init of console */      u-boot/common/console.c
  display_banner,  /* say that we are here */
  print_cpuinfo,  /* display cpu info (and speed) */
  checkboard,  /* display board info */
  init_func_i2c,
  dram_init,  /* configure available RAM banks */
  display_dram_config,
  NULL,
};
4. main_loop()   u-boot/common/main.c

你可能感兴趣的:(U-BOOT启动分析)