[Linux]u-boot_2014移植(六)支持DM9000网卡和设置环境变量分区
[Linux]u-boot_2014移植(六)支持DM9000网卡和设置环境变量分区
艾恩凝
2021/6/5
支持DM9000网卡
smdk2440.h
取消
1#define CONFIG_CS8900 /* we have a CS8900 on-board /
2#define CONFIG_CS8900_BASE 0x19000300
3#define CONFIG_CS8900_BUS16 / the Linux driver does accesses as shorts */
添加
1#define CONFIG_DRIVER_DM9000
2#define CONFIG_DM9000_BASE 0x20000000
3#define DM9000_IO CONFIG_DM9000_BASE
4#define DM9000_DATA (CONFIG_DM9000_BASE + 4)
5#define CONFIG_DM9000_O_SROM
修改ip地址,改成自己需要的
1#define CONFIG_NETMASK 255.255.240.0
2#define CONFIG_IPADDR 172.6.3.85
3#define CONFIG_SERVERIP 172.6.3.65
4#define CONFIG_ETHADDR 00:0c:28:3d🇪🇪f4
smdk2440.c
在**board_eth_init()**函数中增加:
1#ifdef CONFIG_DRIVER_DM9000
2rc = dm9000_initialize(bis);
3#endif
设置环境变量
smdk2440.h
添加
1#define CONFIG_BOOTARGS "console=ttySAC0 root=/dev/mtdblock3"
2#define CONFIG_BOOTCOMMAND "nand read 30000000 kernel;bootm 30000000"
3
4#define CONFIG_ENV_IS_IN_NAND
5#define CONFIG_ENV_OFFSET 0x40000
6#define CONFIG_ENV_SIZE 0x20000
7#define CONFIG_ENV_RANGE CONFIG_ENV_SIZE
如下图
最后添加
1/***
2* 默认分区
3*/
4#define CONFIG_CMD_MTDPARTS
5#define CONFIG_MTD_DEVICE
6#define CONFIG_MTD_PARTITIONS
7#define MTDIDS_DEFAULT "nand0=jz2440 V3-0"
8#define MTDPARTS_DEFAULT \
9 "mtdparts=jz2440 V3-0:256k(bootloader)," \
10 "128k(params),"\
11 "2m(kernel)," \
12 "-(rootfs)"
13
smdk2440.c
在smdk2410.c的board_init()中,修改bi_arch_number为MACH_TYPE_S3C2440
end
目前可以支持网卡,环境变量也设置好,同时分区也分好了
u-boot移植系列目录
上一篇[Linux]u-boot_2014移植(五)支持NOR_Flash Nand_Flash
下一篇[Linux]u-boot_2014移植(七)支持yaffs2并易用性修裁剪
吾心信其可行,
则移山填海之难,
终有成功之日!
——孙文
则移山填海之难,
终有成功之日!
——孙文
评论
0 评论