[Linux 底层]U-boot调试命令使用技巧

如果在uboot阶段调试驱动,可以充分利用uboot已有的资源,这样比较方便,也能加速开发的速度,站在巨人的肩膀上做事,才能事半功倍。

1、uboot提供了操作命令覆盖了

2、Nand Flash的操作,读写,擦除,以及状态打印;

3、DDR的操作,内存字节打印;

4、网络的操作,ping命令,ftp下载功能,命令码详见,《[Linux 底层]U-boot烧录脚本介绍SecureCRT》

=> ping 192.168.2.108
5、MAC控制器的操作,MII 可以读取MAC控制器的数据,和改变MAC控制的数据;

//双网卡,激活当前网卡设置 ethprime=ethernet@f0028000,当前网卡

=> setenv ethprime ethernet@f0028000        //eth0 gmac
=> setenv ethprime ethernet@f802c000        //eth1 emac

=> mii device ethernet@f802c000            //MII接口切换PHY
=> mii device ethernet@f0028000        

=> mii device                    //查询当前MII接口使能那个PHY
MII devices: 'ethernet@f0028000' 'ethernet@f802c000' 
Current device: 'ethernet@f802c000'

=>mii read 0 3                //使用MII接口读取 eht0的寄存器地址3的信息

=>mii read 1 3                //使用MII接口读取 eht1的寄存器地址3的信息

uboot命令可以正确读取PHY信息

使用MII 接口读取PHY信息

=> mii info
MII_PHYSID2 @ 0x0 = 0xb8a0
PHY_PHYIDR[1,2] @ 0x0 = 0x0181b8a0
PHY 0x00: OUI = 0x606E, Model = 0x0A, Rev = 0x00,  10baseT, HDX

6、更改启动参数

bootargs=console=ttyS0,115200 earlyprintk mtdparts=atmel_nand:256k(bootstrap)ro,768k(uboot)ro,256K(env_redundant),256k(env),512k(dtb),6M(kernel)ro,-(rootfs) rootfstype=ubifs ubi.mtd=6 root=ubi0:rootfs
bootcmd=nand read 0x21000000 0x180000 0x80000;nand read 0x22000000 0x200000 0x600000;bootz 0x22000000 - 0x21000000

7、环境变量设置及查看

//环境变量
=> pri
arch=arm
baudrate=115200
board=sama5d3_xplained
board_name=sama5d3_xplained
bootargs=console=ttyS0,115200 earlyprintk mtdparts=atmel_nand:256k(bootstrap)ro,768k(uboot)ro,256K(env_redundant),256k(env),512k(dtb),6M(kernel)ro,-(rootfs) rootfstype=ubifs ubi.mtd=6 root=ubi0:rootfs
bootcmd=nand read 0x21000000 0x180000 0x80000;nand read 0x22000000 0x200000 0x600000;bootz 0x22000000 - 0x21000000
bootdelay=3
cpu=armv7
eth1addr=EE:AB:C1:D2:E6:C6
ethact=ethernet@f802c000
ethaddr=EE:AB:C1:D2:E6:C6
fdtcontroladdr=2fb16b48
ipaddr=192.168.1.100
ipaddr1=192.168.2.100
serverip=192.168.1.108
soc=at91
stderr=serial@ffffee00
stdin=serial@ffffee00
stdout=serial@ffffee00
vendor=atmel

8、EMMC的调试命令,可以查看驱动是否成功,可以打印出大小;

9、使用help命令可以查看uboot支持哪些命令,列表会打印出来;

10、命令用法,也可以通过help获取,比如:命令行$mii help

关注微信公众号,回复“uboot调试命令”,免费下载uboot打印日志及命令说明
[Linux 底层]U-boot调试命令使用技巧

上一篇:JAVA多线程(八):线程的通信基础


下一篇:Navicat for MySQL连接出错:1251