设为首页 加入收藏

TOP

linaro Android 4.0.4 for FS100 - DM9000移植
2014-11-24 11:52:44 来源: 作者: 【 】 浏览:1
Tags:linaro Android 4.0.4 for FS100 DM9000 移植

1. 平台代码修改


vim arch/arm/mach-s5pc100/mach-smdkc100.c


2. 添加需要的头文件


#if defined (CONFIG_DM9000)


#include


#include


#endif


3. 平台设备添加


// CMD为低,读写地址寄存器, CMD为高,读写数据寄存器


// 访问dm9000内部寄存器时,先将cmd拉低,向dm9000寄存器里写地址,然后,将cmd拉高,读写dm9000数据寄存器里的数据


#if defined(CONFIG_DM9000)


// MichaelTang add start
static struct resource dm9000_resources[] = {
[0] = {
.start = 0x88000000, // 地址线
.end = 0x88000000 + 0x4 - 1,
.flags = IORESOURCE_MEM,
},
[1] = {
.start = 0x88000000 + 0x4, // 数据线
.end = 0x88000000 + 0x8 - 1,
.flags = IORESOURCE_MEM,
},
[2] = {
.start = S5P_IRQ_VIC0(10),
.end = S5P_IRQ_VIC0(10),
.flags = IORESOURCE_IRQ | IRQ_TYPE_LEVEL_HIGH, //申请中断及触发方式
},
};



static struct dm9000_plat_data s5pc100_dm9000_platdata = { // 设置网卡mac物理地址
.flags = DM9000_PLATF_16BITONLY,
.dev_addr[0] = 0x0,
.dev_addr[1] = 0x0,
.dev_addr[2] = 0x11,
.dev_addr[3] = 0x22,
.dev_addr[4] = 0x33,
.dev_addr[5] = 0x44,
};
static struct platform_device s3c_device_dm9ks = { // 注册设备结构体
.name = "dm9000",
.id = -1,
.num_resources = ARRAY_SIZE(dm9000_resources),
.resource = dm9000_resources,
.dev = {
.platform_data = &s5pc100_dm9000_platdata,
}
};
// MichaelTang add end



#endif


4. 将dm9000添加到平台设备列表中


添加位置: smdkc100_devices[]中



#if defined (CONFIG_DM9000)



// Michaeltang add
&s3c_device_dm9ks,


// MichaelTang add end



#endif


5. 配置内核


$ make menuconfig


6. 网络配置


将dm9000配置编译进内核,执行make zImage,拷贝到tftp目录中,通过tftp加载测试内核。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Android 9PNG图片制作 下一篇移植Andorid4.0.4到FS100开发板 -..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Redis on AWS:Elast (2025-12-27 04:19:30)
·在 Spring Boot 项目 (2025-12-27 04:19:27)
·使用华为开发者空间 (2025-12-27 04:19:24)
·Getting Started wit (2025-12-27 03:49:24)
·Ubuntu 上最好用的中 (2025-12-27 03:49:20)