|
|
Wiki > Main > RKWFileFormat (compare)
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Difference: RKWFileFormat (r8 vs. r7)This page is currently incomplete IntroductionRockchip rk27xx based players use firmware file in RKW format. RKLD sectionHeaderThe header is 0x2C bytes long and consists of such fields:
Firmware imageThe firmware is regular arm, little-endian code image. Usually the very first instruction is a branch - beautiful gift for us as this makes easy to inject our code. CRC32Optionally(?), last 4 bytes of the RKW are CRC32 of the firmware part (and loader seems to check this if 0x20000000 flag is present in ImageLoadOptions field of the header. The crc32 routine is known and seems to be standard crc32 with polynomial 0x04c10db7. There is a tool for manipulating RKWs (thanks to alemaxx) it's crc32 routine is based on lengthy lookup table so I will not document it here. Go read rkwpatch sources instead. There is also file genrkcrc.c floating around which uses the same algorithm to calculate crc32 of rockchip firmware as far as I can tell and is used on rk28xx based android tablets to calculate checksum for boot.img. RKRS sectionHeader
Named Entries Struct
RKTS sectionr10 - 11 Feb 2011 - 22:03:47 - MarcinBukat
Revision r8 - 01 Feb 2011 - 22:59 - MarcinBukatRevision r7 - 31 Jan 2011 - 22:33 - MarcinBukat Copyright © by the contributing authors.
|