关于uboot的一些优化

本人的开发环境是u-boot-1.1.6版本,fedora 9+虚拟机的linux系统,开发板cpuat9263ek的板子,以下是本人在试验过程中总结出来的步骤,

(1)修改/u-boot-1.1.6/common/main.c269udelay (10000);改为udelay (10);

(2)修改/u-boot-1.1.6/lib_arm/board.c459udelay(100000);改为udelay(10);462udelay(100000);改为udelay(10);

(3)经研究发现,严重影响速度的就一句话,即/u-boot-1.1.6/drivers/nand/nand_base.c2634 int nand_scan (struct mtd_info *mtd, int maxchips)这个函数的最后一句return this->scan_bbt (mtd);我屏蔽掉了这句,减少了4秒。改为return 0

(4) /u-boot-1.1.6.lcd/include/configs/at91sam9263ek.h

修改62#define CONFIG_BOOTDELAY   3改为 #define CONFIG_BOOTDELAY   0

修改启动时bootdelay的时间

(5) /u-boot-1.1.6/include/configs/at91sam9263ek.h这个程序里面269#define AT91C_ETH_TIMEOUT          30000改为#define AT91C_ETH_TIMEOUT         3无法启动

(6) 严重影响速度的是/u-boot-1.1.6/board/at91sam9263ek/dm9161a.c这个函数的do….while语句177

do {

              

              at91_EmacReadPhy(p_mac, AT91C_PHY_ADDR, DM9161_BMSR, &IntValue);

              at91_EmacReadPhy(p_mac, AT91C_PHY_ADDR, DM9161_BMSR, &IntValue);

      

原文地址:https://www.cnblogs.com/skyred99/p/5683844.html