u-boot中的bdinfo命令

来源:互联网 发布:android开发网络框架 编辑:程序博客网 时间:2024/06/06 15:28

[u-boot: 2013.04]

[Author: Bo Shen <voice.shen@gmail.com>]

1. 使用

bdinfo: print board info structure.

其源代码:<common/cmd_bdinfo.c>

对于ARM架构,bdinfo打印信息包括:

  -- bd_t (前文件介绍:http://blog.csdn.net/voice_shen/article/details/8842057)的内容:

      -- bi_baudrate, bi_arch_number, bi_boot_params, bi_dram[i].start, bi_dram[i].size

      -- bi_arm_freq, bi_dsp_freq, bi_ddr_freq (这些是davinci SoC相关).

 -- 如果没有定义CONFIG_SYS_ICACHE_OFF和CONFIG_SYS_DCACHE_OFF, 则打印: tlb_addr.

  -- gd_t 中的部份内容:

      -- relocaddr, reloc_off, irq_sp, start_addr_sp, fb_base.


2. 这些值是什么时候得到的呢?

2.1 bi_baudrate

      对于ARM来说,首先在board_init_f --> init_sequence[] --> init_baudrate(),从环境变量中读取baudrate的值(如果没有,则使用CONFIG_BAUDRATE), 赋给gd->baudrate,最后在board_init_f中通过gd->bd->bi_baudrate=gd->baudrate得到。

2.2 bi_arch_number

      这个值是board相关,通常是在board相关代码中进行赋值的。

      对Atmel at91sam9m10g45ek board, 则是在<board/atmel/at91sam9m10g45ek/at91sam9m10g45ek.c>中进行赋值的。

      gd->bd->bi_arch_number = MACH_TYPE_AT91SAM9M10G45EK;

2.3 bi_boot_params

     这个值是board相关,通常在board相关代码中进行赋值的。

     对Atmel at91sam9m10g45ek board, 则是在<board/atmel/at91sam9m10g45ek/at91sam9m10g45ek.c>中进行赋值的。

    gd->bd->bi_boot_params = CONFIG_SYS_SDRAM_BASE + 0x100;


原创粉丝点击