D-Link DIB-120 с прошивкой TVIP разбивка MTD NOR Flash 32MB

From CFE

   flash0.a0_rootfs  New CFI flash at 1E000000 offset 00000000 size 18432KB
        flash0.html  New CFI flash at 1E000000 offset 01200000 size 2048KB
      flash0.kernel  New CFI flash at 1E000000 offset 01400000 size 2048KB
   flash0.b0_kernel  New CFI flash at 1E000000 offset 01600000 size 1792KB
   flash0.b0_rootfs  New CFI flash at 1E000000 offset 017C0000 size 4352KB
         flash0.cfe  New CFI flash at 1E000000 offset 01C00000 size 768KB
      flash0.splash  New CFI flash at 1E000000 offset 01CC0000 size 512KB
   flash0.a0_config  New CFI flash at 1E000000 offset 01D40000 size 2688KB
         flash0.gap  New CFI flash at 1E000000 offset 01FE0000 size 126KB
 flash0.shmoo_ncdls  New CFI flash at 1E000000 offset 01FFF7F0 size 1KB
      flash0.macadr  New CFI flash at 1E000000 offset 01FFF800 size 1KB
       flash0.nvram  New CFI flash at 1E000000 offset 01FFF890 size 2KB

From Linux

mtd0 0x00000000-0x01200000 : "a0_rootfs"
mtd1 0x01200000-0x01400000 : "html"
mtd2 0x01400000-0x01600000 : "kernel"
mtd3 0x01600000-0x017c0000 : "a0_kernel"
mtd4 0x017c0000-0x01c00000 : "b0_rootfs"
mtd5 0x01c00000-0x01cc0000 : "cfe"
mtd6 0x01cc0000-0x01d40000 : "splash"
mtd7 0x01d40000-0x01fc0000 : "a0_config"
mtd8 0x01fc0000-0x01fe0000 : "variable"
mtd9 0x01fe0000-0x02000000 : "misc"

Маппинг блоков tvip_firmware

kernel.img -> vmlinux (/dev/mtd2)
rootfs.img -> a0_rootfs (/dev/mtd0)
iptv.img -> b0_rootfs (/dev/mtd4)
cfe.img -> cfe (/dev/mtd5)
splash.img -> splash (/dev/mtd6)

Формат splash

SPLASH_SRC=splash_720_480.jpg
SPLASH_DST=splash_720_480.dib120.img
#making splash image
printf "SPLASH\0%08x\0%04x\0%04x\0%c\0" `stat -c%s ${SPLASH_SRC}` 720 480 N> ${SPLASH_DST}; cat ${SPLASH_SRC} >> ${SPLASH_DST}

Оригинальный скрипт от D-Link: см. файл mksplash.sh


Перевод этой страницы: