使用UBOOT体验NOR FLASH 的操作(开发板设为NOR启动,进入UBOOT)
1.使用OpenJATAG烧写UBOOT到NOR FLASH,启动,
1.读数据
md.b 0
2.读ID
往地址555H写AAH
往地址2AAH写55H
往地址555H写90H
读0H地址得到厂家ID C2H
读1H地址得到设备ID 22DAH 或 225BH
退出读ID,往任意地址写F0H
2440的A1接到NOR的A0,所以2440发出的(555H<<1),NOR才能收到555H这个地址
UBOOT怎么操作
往地址AAAH写AAH mw.w aaa aa
往地址554H写55H mw.w 544 55
往地址AAAH写90H mw.w aaa 90
读0H地址得到厂家ID C2H md.w 0 1
读2H地址得到设备ID 22DAH 或 225BH md.w 2 1
退出读ID: mw.w 0 f0
NOR有两种规范: jedec, cfi (common flash interface)
读CFI信息
NOR手册上:
进入CFI模式 往55H写入98H
读数据: 读10H得到0051
读11H得到0052
读12H得到0059
读27H得到容量
2440的A1接到NOR的A0,所以2440发出的(555H<<1),NOR才能收到555H这个地址
UBOOT怎么操作
进入CFI模式 往AAH写入98H mw.w aa 98
读数据: 读20H得到0051 md.w 20 1
读22H得到0052 md.w 22 1
读24H得到0059 md.w 24 1
读4EH得到容量 md.w 4e 1
退出 mw.w 0 f0
写数据 在1M的地方0x100000 写0x1234
NOR手册:
往地址555H写AAH
往地址2AAH写55H
往地址555H写A0H
往program adress写program data
UBOOT怎么操作
往地址AAAH写AAH mw.w aaa aa
往地址554H写55H mw.w 554 55
往地址AAAH写A0H mw.w aaa a0
往program adress写program data 往0x100000写0x1234 mw.w 100000 1234
======================================================================================================
测试:
1. ls /dev/mtd*
2. insmod s3c_nor.ko
3. ls /dev/mtd*
4. 格式化:flash eraseall -j /dev/mtdblock1 /*eraseall --help中可以看到-j表示格式化成jffs2*/
5. 挂接 mount -t jffs2 /dev/mtdblock1 /mnt
cd /mnt/
ls
vi 1.txt 输入信息
unmount /mnt
6. 重启 reboot 或断电重启
insmod s3c_nor.ko
ls /dev/mtd*
mount -t jffs2 /dev/mtdblock1 /mnt
cd /mnt
ls
cat 1.txt