- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
uboot下nor flash操作
uboot 下 CFI Nor Flash 的使?用
韩?大卫@吉林师范?大学
2015.1.23
Flash : Micron Technology. 32MB.
Uboot: 2_3_0
CPU平台: Cavium Inc
交叉编译器: mips64-octeon-linux-gnu-gcc (Cavium Inc. Version: 2_3_0
build 128) 4.3.3
nor flash 的使?用特点是 : 读操作可以按地址读, 写之前必须进?行擦除, ?一旦擦除
必须擦除整个扇区.
新型的flash 使?用3V 的电压便可以进?行整个扇区的擦除和写?入操作
任何芯?片的使?用, 都离不开驱动的?支持. uboot下的nor flash的驱动逻辑?非常简
单. ?而且, 对于符合 CFI ( Common Flash Interface )规范的flash芯?片,驱动有很
?大的通?用性.
uboot 提供了很好的 flash 驱动逻辑 和 flash的使?用范例, 这些基本的使?用?方法
在linux?里也是同样的逻辑,只不过linux下需要加上?一层分区信息. 结合flash 芯?片
?手册, 可以对nor flash的使?用逻辑有较为清晰的理解.
nor flash的驱动初始化部分:
arch/mips/cpu/octeon/start.S
board_init_r - flash_init()
drivers/mtd/cfi_flash.c
unsigned long flash_init (void)
{
for (i = 0; i CONFIG_SYS_MAX_FLASH_BANKS; ++i) {
flash_info[i].flash_id = FLASH_UNKNOWN;
…
//由于使?用的flash 是新型的CFI 规范的flash, 没有使?用
CONFIG_FLASH_CFI_LEGACY 这个宏, 所以flash_detect_legacy直接返回0
if (!flash_detect_legacy(cfi_flash_bank_addr(i), i))
flash_get_size(cfi_flash_bank_addr(i), i);
size += flash_info[i].size;
ulong flash_get_size (phys_addr_t base, int banknum)
{
flash_info_t *info = flash_info[banknum];
int i, j;
flash_sect_t sect_cnt;
phys_addr_t sector;
unsigned long tmp;
int size_ratio;
uchar num_erase_regions;
int erase_region_size;
int erase_region_count;
struct cfi_qry qry;
unsigned long max_size;
memset(qry, 0, sizeof(qry));
info-ext_addr = 0;
info-cfi_version = 0;
#ifdef CONFIG_SYS_FLASH_PROTECTION
info-legacy_unlock = 0;
#endif
info-start[0] = (ulong)map_physmem(base, info-portwidth,
MAP_NOCACHE);
//如果是CFI 接?口, 那么有统?一的查询规范, 将查询到的信息保存到 qry中
if (f
您可能关注的文档
- Thermal expansion of solid solutions Kr-CH4 at temperatures of liquid helium.pdf
- Thermal Noise Analysis in ECG Applications.pdf
- Thermal noise in half infinite mirrors with non-uniform loss a slab of excess loss in a hal.pdf
- Thermal+analysis+of+surface-mounted+permanent+magnet+synchronous+motor+for+electric+vehicle+applicat.pdf
- Thermal-hydraulic performance of heavy liquid metal in straight-tube U-tube heat exchangersand.pdf
- Thermodynamical limit in non-extensive and Renyi statistics.pdf
- Thermodynamics_Chap_4 Energy Balance for Control Volume.pdf
- Thermophysical properties of ionic liquid {1-butyl-3-methylimidazolium离子液+醇水jct2013.pdf
- TheWiseOldMan_.ppt
- The_effects.pdf
- 洋葱销售SOP流程及关键动作相关知识测试试卷.docx
- 深度解析《GBT 43841-2024内蒙古绒山羊》.pptx
- 电气设备运维及机械部件相关知识测试试卷.docx
- 深度解析《GBT 43843-2024网络协同制造平台数据服务要求》.pptx
- 思维倾向与开放性自我评估试卷.docx
- 危险化学品企业特殊作业安全相关知识考试试卷.docx
- 深度解析《GBT 43844-2024IPv6地址分配和编码规则 接口标识符》.pptx
- 智慧教学整体解决方案(1).doc
- 多重耐药菌感染防治知识及预防措施试卷.docx
- 深度解析《GBT 43845-2024基于扫描氮-空位探针的微弱静磁场成像测量方法》.pptx
文档评论(0)