[已解决] i.mx28 NAND flash问题(已解决)

[复制链接]

该用户从未签到

4

主题

38

帖子

0

注册会员

Rank: 2

积分
58
最后登录
1970-1-1
发表于 2014-4-23 16:08:41 | 显示全部楼层

回复:i.mx28 NAND flash问题

感谢你的链接,我现在的情况是这样的:
1 修改内核的代码,按照你给的第一个和第二个链接;
2 用ltib生成imx28_ivt_linux.sb和rootfs。然后把rootfs压缩成  rootfs.tar.bz2;
3 然后把sb和bz2拷到sd上;
4 sd卡启动,imx28所能支持的ubi的文件系统大小最大为2GiB,所以启动后出现mtd partitons如下:
    Boot area protection is enabled.
Creating 2 MTD partitions on "gpmi-nfc-main":
0x000000000000-0x000001400000 : "gpmi-nfc-0-boot"
0x000001400000-0x000200000000 : "gpmi-nfc-general-use"
Creating 4 MTD partitions on "gpmi-nfc-general-use":
0x000000000000-0x000080000000 : "gpmi-nfc-ubi-0"
0x000080000000-0x000100000000 : "gpmi-nfc-ubi-1"
0x000100000000-0x000180000000 : "gpmi-nfc-ubi-2"
0x000180000000-0x0001fec00000 : "gpmi-nfc-ubi-3"
mxs-spi mxs-spi.0: Max possible speed 24000 = 24000000/2 kHz
5  flash_eraseall /dev/mtt0;kobs-ng -init /boot/imx28_ivt_linux.sb完成内核的烧写
6  执行cat /proc/mtd;如下显示:
    dev:    size   erasesize  name
mtd0: 01400000 00080000 "gpmi-nfc-0-boot"
mtd1: 1fec00000 00080000 "gpmi-nfc-general-use"
mtd2: 80000000 00080000 "gpmi-nfc-ubi-0"
mtd3: 80000000 00080000 "gpmi-nfc-ubi-1"
mtd4: 80000000 00080000 "gpmi-nfc-ubi-2"
mtd5: 7ec00000 00080000 "gpmi-nfc-ubi-3"
我的理解是把rootfs挂载在mtd2上,mtd3~mt5可以挂在/mnt下的某个目录,执行下列命令
flash_eraseall /dev/mtd2
ubiattach /dev/ubi_ctrl -m 2
ubimkvol /dev/ubi0 -N rootfs0 –m
mkdir /mnt/ubifs
mount -t ubifs ubi0:rootfs0 /mnt/ubifs
tar vjxf rootfs.tar.bz2 -C /mnt/ubifs
umount /mnt/ubifs
7  换成nand flash启动:系统可以正常启动。
问题:如何处理mtd3~mtd5呢?是必须用ubi.img来烧写mtd3~mtd5还是用ubiattach、ubimkvol等这些命令就行?是在SD启动阶段还是nand flash启动阶段处理mtd3~mtd5?
回复 支持 反对

使用道具 举报

该用户从未签到

4

主题

38

帖子

0

注册会员

Rank: 2

积分
58
最后登录
1970-1-1
发表于 2014-4-23 16:12:58 | 显示全部楼层

回复:i.mx28 NAND flash问题

另外是否需要查看一下我修改的几个内核文件,其中主要是描述nand和gpmi的参数
回复 支持 反对

使用道具 举报

该用户从未签到

4

主题

38

帖子

0

注册会员

Rank: 2

积分
58
最后登录
1970-1-1
发表于 2014-4-24 14:23:38 | 显示全部楼层

回复:i.mx28 NAND flash问题

我认为现在的问题是:不使用ubifs作为rootfs时,该如何挂载?
回复 支持 反对

使用道具 举报

该用户从未签到

45

主题

2369

帖子

0

金牌会员

Rank: 6Rank: 6

积分
3275
最后登录
1970-1-1
发表于 2014-4-24 14:45:30 | 显示全部楼层

回复:i.mx28 NAND flash问题

回复第 33 楼 于2014-04-24 14:23:38发表:
我认为现在的问题是:不使用ubifs作为rootfs时,该如何挂载? 

那你需要使用什么格式的文件系统?
回复 支持 反对

使用道具 举报

该用户从未签到

4

主题

38

帖子

0

注册会员

Rank: 2

积分
58
最后登录
1970-1-1
发表于 2014-4-24 14:55:30 | 显示全部楼层

回复:i.mx28 NAND flash问题

包括根文件系统在内,全部用ubifs
回复 支持 反对

使用道具 举报

该用户从未签到

4

主题

38

帖子

0

注册会员

Rank: 2

积分
58
最后登录
1970-1-1
发表于 2014-4-24 14:58:58 | 显示全部楼层

