2640|2

69

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

HPI驱动 [复制链接]

我正在写一个HPI的驱动,实现arm和dsp之间的通信,可吧程序拿来交叉编译的时候有个报错,实在看不明白,请各位高手给点拨点拨。谢谢了!

输入命令:[root@vm-mandel work]# arm-linux-gcc -O -c  HPIdriver.c

得到如下报错信息:
HPIdriver.c: In function `hpi_init':
HPIdriver.c:364: parse error before `AT91C_BASE_PIOB'
HPIdriver.c:365: `AT91C_BASE_PIOB' undeclared (first use in this function)
HPIdriver.c:365: (Each undeclared identifier is reported only once
HPIdriver.c:365: for each function it appears in.)

这是第355line-365line的代码:
hpi_dev->hpi_vbase =
    (unsigned char *) ioremap_nocache (HPI_PHYSICAL_BASEADDR, 12);
    printk ("HPI: Register address:%X\n", hpi_dev->hpi_vbase);
    /*Initial the PIOB of arm processor,ready for AIC setting */
    AT91PS_PIO AT91C_BASE_PIOB = (AT91PS_PIO) AT91_IO_P2V (0xFFFFF600);
    AT91C_BASE_PIOB->PIO_PDR = 0x20000000;            AT91C_BASE_PIOB->PIO_ASR = 0x20000000;       

最新回复

现在只剩下这两个报错了,其它的三个是因为我程序里在没有定义函数的前提下调用了它们 (很纳闷,编译怎么就通过了)。 HPIdriver2.o: unresolved symbol AT91C_BASE_PIOB HPIdriver2.o: unresolved symbol AT91_IO_P2V 这两个报错还没解决,高手们给看看,不胜感激! AT91C_BASE_PIOB 被定义成了一种结构体指针,这种结构体指针在9200.h中进行了定义。 AT91_IO_P2V 是一个宏函数,也是在头文件hardware.h中作了定义的啊。  详情 回复 发表于 2009-3-4 17:13
点赞 关注

回复
举报

70

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
AT91PS_PIO在包含的一个头文件里定义了,我在驱动里用extern 声明后  编译通过了。可是在用insmod命令向内核加载模块的时候出现了下面的提示错误,各位大侠帮忙分析分析,这是怎么回事啊?

这里边报错的几个符号可都是我在驱动里编写的函数的函数名啊(除了AT91C_BASE_PIOB和AT91_IO_P2V)。
[root@AT91RM9200DK /]$insmod HPIdriver2.o
HPIdriver2.o: unresolved symbol HPID_Read
HPIdriver2.o: unresolved symbol AT91C_BASE_PIOB
HPIdriver2.o: unresolved symbol HPID_Write
HPIdriver2.o: unresolved symbol HPIA_Read
HPIdriver2.o: unresolved symbol AT91_IO_P2V
HPIdriver2.o: unresolved symbol setdspint
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
现在只剩下这两个报错了,其它的三个是因为我程序里在没有定义函数的前提下调用了它们
(很纳闷,编译怎么就通过了)。

HPIdriver2.o: unresolved symbol AT91C_BASE_PIOB
HPIdriver2.o: unresolved symbol AT91_IO_P2V
这两个报错还没解决,高手们给看看,不胜感激!

AT91C_BASE_PIOB 被定义成了一种结构体指针,这种结构体指针在9200.h中进行了定义。
AT91_IO_P2V 是一个宏函数,也是在头文件hardware.h中作了定义的啊。
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

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

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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

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

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

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