The K2 (fw-2.5.4) storage layout, the DX(G) should be the same:
Code:
[root@kindle root]# cat /proc/partitions
major minor #blocks name
7 0 1560656 loop0
31 0 128 mtdblock0
31 1 3584 mtdblock1
31 2 32 mtdblock2
31 3 128 mtdblock3
31 4 3584 mtdblock4
31 5 64 mtdblock5
31 6 128 mtdblock6
31 7 24 mtdblock7
31 8 64 mtdblock8
179 0 2007040 mmcblk0
179 1 411277 mmcblk0p1
179 2 34596 mmcblk0p2
179 4 1560664 mmcblk0p4
Where:
Code:
mxc_nor_flash.0: Found 1 x16 devices at 0x0 in 16-bit bank
erase region 0: offset=0x0,size=0x2000,blocks=8
erase region 1: offset=0x10000,size=0x10000,blocks=127
mxc_nor_flash.0: 1 set(s) of 1 interleaved chips --> 16 partitions of 512 KiB
Creating 9 MTD partitions on "mxc_nor_flash.0":
0x00020000-0x00040000 : "Bootloader1"
0x00060000-0x003e0000 : "Kernel1"
0x00008000-0x00010000 : "BoardId"
0x00040000-0x00060000 : "Bootloader2"
0x00400000-0x00780000 : "Kernel2"
0x00010000-0x00020000 : "BootEnv"
0x003e0000-0x00400000 : "Diags"
0x00000000-0x00006000 : "Vectors"
0x00010000-0x00020000 : "unused0"
That NOR flash memory layout:
Code:
0x00000000-0x00006000 : "Vectors" ( 24*1024) mtdblock7
# Unassigned:
0x00006000-0x00008000 : ???? ( 8*1924)
0x00008000-0x00010000 : "BoardId" ( 32*1024) mtdblock2
# A small case of double assignment here (may be fixed in later fw versions)
0x00010000-0x00020000 : "unused0" ( 64*1024) mtdblock8
0x00010000-0x00020000 : "BootEnv" ( 64*1924) mtdblock5
0x00020000-0x00040000 : "Bootloader1" ( 128*1024) mtdblock0
0x00040000-0x00060000 : "Bootloader2" ( 128*1024) mtdblock3
0x00060000-0x003e0000 : "Kernel1" (3584*1024) mtdblock1
0x003e0000-0x00400000 : "Diags" ( 128*1024) mtdblock6
0x00400000-0x00780000 : "Kernel2" (3584*1024) mtdblock4
# Unassigned:
0x00780000-0x007FFFFF : ???? ( 512*1024)
The NAND flash layout:
Code:
Units = cylinders of 7688 * 512 = 3936256 bytes
Device Boot Start End Blocks Id System
/dev/mmcblk0p1 * 1 107 411277 83 Linux
/dev/mmcblk0p2 108 116 34596 83 Linux
/dev/mmcblk0p4 117 522 1560664 b Win95 FAT32
Where:
Code:
/dev/root on / type ext3 (ro,noatime,nodiratime,data=ordered) a.k.a: /dev/mmcblk0p1
/dev/mmcblk0p2 on /var/local type ext3 (rw,sync,data=ordered)
fsp on /mnt/us type fuse.fsp (rw,nosuid,nodev,user_id=0,group_id=0) a.k.a: USB mass storage
/dev/loop/0 on /mnt/base-us type vfat (rw,noexec,noatime,nodiratime,fmask=0022,dmask=0022,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8)
## (Which is /dev/mmcblk0p4 - 8192 byte DOS disk label)
# What the user sees of /dev/mmcblk0p4:
Units = cylinders of 64 * 512 = 32768 bytes
Device Boot Start End Blocks Id System
/dev/mmcblk0p4p1 1 48770 1560632 b Win95 FAT32
Now - off to start copying out this stuff in an organized manner as a step towards de-bricking my K2i.
Edit:
The kernel image is using 1844 of the 3584, 1024byte blocks allowed.
Plenty of room for some additions.