Vxworks下flash驱动编写流程

本文详细介绍了在VxWorks操作系统中,如何编写Flash驱动,特别是MTD和Socket两层的实现。MTD层负责Flash设备的识别、读写和擦除,而Socket层提供硬件控制函数。在TrueFFS文件系统中,MTD层的初始化在Flash设备创建时完成,而Socket层的初始化在sysTffsInit函数中进行。BSP工程师主要关注Socket层注册和MTD层注册这两个关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

Vxworks下flash系统结构图:



作为BSP开发人员,我们要实现的是MTD和socket两块,其它的是由文件系统自己守成的。

  MTD层

该层提供Flash 设备识别,读写,擦除,地址映射函数的具体实现。该层实现由 Flash 驱动

开发人员完成。该层将实现在BSP 下tffsConfig.c 以及 tffsXXX.c 文件中。其中tffsConfig.c

定义有MTD 层一个重要的数组mtdTable,该数组中保存了 MTD 层实现的所有Flash 设备

的识别函数,这些识别函数将完成MTD层实现向上层的注册。

Socket 层

该层提供底层块设备硬件的控制函数实现,这些函数包括电源管理函数,Flash设备探测函数,Flash设备容量(又称窗口)设置函数,以及Socket层注册函数。Socket注册函数将以上定义的这些设备控制函数注册给TrueFFS 其他子层次使用。该层实现由 Flash 驱动开发人员完成。该层将实现在BSP 目录下sysTffs.c 文件中。注意此处的 sysTffs.c 文件名以及以上的usrConfig.c 文件名都是系统要求的,必不可随意更改,而 MTD 层具体实现文件tffsXXX.c的文件名则可自定义,如定义为 tffsMtd.c。

 

在TrueFFS 中间层的内部四个层次中,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值