63 const TText8 KTocRofs5Generic[] = "ROFS5"; |
63 const TText8 KTocRofs5Generic[] = "ROFS5"; |
64 const TText8 KTocRofs6Generic[] = "ROFS6"; |
64 const TText8 KTocRofs6Generic[] = "ROFS6"; |
65 const TUint KNoOfROFSPartitions = 6; |
65 const TUint KNoOfROFSPartitions = 6; |
66 |
66 |
67 const TInt KSectorShift = 9; |
67 const TInt KSectorShift = 9; |
|
68 |
|
69 // Version Info const and enums |
|
70 |
|
71 enum |
|
72 { |
|
73 EHalGroupNandMedia = 28 |
|
74 }; |
|
75 |
|
76 |
|
77 /** |
|
78 The number of nand media attributes. |
|
79 |
|
80 It is simply defined by its position in the enumeration. |
|
81 */ |
|
82 enum TNandMediaHalFunction |
|
83 { |
|
84 EEraseBlockSize=1, /// nand device block size |
|
85 EIsEraseNeedBeforeWrite, /// erase command is mandatory before write |
|
86 EAtomicWriteSize, /// minimal size of data what can be written |
|
87 |
|
88 EGetVersionInfoItems=0x10, /// total amount of items in version info structure |
|
89 EGetVersionInfo /// get version info structure array from media driver |
|
90 }; |
|
91 |
|
92 |
|
93 /** |
|
94 The nand media devices enumeration. |
|
95 |
|
96 */ |
|
97 enum |
|
98 { |
|
99 ENandMediaDevice1=1 /// nand device1 |
|
100 }; |
|
101 |
|
102 |
|
103 const TUint8 KMaxSectionItems = 32; |
|
104 const TUint8 KMaxSectionNameLen = 12; |
|
105 const TUint8 KMaxVersionInfoLen = 28; |
|
106 |
|
107 const TUint32 KImageHeaderMagic = 0x31DEEAE8UL; |
|
108 |
|
109 // Image header always located after BB5_CommonHeader |
|
110 const TUint32 KImageHeaderOffset = 0x3D0; |
|
111 |
|
112 struct TVersionInfoItem |
|
113 { |
|
114 TText8 iSectionName[KMaxSectionNameLen]; |
|
115 TUint32 iSectionMaxSize; |
|
116 TUint32 iImageCompressedSize; |
|
117 TUint32 iImageSize; |
|
118 TText8 iVersion[KMaxVersionInfoLen]; |
|
119 }; |
|
120 |
|
121 |
|
122 // Image header |
|
123 // It is added after BB5_Common_Header |
|
124 struct TImageHeader |
|
125 { |
|
126 TUint32 iMagic; |
|
127 TUint32 iImageCompressedSize; |
|
128 TUint32 iImageSize; |
|
129 TUint32 iLoadAddress; |
|
130 TUint32 iReserved; |
|
131 TText8 iVersion[KMaxVersionInfoLen]; |
|
132 }; |
|
133 |
|
134 |
68 /** |
135 /** |
69 TOC access for kernel side clients. |
136 TOC access for kernel side clients. |
70 */ |
137 */ |
71 class Toc |
138 class Toc |
72 { |
139 { |