cs8900芯片是Cirrus Logic公司生产的一种局域网处理芯片,在嵌入式领域中使用非常常见。它的封装是100-pin TQFP,提供ISA总线接口,内部集成了EEPROM控制器、802.3MAC控制器、片内RAM、10BASE-T收发滤波器,支持IO和内存模式两种模式,可采用DMA方式与主机以8位和16位数据长度进行数据交换,一般在单片机中,使用了cs8900的8位接口模式。 cs8900网卡工作原理: cs8900与ARM芯片按照16位方式连接,网卡芯片复位后默认工作方...
by embededgood - Linux文档专区 - 2009-08-17 22:20:14 阅读(1157) 回复(0)
static unsigned short get_reg_init_bus (int regno) { /* force 16 bit busmode */ volatile unsigned char c; c = cs8900_BUS16_0; c = cs8900_BUS16_1; c = cs8900_BUS16_0; c = cs8900_BUS16_1; c = cs8900_BUS16_0; cs8900_PPTR = regno; return (unsigned short) cs8900_PDATA; } 驱动刚开始为什么要反复给C赋值呢? 而且赋值之后 C变量在整个驱动中再也没有使用过
cs8900 Ethernet chip not found?! *** ERROR: `ethaddr' not set 请问我在移植u-boot-1.20到s3c2440开发板的时候出现这样问题是怎么回事?
cs8900a驱动移植笔记 硬件环境:SBC-2410X开发板(CPU:S3C2410X) 内核版本:2.6.11.1 运行环境:Debian2.6.8 交叉编译环境:gcc-3.3.4-glibc-2.3.3 第一部分 网卡cs8900a驱动程序的移植 一、从网上将Linux内核源代码下载到本机上,并将其解压: #tar jxf linux-2.6.11.1.tar.bz2 二、打开内核顶层目录中的Makefile文件,这个文件中需要修改的内容包括以下两个方面。 (1...
硬件环境:SBC-2410X开发板(CPU:S3C2410X) 内核版本:2.6.11.1 运行环境:Debian2.6.8 交叉编译环境:gcc-3.3.4-glibc-2.3.3 第一部分 网卡cs8900a驱动程序的移植 一、从网上将Linux内核源代码下载到本机上,并将其解压: #tar jxf linux-2.6.11.1.tar.bz2 二、打开内核顶层目录中的Makefile文件,这个文件中需要修改的内容包括以下两个方面。 (1)指定目标平台。 移植前: ARCH?= $(SUBARCH) 移植后: ARCH ...
一. 根据原理图,确认网卡的地址和中断号 地址:0x19000000 中断号: EINT9 二. 修改drivers/net/cs89x0.c,指定cs8900a使用的资源 #elif defined(CONFIG_ARCH_S3C2410) #include #include3c2410/regs-mem.h> #define S3C24XX_PA_cs8900 0x19000000 static unsigned int netcard_portlist[] __initdate = {0, 0}; static unsigned int cs8900_irq_map[] = {IRQ_EINT9, 0, 0, 0}; #else 三. 修改入口函数cs89x0_probe 1. ...
記得之前在面試某家CHIP Vendor時,面試官對我之前寫過的(應該是抄過的)S3C4510b網路驅動程式很有興趣,他很詳細的問我每個流程,而且還不准我看資料必需馬上回答 他,說老實話,S3C4510B的網卡驅動有點小複雜,再加上我已經有一段時間(2,3年)沒碰S3C4510B,整個驅動的細節幾乎都忘了,不過我還記 得我開發S3C4510B driver的大概流程 首先針對開發板寫driver時,我都會用ADS搭ICE寫Boot code開始,然後再一步一步新增driver code測試,像4510...
其中__init cs89x0_probe(int unit)函数中有调用一个check函数: netdev_boot_setup_check(dev); 该函数没看明白到底什么意思,源代码在"net/core/dev.c"中: /** * netdev_boot_setup_check - check boot time settings * @dev: the netdevice * * Check boot time settings for the device. * The found settings are set for the device to be used * later in the device probing. * ...
VIVI version 0.1.4 ([email]eady@eady.mizi.com[/email]) (gcc version 2.95.3 20010315 (release))3MMU table base address = 0x33DFC000 Succeed memory mapping. NAND device: Manufacture id: 0xec, Chip id: 0x76 (Samsung K9D1208V0M) Could not found stored vivi parameters. Use default vivi parameters. Press Return to start the LINUX now, any other key for vivi Copy linux kernel from 0x00030000 to 0x3000800...
目标板是ARMSYS2410,出现下面问题: cs8900a.c: wrong device driver! cs89x0: no cs8900 or cs8920 detected.Be sure to disable PnP with SETUP 应该是内核没有找到cs8900,这个问题怎么解决?请高手帮忙下,谢谢!