Blame view
include/mtd/nftl-user.h
2 KB
1da177e4c Linux-2.6.12-rc2 |
1 |
/* |
a1452a377 mtd: Update copyr... |
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
* Copyright © 1999-2010 David Woodhouse <dwmw2@infradead.org> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
1da177e4c Linux-2.6.12-rc2 |
17 18 19 20 21 |
* */ #ifndef __MTD_NFTL_USER_H__ #define __MTD_NFTL_USER_H__ |
ccef7ab53 make MTD headers ... |
22 |
#include <linux/types.h> |
1da177e4c Linux-2.6.12-rc2 |
23 24 25 26 |
/* Block Control Information */ struct nftl_bci { unsigned char ECCSig[6]; |
ccef7ab53 make MTD headers ... |
27 28 |
__u8 Status; __u8 Status1; |
1da177e4c Linux-2.6.12-rc2 |
29 30 31 32 33 |
}__attribute__((packed)); /* Unit Control Information */ struct nftl_uci0 { |
ccef7ab53 make MTD headers ... |
34 35 36 37 |
__u16 VirtUnitNum; __u16 ReplUnitNum; __u16 SpareVirtUnitNum; __u16 SpareReplUnitNum; |
1da177e4c Linux-2.6.12-rc2 |
38 39 40 |
} __attribute__((packed)); struct nftl_uci1 { |
ccef7ab53 make MTD headers ... |
41 42 43 |
__u32 WearInfo; __u16 EraseMark; __u16 EraseMark1; |
1da177e4c Linux-2.6.12-rc2 |
44 45 46 |
} __attribute__((packed)); struct nftl_uci2 { |
ccef7ab53 make MTD headers ... |
47 48 49 |
__u16 FoldMark; __u16 FoldMark1; __u32 unused; |
1da177e4c Linux-2.6.12-rc2 |
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
} __attribute__((packed)); union nftl_uci { struct nftl_uci0 a; struct nftl_uci1 b; struct nftl_uci2 c; }; struct nftl_oob { struct nftl_bci b; union nftl_uci u; }; /* NFTL Media Header */ struct NFTLMediaHeader { char DataOrgID[6]; |
ccef7ab53 make MTD headers ... |
67 68 69 |
__u16 NumEraseUnits; __u16 FirstPhysicalEUN; __u32 FormattedSize; |
1da177e4c Linux-2.6.12-rc2 |
70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
unsigned char UnitSizeFactor; } __attribute__((packed)); #define MAX_ERASE_ZONES (8192 - 512) #define ERASE_MARK 0x3c69 #define SECTOR_FREE 0xff #define SECTOR_USED 0x55 #define SECTOR_IGNORE 0x11 #define SECTOR_DELETED 0x00 #define FOLD_MARK_IN_PROGRESS 0x5555 #define ZONE_GOOD 0xff #define ZONE_BAD_ORIGINAL 0 #define ZONE_BAD_MARKED 7 #endif /* __MTD_NFTL_USER_H__ */ |