当前位置: 技术问答>linux和unix
请教下 2.6移植 和 YAFFS2移植到问题
来源: 互联网 发布时间:2016-05-07
本文导语: 我在编2.6.24的时候,选择Device Driver->Plug and Play support 就会报错 报错信息: vers/built-in.o(.text+0x10c4c): In function `pnp_check_dma': drivers/pnp/resource.c:437: undefined reference to `request_dma' drivers/built-in.o(.text+0x10c6c):drivers/pnp/re...
我在编2.6.24的时候,选择Device Driver->Plug and Play support 就会报错
报错信息:
vers/built-in.o(.text+0x10c4c): In function `pnp_check_dma':
drivers/pnp/resource.c:437: undefined reference to `request_dma'
drivers/built-in.o(.text+0x10c6c):drivers/pnp/resource.c:439: undefined reference to `free_dma'
make: *** [.tmp_vmlinux1] Error 1
不选就可以顺利编过,这个应该怎么处理啊
还有就是YAFFS2,我用mkyaffsimg做成好了 ,怎么移植到S3C2410板子上去啊,kernel u-boot需要怎么改啊
yyy3023@gmail.com
QQ:18058956
望高手指点下
报错信息:
vers/built-in.o(.text+0x10c4c): In function `pnp_check_dma':
drivers/pnp/resource.c:437: undefined reference to `request_dma'
drivers/built-in.o(.text+0x10c6c):drivers/pnp/resource.c:439: undefined reference to `free_dma'
make: *** [.tmp_vmlinux1] Error 1
不选就可以顺利编过,这个应该怎么处理啊
还有就是YAFFS2,我用mkyaffsimg做成好了 ,怎么移植到S3C2410板子上去啊,kernel u-boot需要怎么改啊
yyy3023@gmail.com
QQ:18058956
望高手指点下
|
你这两个问题不是相关的吧?
1)跟2410没关系吧。估计2410没有用标准的API:request_dma。嵌入式里很少用标准的API,都是自己定义的,
不过差不多。
通常来说,你可以找哪里调用了request_dma这个API,然后相应地在那个目录找Makefile文件,看看
需要选择内核里的哪个config,再把把选上重新编译kernel就是了。
2)需要知道你的bootloader,kernel分别在flash的什么分区。 然后你将要把根文件系统(rootfs)放到
哪个区? 譬如bootloader,kernel,分别在 /dev/mtdblock0, /dev/mtdblock1, 根文件系统要到/dev/mtdblock2
启动的时候 加上 command line “root=/dev/mtdblock2”
至于如何烧写,我想你的bootloader可以完成。
参考这里:
http://www.unixresources.net/linux/clf/embedded/archive/00/00/59/61/596167.html
http://www.mcuos.com/redirect.php?tid=2129&goto=lastpost
另一种方法就是通过其他方式(如NFS)启动后,再用 flash_eraseall , nandwrite 命令
1)跟2410没关系吧。估计2410没有用标准的API:request_dma。嵌入式里很少用标准的API,都是自己定义的,
不过差不多。
通常来说,你可以找哪里调用了request_dma这个API,然后相应地在那个目录找Makefile文件,看看
需要选择内核里的哪个config,再把把选上重新编译kernel就是了。
2)需要知道你的bootloader,kernel分别在flash的什么分区。 然后你将要把根文件系统(rootfs)放到
哪个区? 譬如bootloader,kernel,分别在 /dev/mtdblock0, /dev/mtdblock1, 根文件系统要到/dev/mtdblock2
启动的时候 加上 command line “root=/dev/mtdblock2”
至于如何烧写,我想你的bootloader可以完成。
参考这里:
http://www.unixresources.net/linux/clf/embedded/archive/00/00/59/61/596167.html
http://www.mcuos.com/redirect.php?tid=2129&goto=lastpost
另一种方法就是通过其他方式(如NFS)启动后,再用 flash_eraseall , nandwrite 命令