Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1134355
  • 博文数量: 141
  • 博客积分: 2853
  • 博客等级: 少校
  • 技术积分: 2266
  • 用 户 组: 普通用户
  • 注册时间: 2012-04-04 12:03
文章分类

全部博文(141)

文章存档

2014年(3)

2013年(12)

2012年(126)

分类: LINUX

2012-05-06 21:06:50

1.挂载nfs文件系统
    移植内核太坑爹了,有时候是死不知道是怎么死的,更悲剧的是有时候活了却不知道怎么活的,今天移植DM9000并挂载nfs文件系统的时候一直不成功。一直出现 nfs: server 192.168.100.84 not responding, still trying的问题,结果去上个厕所回来,再试结果又行了,敢情是网络的问题!设置nfs需要通过u-boot命令进行设置,命令如下:
setenv bootargs console=ttySAC0 root=/dev/nfs nfsroot=172.19.72.35:/opt/EmbedSky/root_nfs ip=开发板IP:电脑IP:开发板IP或者网关:255.255.255.0:SKY2440.embedsky.net:eth0:off 
或者直接在u-boot源码里面改include/configs/tq2440.h
在挂载nfs的时候发现u-boot中setenv的环境参数竟无法保存,重启后还是原始的。明天继续!

2.设置环境变量
     经过昨天坑爹的结果后,今天似乎还是不长记性,今天一天都围绕着setenv这个命令,环境参数保存不了,
刚开始发现Uboot中我既定义了CFG_ENV_IS_IN_FLASH又定义了CFG_ENV_IS_IN_NAND,定义在/include/configs/EmbedSky.h文件中。刚开始以为是这里错了,通过定义可以将uboot的环境变量烧写到norflash(CFG_ENV_IS_IN_FLASH)或者nandflash(CFG_ENV_IS_IN_NAND)中,当时兴奋了一把,结果是令人失望的,还是无法保存环境变量,在这期间我试着将uboot make distclean后,结果结果可以用塞翁失马焉知非福来形容,Hit any key to stop autoboot:  0 (后来发下原来是norflash中天嵌的uboot,在设置环境变量的时候把bootdelay设置为0了,可以通过setenv bootdelay 时间该回来),u-boot启动没有等待按键的时间了,进入不了命令界面了,把我激动的,最后没办法了,试着把nandflash格式化,结果再烧写,又有等待按键的时间了,更奇迹的是,环境变量也能保存了,再一次印证了那句话有时候是死不知道是怎么死的,更悲剧的是有时候活了却不知道怎么活的!接下来要对linux内核进行分区了。。。。。。。。。。。。

3.挂载nfs文件系统续
     真是祸不单行呀,刚勉强解决了环境变量无法保存后,启动系统有出现了昨天的问题nfs: server not responding, still trying的问题,经过google baidu(唉,我发现我需要个老师),原来问题出在网络,nfs默认情况是采用udp方式挂载文件系统,容易丢包,也许是我们实验室的哪个vpn服务器搞的鬼,路由器顶不住呀,全专业上网都靠它了。言归正传,哪么如何解决了这里提供两种方法
     1)setenv bootargs console=ttySAC0 root=/dev/nfs nfsroot=172.19.72.35:/opt/EmbedSky/root_nfs,rsize=1024,wsize=1024 ip=172.19.72.8:172.19.72.35:172.19.72.1:255.255.255.0:SKY2440.embedsky.net:eth0:off
ip根据自己网络情况替换,172.19.72.35(主机IP),172.19.72.8(开发板IP),172.19.72.1(网关);
        2)setenv bootargs console=ttySAC0 root=/dev/nfs nfsroot=172.19.72.35:/opt/EmbedSky/root_nfs,tcp ip=172.19.72.8:172.19.72.35:172.19.72.1:255.255.255.0:SKY2440.embedsky.net:eth0:off

4.nandflash分区
刚开始分区的时候因为粗心,内核编译都通不过,以为很难,结果发现问题后觉得其实和2.6.30一样的,只要内核启动的了,我分了4个区,如图

数组在arch/arm/plat-s3c24xx/common-smdk.c文件里面。

5.LCD驱动
    LCD驱动照着天嵌的Linux移植之step By step中的step15改。

6.usb鼠标
    昨晚上面的后,发现鼠标和触摸屏都不能使用,后来在网上找到资料说,内核没有配置鼠标
  1. Device drivers --->
  2.     SCSI Device support --->
  3.         <*> SCSI device support
  4. <*> SCSI disk support
  5.     [*] HID Devices --->
  6. -*- Generic HID support
  7. <*> USB Human Interface Device (full HID) support
  8.     [*] USB support --->
  9. {*} Support for Host-side USB
  10. [*] USB announce new devices
  11. [*] USB device filesystem
  12. <*> OHCI HCD support
  13. <*> USB Mass Storage support

USB Human Interface Device (full HID) support 是对USB鼠标键盘的支持
SCSI disk support 和USB Mass Storage support 是对U盘的支持
编译内核下载到板子上发现能用了,现在还有触摸屏驱动了。。。。。。
阅读(2813) | 评论(5) | 转发(1) |
给主人留下些什么吧!~~

fzhman2013-01-03 21:12:14

wlqiuxing: 工作搞定没?在哪呀?我在深圳.....
你是哪位!

fzhman2013-01-03 21:06:33

wlqiuxing: 工作搞定没?在哪呀?我在深圳.....
工作解决了,你是哪位?

wlqiuxing2012-12-29 10:32:40

工作搞定没?在哪呀?我在深圳

fzhman2012-10-30 09:28:37

wlqiuxing: 你好。。。看你的文章列表,挺多东西的,现在是做哪方面的呀?.....
呵呵,只是摘录了一些网上的好文章和一些自己的笔记,现在找工作中~!

wlqiuxing2012-10-29 23:34:12

你好。。。看你的文章列表,挺多东西的,现在是做哪方面的呀?