回复:i.mx28 NAND flash问题

mtd2用做根文件系统且使用ubifs是可以启动起来的,当系统启动后想把mtd3~mtd5也用做ubi文件系统
回复 支持 反对

使用道具 举报

该用户从未签到

4

主题

38

帖子

0

注册会员

Rank: 2

积分
58
最后登录
1970-1-1
发表于 2014-4-24 15:07:26 | 显示全部楼层

回复:i.mx28 NAND flash问题

iMX28是否成功跑过mt29f64g08的flash,如果能跑起来的话,可以把nand的具体型号告诉我们
回复 支持 反对

使用道具 举报

该用户从未签到

45

主题

2369

帖子

0

金牌会员

Rank: 6Rank: 6

积分
3275
最后登录
1970-1-1
发表于 2014-4-24 16:22:49 | 显示全部楼层

回复:i.mx28 NAND flash问题

回复第 37 楼 于2014-04-24 15:07:26发表:
iMX28是否成功跑过mt29f64g08的flash,如果能跑起来的话,可以把nand的具体型号告诉我们 

这个我需要确认一下,然后给你回复~~
回复 支持 反对

使用道具 举报

该用户从未签到

4

主题

38

帖子

0

注册会员

Rank: 2

积分
58
最后登录
1970-1-1
发表于 2014-4-25 14:37:35 | 显示全部楼层

回复:i.mx28 NAND flash问题

其实不一定是8GiB的,只要大于2GiB的能跑起过来都可以,例如4GiB的,这样对我都有帮助
回复 支持 反对

使用道具 举报

该用户从未签到

45

主题

2369

帖子

0

金牌会员

Rank: 6Rank: 6

积分
3275
最后登录
1970-1-1
发表于 2014-4-25 17:43:07 | 显示全部楼层

回复:i.mx28 NAND flash问题

回复第 31 楼 于2014-04-23 16:08:41发表:
感谢你的链接,我现在的情况是这样的:
1 修改内核的代码,按照你给的第一个和第二个链接;
2 用ltib生成imx28_ivt_linux.sb和rootfs。然后把rootfs压缩成  rootfs.tar.bz2;
3 然后把sb和bz2拷到sd上;
4 sd卡启动,imx28所能支持的ubi的文件系统大小最大为2GiB,所以启动后出现mtd partitons如下:
Boot area protection is enabled.
Creating 2 MTD partitions on "gpmi-nfc-main":
0x000000000000-0x000001400000 : "gpmi-nfc-0-boot"
0x000001400000-0x000200000000 : "gpmi-nfc-general-use"
Creating 4 MTD partitions on "gpmi-nfc-general-use":
0x000000000000-0x000080000000 : "gpmi-nfc-ubi-0"
0x000080000000-0x000100000000 : "gpmi-nfc-ubi-1"
0x000100000000-0x000180000000 : "gpmi-nfc-ubi-2"
0x000180000000-0x0001fec00000 : "gpmi-nfc-ubi-3"
mxs-spi mxs-spi.0: Max possible speed 24000 = 24000000/2 kHz
5  flash_eraseall /dev/mtt0;kobs-ng -init /boot/imx28_ivt_linux.sb完成内核的烧写
6  执行cat /proc/mtd;如下显示:
dev:    size   erasesize  name
mtd0: 01400000 00080000 "gpmi-nfc-0-boot"
mtd1: 1fec00000 00080000 "gpmi-nfc-general-use"
mtd2: 80000000 00080000 "gpmi-nfc-ubi-0"
mtd3: 80000000 00080000 "gpmi-nfc-ubi-1"
mtd4: 80000000 00080000 "gpmi-nfc-ubi-2"
mtd5: 7ec00000 00080000 "gpmi-nfc-ubi-3"
我的理解是把rootfs挂载在mtd2上,mtd3~mt5可以挂在/mnt下的某个目录,执行下列命令
flash_eraseall /dev/mtd2
ubiattach /dev/ubi_ctrl -m 2
ubimkvol /dev/ubi0 -N rootfs0 –m
mkdir /mnt/ubifs
mount -t ubifs ubi0:rootfs0 /mnt/ubifs
tar vjxf rootfs.tar.bz2 -C /mnt/ubifs
umount /mnt/ubifs
7  换成nand flash启动:系统可以正常启动。
问题:如何处理mtd3~mtd5呢?是必须用ubi.img来烧写mtd3~mtd5还是用ubiattach、ubimkvol等这些命令就行?是在SD启动阶段还是nand flash启动阶段处理mtd3~mtd5? 

你好,mtd3~mtd5是你新建的分区,这里你建一个分区就好比如mtd3用来烧写ubi.img,烧写使用ubiformat命令。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-7-20 16:15 , Processed in 0.106277 second(s), 29 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表