完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
drivers/scsi/advansys.c:72:2: warning: #warning this driver is still not properly converted to the DMA API
drivers/scsi/advansys.c: In function 'advansys_get_sense_buffer_dma': drivers/scsi/advansys.c:8376:2: error: implicit declaration of function 'dma_cache_sync' make[2]: *** [drivers/scsi/advansys.o] 错误 1 make[1]: *** [drivers/scsi] 错误 2 make: *** [drivers] 错误 2 从网上也搜索到解决方法,但是找不到其中的asm文件夹,连接如下: implicit declaration of function `dma_cache_sync'表示隐式声明错误,可能有几个原因: 1 没有把函数所在的c文件生成.o目标文件 2 在函数所在的c文件中定义了,但是没有在与之相关联的.h文件中声明 reference:http://hi.baidu.com/caosicong/blog/item/17e3f8d6f4d1862a06088b79.html 查找archarmincludeasmdma-mapping.h下没有这个函数声明,但有如下注释: /* * Dummy noncoherent implementation. We don't provide a dma_cache_sync * function so drivers using this API are highlighted with build warnings. */ 晕了,不用为什么还在程序里有这个函数?直接在advansys.c中把 dma_cache_sync(board->dev, scp->sense_buffer, SCSI_SENSE_BUFFERSIZE, DMA_FROM_DEVICE); 注释掉,编译就OK了,这个也算是bug了。上面注释说会是warning 但在我这边是error, |
|
相关推荐
2个回答
|
|
在/usr/src/linux-2.6.30.4/include/linux/dma-mapping.h的最后endif之前添加
static inline void dma_cache_sync(struct device *dev,void *vaddr,size_t size, enum dma_data_direction direction); { BUG(); } |
|
|
|
那年我十七_ 发表于 2014-9-27 11:19 我是交叉编译用来产生ARM内核的,用的2.6.36,你给出的目录是系统目录吧? |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
830 浏览 0 评论
AI模型部署边缘设备的奇妙之旅:如何在边缘端部署OpenCV
2916 浏览 0 评论
tms320280021 adc采样波形,为什么adc采样频率上来波形就不好了?
1391 浏览 0 评论
2006 浏览 0 评论
1553 浏览 0 评论
75024 浏览 21 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-25 19:46 , Processed in 0.438473 second(s), Total 43, Slave 37 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号