当前位置:  技术问答>linux和unix

MTD驱动擦除地址的问题

    来源: 互联网  发布时间:2016-10-12

    本文导语:  系统中有两片NOR FLash,文件系统为jffs2格式,分区如下 #define FLASH_BASE_ADDR 0x80000000 //每片4M #define FLASH_BASE_ADDR_2 0x81000000 //第二片4M #define FLASH_SIZE 0x400000 /*4 MB*/ #define BUS_WIDTH 2 //flash 信息 static struct map_info...

系统中有两片NOR FLash,文件系统为jffs2格式,分区如下

#define FLASH_BASE_ADDR 0x80000000 //每片4M
#define FLASH_BASE_ADDR_2 0x81000000 //第二片4M

#define FLASH_SIZE 0x400000 /*4 MB*/
#define BUS_WIDTH 2
//flash 信息
static struct map_info lpc24xx_map[2] = {
{
.name = "NXP lpc24xx1",
.bankwidth = BUS_WIDTH,
.size = FLASH_SIZE,
.phys = FLASH_BASE_ADDR,
}
,{
.name = "NXP lpc24xx2",
.bankwidth = BUS_WIDTH,
.size = FLASH_SIZE,
.phys = FLASH_BASE_ADDR_2,
}
};
//分区表
static struct mtd_partition lpc24xx_partitions[] = {
        {
                .name = "uboot",
                .size = 0x00040000, /*256 KB*/
                .offset = 0,                
.mask_flags = MTD_WRITEABLE,
        },{
                .name = "Kernel",
                .size = 0x00180000, /*1.5 MB*/
                .offset = MTDPART_OFS_APPEND,
                .mask_flags = MTD_WRITEABLE,
        },{
                .name = "jffs2", /*2.25 MB*/
                .size = MTDPART_SIZ_FULL,
                .offset = MTDPART_OFS_APPEND,
}
};

static struct mtd_partition lpc24xx_partitions1[] = {
{
.name = "user",
.size = 0x380000, /*3.5 MB*/
.offset = 0,
},{
                .name = "firecord",
                .size = 0x40000, /*256 KB*/
                .offset = MTDPART_OFS_APPEND,
        },{
        .name = "applycation", /*256 KB*/
                .size = MTDPART_SIZ_FULL,
                .offset = MTDPART_OFS_APPEND,
}
};



如分区信息显示,共分了6个区,需要对第4,5个分区进行擦除操作,记录一些历史事件,40字节一条一条的写,
我对其进行擦除除是,不知为什么为把文件系统给擦了,导致启动事panci
下面是makfile中的节点
mtd0,c,90,0      mtd1,c,90,1      mtd2,c,90,2 
mtd3,c,90,3      mtd4,c,90,4      mtd5,c,90,5 
mtdblock0,b,31,0 mtdblock1,b,31,1 mtdblock2,b,31,2 
mtdblock3,b,31,3 mtdblock4,b,31,4 mtdblock5,b,31,5 



//对其进行打开时,没有报错,
#define HisFile  "/dev/mtd4" //历史事件

   if ((Fd = open(HisFile, O_RDWR)) 

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 写入mtd的囧问题
  • MTD ECC 相关问题
  • linux内核空间操作flash mtd问题
  • mtd与mtdblock节点的对应问题
  • Linux MTD里的问题,请教大家。。。
  • Linux 2.6.12的内核,mips CPU, /dev/目录下mtd字符设备只能挂载7个的问题。
  • 关于直接编写应用程序读写/dev/mtd0 或者 /dev/mtdblock0的问题。
  • MTD字符设备和块设备有着什么样的关系????
  • mtd写入数据使用write函数有时会出错,困扰n天了 iis7站长之家
  • fat分区与mtd看看我的理解对不对
  • jffs2,MTD讨论
  • mtd写入数据使用write函数有时会出错,困扰n天了
  • 求助:如何将2.6.30上的jffs2/MTD相关代码移植到2.6.14上


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3