/*u-boot.bin
board.c ---> board_init_f()函数的作用
1、计算 addr 即 board_init_r(gd_t *id, ulong dest_addr)的第二个参数;
addr = CONFIG_SYS_SDRAM_BASE + gd->ram_size; (gd->ram_size在smart210.c中被初始化)
这个参数的用处是: 计算堆的起始地址,初始化堆
malloc_start = dest_addr - TOTAL_MALLOC_LEN;
mem_malloc_init (malloc_start, TOTAL_MALLOC_LEN);
如果定义了CONFIG_LOGBUFFER
则 addr -= LOGBUFF_RESERVE
如果定义了CONFIG_PRAM
则 addr -= reserve protected RAM
如果没有关闭I-cache和D-cache
则还要预留 TLB table空间
addr &= ~(4096 - 1);
使内存空间4K对齐
如果定义了CONFIG_LCD
则给framebuffer赋值
还要给uboot代码、数据、BSS预留空间
所以 addr -= gd->mon_len;
*/