u-boot2016.05 有关 4096page size , oob == 224 nand 的移植支持
大致介绍一下这个 nand 的基础属性
pagesize == 4096 byte
oob == 224 byte
block size == 256 Kbyte
u-boot configs/xxx.h 里面配置如下参数:
272 #define CONFIG_SYS_NAND_PAGE_SIZE 4096
273 #define CONFIG_SYS_NAND_OOBSIZE 224
274 #define CONFIG_SYS_NAND_BLOCK_SIZE (256*1024)
275 #define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH16_CODE_HW
276 #define CONFIG_SYS_NAND_BAD_BLOCK_POS NAND_LARGE_BADBLOCK_POS
277 #define CONFIG_SYS_NAND_ECCPOS { 2, 3, 4, 5, 6, 7, 8, 9, \
278 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, \
279 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, \
280 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, \
281 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, \
282 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, \
283 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, \
284 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, \
285 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, \
286 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, \
287 100, 101, 102, 103, 104, 105, 106, 107, 108, \
288 109, 110, 111, 112, 113, 114, 115, 116, 117, \
289 118, 119, 120, 121, 122, 123, 124, 125, 126, \
290 127, 128, 129, 130, 131, 132, 133, 134, 135, \
291 136, 137, 138, 139, 140, 141, 142, 143, 144, \
292 145, 146, 147, 148, 149, 150, 151, 152, 153, \
293 154, 155, 156, 157, 158, 159, 160, 161, 162, \
294 163, 164, 165, 166, 167, 168, 169, 170, 171, \
295 172, 173, 174, 175, 176, 177, 178, 179, 180, \
296 181, 182, 183, 184, 185, 186, 187, 188, 189, \
297 190, 191, 192, 193, 194, 195, 196, 197, 198, \
298 199, 200, 201, 202, 203, 204, 205, 206, 207, \
299 208, 209, \
300 }
301
302 #define CONFIG_SYS_NAND_ECCSIZE 512
303 #define CONFIG_SYS_NAND_ECCBYTES 26
83 "nandroot=ubi0:rootfs rw ubi.mtd=4,4096\0" \
84 "nandrootfstype=ubifs rootwait=1\0" \
85 "nandboot=echo Booting from nand ...; " \
86 "run nandargs; " \
87 "nandecc hw 16; "\
88 "setenv loadaddr 0x82000000; " \
89 "setenv fdtaddr 0x88000000; "\
90 "nandecc hw 16; "\
91 "nand read ${loadaddr} 0x240000 0x480000; "\
92 "nandecc hw 16; "\
93 "nand read ${fdtaddr} 0x6C0000 0x80000; "\
94 "bootz ${loadaddr} - ${fdtaddr} ;\0"
上面的参数配置就是有关 nand 224,4096,256的配置
在烧写的时候,也要 nand hw 16, 在 omap_gpmc.c 里面还要添加
935 } else if (eccstrength == 8) {
936 err = omap_select_ecc_scheme(nand,
937 OMAP_ECC_BCH8_CODE_HW,
938 mtd->writesize, mtd->oobsize);
939 } else if (eccstrength == 16) {
940 err = omap_select_ecc_scheme(nand,
941 OMAP_ECC_BCH16_CODE_HW,
942 mtd->writesize, mtd->oobsize);
943 printf("hw 16 writesize : %d oobsize :%d\n", mtd->writesize, mtd->oobsize);
u-boot2016.05 有关 4096page size , oob == 224 nand 的移植支持的更多相关文章
- Nand: OOB BBT ECC PEB LEB
OBB: 例如Samsung K9F1208U0B,数据存储容量为64MB,采用块页式存储管理.8个I/O 引脚充当数据.地址.命令的复用端口.芯片内部存储布局及存储操作特点: 一片Nand flas ...
- Nand 的几个名词:oob,bbt,ecc
转:http://blog.csdn.net/lanmanck/article/details/4230904 例如Samsung K9F1208U0B,数据存储容量为64MB,采用块页式存储管理.8 ...
- 【转】Bootloader之uBoot简介(转)
原文网址:http://blog.csdn.net/sadamoo/article/details/8139946 来自http://blog.ednchina.com/hhuwxf/1915416/ ...
- Bootloader之uBoot简介
本文转载自:http://blog.ednchina.com/hhuwxf/1915416/message.aspx 一.Bootloader的引入 从前面的硬件实验可以知道,系统上电之后,需要一段程 ...
- Bootloader之uBoot简介(转)
来自http://blog.ednchina.com/hhuwxf/1915416/message.aspx,感谢作者 一.Bootloader的引入从前面的硬件实验可以知道,系统上电之后,需要一段程 ...
- sysadmin_basement
基本部分 1. 系统硬件 1.1. 主板 获取序列号 $ sudo dmidecode -t system |grep -i Serial Serial Number: CNU9032T3N 获取厂商 ...
- AM335x(TQ335x)学习笔记——Nand&&网卡驱动移植
移植完成声卡驱动之后本想再接再励,移植网卡驱动,但没想到的是TI维护的内核太健壮,移植网卡驱动跟之前移植按键驱动一样简单,Nand驱动也是如此,于是,本人将Nand和网卡放在同一篇文章中介绍.介绍之前 ...
- 移植Python3到TQ2440(一)
平台 硬件:TQ2440 64MB内存 256MB NandFlash bootloader:U-Boot 2015.04 kernel:linux-4.9 Python: Python-3.6.0 ...
- AM335x(TQ335x)学习笔记——Nand&&网卡驱动移植
移植完毕声卡驱动之后本想再接再励,移植网卡驱动,但没想到的是TI维护的内核太健壮,移植网卡驱动跟之前移植按键驱动一样简单,Nand驱动也是如此,于是,本人将Nand和网卡放在同一篇文章中介绍.介绍之前 ...
随机推荐
- xtrabackup 源码安装
安装依赖包:这些依赖包必须要先安装好 # yum install cmake libaio-devel ncurses-devel bzip2-devel libxml2-devel libgcryp ...
- html5 audio组件禁止下载
参考链接:https://wdd.js.org/audio-hide-download-icon.html 1. controlsList=”nodownload”// 这个方法只支持 Chrome ...
- C#中关于DataGridView行和列的背景色-前景色设置
关于DataGridView行和列的背景色-前景色设置 1.设定DataGridView全部单元格的Style DataGridView内所有单元格的Style变更,可以使用DataGridView ...
- Linux下多路复用IO接口epoll/select/poll的区别
select比epoll效率差的原因:select是轮询,epoll是触发式的,所以效率高. Select: 1.Socket数量限制:该模式可操作的Socket数由FD_SETSIZE决定,内核默认 ...
- Django基于正则表达式的URL(2)
Django基于正则表达式的URL(2) 1. 关于正则的说明 url(r'^detail-(\d+)-(\d+).html',views.detail), 当客户端输入 127.0.0.1:8000 ...
- Hadoop JobTracker和NameNode运行时参数查看
1)JobTracker运行时参数: hadoop@ubuntu:/home/zhangchao3$ ps -ef | grep job hadoop 29563 1 0 11:34 pts/12 ...
- 一种解决新版本API完全兼容老版本API的方法
原文:http://android.eoe.cn/topic/android_sdk 这节课程我们讨论如何创建一个实现类,即能对应新版本的API,又能够保持对老版本API的支持. * 寻找一个替代的解 ...
- [LeetCode] Shortest Word Distance I & II & III
Shortest Word Distance Given a list of words and two words word1 and word2, return the shortest dist ...
- Android 消息分发机制
Android 中针对耗时的操作,放在主线程操作,轻者会造成 UI 卡顿,重则会直接无响应,造成 Force Close.同时在 Android 3.0 以后,禁止在主线程进行网络请求. 针对耗时或者 ...
- 译: 2. Apache Axis2安装指南
Apache Axis2安装指南 本文档提供有关Axis2分发包,系统先决条件以及设置环境变量和工具的信息,然后提供有关安装方法的详细说明. 请将您的反馈发送至:java-dev@axis.apach ...