打印
[i.MX]

MX6Q_SABRESD:linux访问uboot env问题

[复制链接]
4815|18
手机看帖
扫描二维码
随时随地手机跟帖
沙发
FSL_TICS_A| | 2014-8-8 09:29 | 只看该作者
你好,楼主!
我会将你的问题转告给i.MX工程师,他稍后会回复你的。

使用特权

评论回复
板凳
ketp|  楼主 | 2014-8-10 21:17 | 只看该作者
我自己结一下:
1、配置fw_env.config,并copy到/etc/下,其实编译的时候不需要这个配置文件,是运行的时候解析的
/dev/mmcblk0        0xc0000                0x2000                0x2000                       
2、修改fw_env.c, 去掉两个ioctl操作,并把DEVTYPE改为nor flash
/*
  if (ioctl (fd, MEMERASE, &erase) != 0) {
   fprintf (stderr, "MTD erase error on %s: %s\n",
     DEVNAME (dev),
     strerror (errno));
   return -1;
  }
*/
/*
rc = ioctl (fd, MEMGETINFO, &mtdinfo);
if (rc < 0) {
  perror ("Cannot get MTD information");
  return -1;
}

if (mtdinfo.type != MTD_NORFLASH && mtdinfo.type != MTD_NANDFLASH) {
  fprintf (stderr, "Unsupported flash type %u\n", mtdinfo.type);
  return -1;
}

DEVTYPE(dev_current) = mtdinfo.type;
*/
DEVTYPE(dev_current) = MTD_NORFLASH;

使用特权

评论回复
地板
FSL_TICS_Rita| | 2014-8-12 16:55 | 只看该作者
楼主你好,请问你使用的BSP版本是哪个?

使用特权

评论回复
5
FSL_TICS_Rita| | 2014-8-15 17:04 | 只看该作者
楼主你好,请问你使用的是哪个版本的BSP?

使用特权

评论回复
6
ketp|  楼主 | 2014-8-22 22:33 | 只看该作者
FSL_TICS_Rita 发表于 2014-8-15 17:04
楼主你好,请问你使用的是哪个版本的BSP?


L3.0.35_4.1.0_130816_source.tar   
mx6q_sabresd

使用特权

评论回复
7
晓宇2010| | 2014-8-23 21:13 | 只看该作者
ketp 发表于 2014-8-10 21:17
我自己结一下:
1、配置fw_env.config,并copy到/etc/下,其实编译的时候不需要这个配置文件,是运行的时候 ...

楼主,请问你的能写入吗?我的写crc校验操作失败,被恢复成默认的

使用特权

评论回复
8
FSL_TICS_Rita| | 2014-8-25 16:22 | 只看该作者
晓宇2010 发表于 2014-8-23 21:13
楼主,请问你的能写入吗?我的写crc校验操作失败,被恢复成默认的

你好,请问你的是什么情况,遇到的问题和和楼主一样的么?

使用特权

评论回复
9
FSL_TICS_Rita| | 2014-8-25 16:24 | 只看该作者
楼主你好,帖中源码uboot-imx\tools\env是android源码的目录吧。不是Linux的。

使用特权

评论回复
10
晓宇2010| | 2014-8-25 16:34 | 只看该作者
FSL_TICS_Rita 发表于 2014-8-25 16:22
你好,请问你的是什么情况,遇到的问题和和楼主一样的么?

我的开发板也是emmc的,我想访问下uboot中的环境变量,
fw_env.config确定为下面的参数(最后一个不确定,不过我写512和1024好像都不影响)
/dev/mmcblk0        0xc0000                0x2000                0x2000     

单纯改这个文件,执行fw_printenv无效,根据楼主的方法,改了源码,读取是可以了,但我一些如就crc校验失败,uboot变量被回复成默认的了

使用特权

评论回复
11
晓宇2010| | 2014-8-25 17:13 | 只看该作者
FSL_TICS_Rita 发表于 2014-8-25 16:24
楼主你好,帖中源码uboot-imx\tools\env是android源码的目录吧。不是Linux的。

对应我的linux的目录是u-boot-2009.08/tools/env/

使用特权

评论回复
12
FSL_TICS_Rita| | 2014-8-25 17:32 | 只看该作者
楼主你好, 我也没有修过过,这里建议你参考文档http://bbs.**/thread-372532-1-1.html修改试一下,希望对你有用。



使用特权

评论回复
13
FSL_TICS_Rita| | 2014-8-25 17:33 | 只看该作者
晓宇2010 发表于 2014-8-25 17:13
对应我的linux的目录是u-boot-2009.08/tools/env/

你好, 我也没有修过过,这里建议你参考文档http://bbs.**/thread-372532-1-1.html修改试一下,希望对你有用。


使用特权

评论回复
14
zekezang| | 2014-8-26 13:01 | 只看该作者
楼主你好,试了你的方法mmc,一直报crc错误,是config没有配置对,还是别的什么原因啊

使用特权

评论回复
15
FSL_TICS_Rita| | 2014-8-26 14:30 | 只看该作者
zekezang 发表于 2014-8-26 13:01
楼主你好,试了你的方法mmc,一直报crc错误,是config没有配置对,还是别的什么原因啊 ...

这个我这边也没有试过,建议你看一下12楼我给的另外一个链接,希望对你有帮助~~

使用特权

评论回复
16
ketp|  楼主 | 2014-8-28 01:42 | 只看该作者
晓宇2010 发表于 2014-8-23 21:13
楼主,请问你的能写入吗?我的写crc校验操作失败,被恢复成默认的

可以写入

使用特权

评论回复
17
ketp|  楼主 | 2014-8-28 01:44 | 只看该作者
zekezang 发表于 2014-8-26 13:01
楼主你好,试了你的方法mmc,一直报crc错误,是config没有配置对,还是别的什么原因啊 ...

你先在uboot下改个变量,再保存, 然后到linux下再修改试试

使用特权

评论回复
18
晓宇2010| | 2014-8-31 23:42 | 只看该作者
ketp 发表于 2014-8-28 01:44
你先在uboot下改个变量,再保存, 然后到linux下再修改试试

xiaoyu$ fw_setenv bootcmd_mmc_android dfhdjkgjfdkgf                       
Warning: Bad CRC, using default environment
End of range reached, aborting
Error: can't write fw_env to flash


xiaoyu$ fw_printenv                  
bootcmd=bootp; setenv bootargs root=/dev/nfs nfsroot=${serverip}:${rootpath} ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}::off; bootm
bootdelay=5
baudrate=115200
bootcmd_mmc_android=dfhdjkgjfdkgf

版主,能否帮忙验证下,我的不改fw_printenv的源码是读不出来,提示:
Cannot get MTD information: Invalid argument
参考楼主的改了后可以读出来,但写不进入,一写就提示以上错误~~~

硬件:使用的8G emmc

使用特权

评论回复
19
zekezang| | 2014-9-1 09:10 | 只看该作者
ketp 发表于 2014-8-28 01:44
你先在uboot下改个变量,再保存, 然后到linux下再修改试试

Hi,楼主,换了一个途径,没有再继续调这个,感谢帮忙

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

44

帖子

0

粉丝