http://blog.chinaunix.net/u1/59990/showart_472030.html
u-boot本身有cs8900网卡驱动程序,所以需要修改的地方不多。由于数据通过总线传送,所以要注意地址空间的配置和总线的配置。
1) 修改/include/configs/smdk2410.h文件:
#define CONFIG_ETHADDR 08:00:3e:26:0a:5b #define CONFIG_IPADDR 192.168.1.109 #define CONFIG_SERVERIP 192.168.1.101
|
CONFIG_IPADDR 宏是你开发板的IP地址。tftp client
CONFIG_SERVERIP 宏是你安装tftp server的系统的IP确定网卡的基地址,我的开发板CS8900接在nGCS3上,而且是A24引脚为高时使能CS8900A的IO模式,所以代码为:
#define CONFIG_DRIVER_CS8900 1 /* we have a CS8900 on-board */ #define CS8900_BASE 0x19000300 #define CS8900_BUS16 1 /* the Linux driver does accesses as shorts */
|
2) BWSCON寄存器的设置,BANKCON3寄存器的设置
由于网卡占用的是nGCS3之上地址,所以需要设置/board/smdk2410/lowlevel.S文件中相应寄存器的值:
#define B3_BWSCON (DW16 + WAIT + UBLB)
#define B3_Tacs 0x0 /* 0clk */ #define B3_Tcos 0x3 /* 4clk */ #define B3_Tacc 0x7 /* 14clk */ #define B3_Tcoh 0x1 /* 1clk */ #define B3_Tah 0x0 /* 0clk */ #define B3_Tacp 0x3 /* 6clk */ #define B3_PMC 0x0 /* normal */
|
3) 设置完毕后可以重新编译。
4) tftp测试:
阅读(1980) | 评论(0) | 转发(0) |