新闻中心

EEPW首页>嵌入式系统>设计应用> S5PV210(TQ210)学习笔记——内核移植与文件系统构建

S5PV210(TQ210)学习笔记——内核移植与文件系统构建

作者: 时间:2016-11-28 来源:网络 收藏


另外,从TQ210原理图的DM9000部分还可以看到,DM9000使用的是外部中断10,故将中断号修改为10号。

本文引用地址://m.amcfsurvey.com/article/201611/322806.htm

最后需要说明的是smdkv210_dm9000_init函数的修改,这是因为DM9000的数据访问、命令发送等是按照一定时序工作的,而DM9000接再SROMC上,因此需要配置SROMC时序,使其可以正确驱动DM9000,关于时序的详细配置我还没研究,不过韦东山老师的第二期视频中讲述了DM9000的驱动移植,也讲了时序配置,需要的话可以参考。

五 挂接文件系统

我们现在配置好了网卡驱动,还需要对内核稍作配置才能使内核支持网络文件系统挂载,具体的可以参考以下配置。

(1) 配置网络支持

  1. [*]Networkingsupport--->
  2. Networkingoptions--->
  3. <*>Packetsocket
  4. <*>Unixdomainsockets
  5. [*]TCP/IPnetworking
  6. [*]IP:multicasting
  7. [*]IP:kernellevelautoconfiguration
  8. [*]IP:DHCPsupport
  9. [*]IP:BOOTPsupport
  10. [*]IP:RARPsupport
  11. [*]IP:multicastrouting

(2) 配置网卡设备支持
  1. DeviceDrivers--->
  2. [*]Networkdevicesupport--->
  3. [*]Ethernetdriversupport--->
  4. <*>DM9000support

(3) 配置网络文件系统支持
  1. Filesystems--->
  2. [*]NetworkFileSystems--->
  3. <*>NFSclientsupport
  4. <*>NFSclientsupportforNFSversion2
  5. <*>NFSclientsupportforNFSversion3
  6. [*]NFSclientsupportfortheNFSv3ACLprotocolextension
  7. <*>NFSclientsupportforNFSversion4
  8. [*]RootfilesystemonNFS

配置完以上三项后保存配置,然后再次编译内核,直接执行make指令即可。

这时,重新下载内核测试运行,没有意外的话现在内核已经可以正常工作了,如果不幸的遇到了问题,那么问题应该是NFS服务器配置的问题,ubuntu下配置NFS服务器很简单

  1. sudoapt-getinstallnfs-kernel-server

然后以根权限打开/etc/exports文件,我的NFS根目录为/nfsroot,故,我设置export为
  1. /nfsroot/*(rw,sync,no_root_squash)

设置完成之后需要重启NFS服务,ubuntu下执行

  1. sudoservicenfs-kernel-serverrestart

重启的时候会看到一些警告,如下图

但是上述警告不影响使用。反之,如果设置为no_subtree_check,虽然系统可以正常挂载,但是无法进行创建文件等写操作,也就是说,挂载的文件系统是只读的。最后还要修改下/nfsroot的权限,为了以后使用方便。

  1. chmoda+x/nfsroot-R

到这里,基于TQ210的内核移植已经初步完成了,接下来我们就可以进行驱动开发了。

六 问题总结

我在配置过程中遇到了很多问题,现在稍作总结

(1) 串口中断打印完Starting kernel...之后就没有任何输出了

配置内核,指定调试信息输出端口为UART0,文中讲到了详细配置。

(2) 解压完内核之后没有任何输出了

a.检查bootargs环境变量设置是否正确,必须设置console=ttySAC0

b.检查uboot传递的机器码根内核是否对应

c.检查uboot传给内核的taglist是否正确

(3) 内核无法挂接到NFS文件系统

a. 正确移植DM9000网卡驱动

b. 配置内核的网络部分、网卡设备和文件系统中的网络文件系统

c. 确认NFS服务器的配置是否正确,用另外其他linux或已经移植好系统的linux进行测试(mount -o nolock xx.xx.xx.xx:/nfsroot/rootfs)。

(4) 文件系统挂接成功,无法执行/linuxrc

a. 检查NFS配置文件,最好以NFSv2方式配置,内核不支持的话会出现问题。

b. 最好以文中推荐的方式进行NFS服务器配置。

c. 配置完成之后需要重启NFS服务或者是重启系统。

七 其它问题

如果您在移植过程中出现了其他问题欢迎留言讨论。


上一页 1 2 3 下一页

评论


技术专区

关闭