2733|3

86

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

关于vivi 移植的问题 [复制链接]

我借了块班子,但没有光盘了,所以没有了VIVI的源代码了
我下了个VIVI的代码,用的DM9000, 而我板子上用的是CS8900

8900的驱动VIVI的目录有了也

现在VIVI 编译后,默认的是用DM9000,我要修改哪些地方?才能让他默认为CS8900呢??
谢谢

最新回复

Makefile文件 部分的内容 VIVI目录下的 Makefile文件(部分,只列了和网络有关的) #DRIVERS-$(CONFIG_DRIVER_CS8900) += drivers/net/netdev_cs89.lo #DRIVERS-$(CONFIG_DRIVER_CS8900) += drivers/net/netdev.o #DRIVERS-$(CONFIG_DRIVER_DM9000) += drivers/net/netdev.o #DRIVERS-$(CONFIG_DRIVER_DM9000) += drivers/net/netdev_dm9k.lo DRIVERS-$(CONFIG_NETWORK) += drivers/net/netdev.o DRIVERS-$(CONFIG_CMD_VGA) += drivers/vga/vgadev.o drivers/net 目录下的 makefile 如下: O_TARGET                := netdev.o obj-y := ifeq ($(CONFIG_DRIVER_DM9000),y)     obj-y += dm9000x.o else   ifeq ($(CONFIG_DRIVER_CS8900),y)     obj-y += cs8900.o   endif endif include $(TOPDIR)/Rules.make 按理说,我把有关 DM9000的宏定义都给关了,而CS8900都开了,应该 CS8900参与编译啊???  详情 回复 发表于 2009-3-21 00:38
点赞 关注

回复
举报

60

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
make menuconfig?
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
我使用的FFT-2410开发板,没有VIVI 的原代码,只提供了可烧写文件

开发板上用的CS8900网络片
于是我修改过了,autoconf.h,config.h文件中 关于dm9000的宏定义都屏蔽了
把CS8900的 宏定义都打开了,按理说CS8900的文件应该参与编译

现在我下载了VIVI,编译后,声成一个VIVI,烧入开发板后,
在VIVI的命令提示行下,通过串口方式都没问题

但用到TFTP方式下载,就报错误:

vivi> net tftp 192.168.1.41 0x30000 kernel
dm9000 not found at 0x19000300 id: 0x09090909
could not establish link
??????????????????????????
提示信息在dm9000x.c文件dm9000_probe()函数中
dm9000_probe(void)
{
u32 id_val;
id_val = DM9000_ior(DM9000_VIDL);
id_val |= DM9000_ior(DM9000_VIDH) << 8;
id_val |= DM9000_ior(DM9000_PIDL) << 16;
id_val |= DM9000_ior(DM9000_PIDH) << 24;
if (id_val == DM9000_ID) {
  printk("dm9000 i/o: 0x%x, id: 0x%x \n", CONFIG_DM9000_BASE,
         id_val);
  return 0;
} else {
  printk("dm9000 not found at 0x%08x id: 0x%08x\n",
         CONFIG_DM9000_BASE, id_val);
  return -1;
}
}
就是说还是把 DM9000编译到内核了???


请教,在VIVI里需要修改哪些地方才能使CS8900 被编译到内核呢??
谢谢
 
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

4
 
Makefile文件 部分的内容


VIVI目录下的 Makefile文件(部分,只列了和网络有关的)
#DRIVERS-$(CONFIG_DRIVER_CS8900) += drivers/net/netdev_cs89.lo
#DRIVERS-$(CONFIG_DRIVER_CS8900) += drivers/net/netdev.o
#DRIVERS-$(CONFIG_DRIVER_DM9000) += drivers/net/netdev.o
#DRIVERS-$(CONFIG_DRIVER_DM9000) += drivers/net/netdev_dm9k.lo
DRIVERS-$(CONFIG_NETWORK) += drivers/net/netdev.o
DRIVERS-$(CONFIG_CMD_VGA) += drivers/vga/vgadev.o

drivers/net 目录下的 makefile 如下:
O_TARGET                := netdev.o

obj-y :=
ifeq ($(CONFIG_DRIVER_DM9000),y)
    obj-y += dm9000x.o
else
  ifeq ($(CONFIG_DRIVER_CS8900),y)
    obj-y += cs8900.o
  endif
endif

include $(TOPDIR)/Rules.make

按理说,我把有关 DM9000的宏定义都给关了,而CS8900都开了,应该 CS8900参与编译啊???
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表