MMB-422.HDTV/Technische Infos

Partitionierung(2.2)

 * 4GB-NAND, Partitionslayout:
 * baseparam (16M)
 * logo (16M)
 * fastplay (24M)
 * cache (32M)
 * misc (8M)
 * kernel (32M)
 * system (480M)
 * userdata (480M)
 * factorydata (32M)
 * blackbox (8M)
 * sdcard (2968M)
 * 4MB-SPIFlash, Partitionslayout:
 * fastboot (448K)
 * bootargs (64K)
 * recovery (3456K)
 * boardconfig (64K)
 * deviceinfo (64K)

Partitionierung(4.0)

 * 4GB-NAND, Partitionslayout:
 * baseparam (6M)
 * logo (8M)
 * fastplay (10M)
 * cache (30M)
 * misc (10M)
 * kernel (10M)
 * system (400M)
 * userdata (234M)
 * blackbox (4M)
 * sdcard (1336M)
 * 4MB-SPIFlash, Partitionslayout:
 * fastboot (448K)
 * bootargs (64K)
 * recovery (3520K)
 * deviceinfo (64K)

Bootloader
Der Bootloader sitzt in der Partition "fastboot". Die Namensgebung ist etwas unglücklich gewählt, da es sich hierbei nicht um Android's Fastboot handelt sondern um einen modifizierten "U-Boot"-Bootloader.

Über die serielle Schnittstelle(ttyAMA0) kann man Zugang zu diesem Bootloader bekommen indem man STRG*C drückt wenn die Meldung "Press Ctrl+C to stop autoboot" erscheint.

fastboot3.0-svn718 (Nov 17 2011 - 09:06:10) ETH FastBoot: V3.0 Machine ID:   8000 v0 Build Date:    Nov 17 2011, 09:06:21 Serial Number: godbox DRAM: 256 MiB NAND: Special Nand id table Version 1.23 Nand ID: 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF Nand(Auto): Block:2MB Page:8KB Chip:4GB*1 OOB:368B ECC:24bits/1K 4096 MiB Spi(cs1) ID: 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF Spi(cs1): Block:64KB Chip:4MB Name:"W25Q32BV" In:   serial Out:  serial Err:  serial init hi_gpio success.\0x09 get_fastPlay_logoMemInfo,891: para_hdr->logoMtdSize = 24576 g_gfxMode: WBC Mode JPG_Decode: Line 738 : Hard dec Do not include fastplay data get_fastPlay_playMemInfo,970: Read play Param check err ChipType:2,ChipVersion:257 mac:00:11:22:33:44:55 Press Ctrl+C to stop autoboot fastboot#

Befehlsliste
Weitere Infos zu den Befehlen findet man hier: | U-Boot Quick Reference ?      - alias for 'help' base   - print or set address offset bootm  - boot application image from memory bootp  - boot image via network using BOOTP/TFTP protocol cmp    - memory compare cp     - memory copy crc32  - checksum calculation getinfo - print hardware information go     - start application at address 'addr' help   - print command description/usage loadb  - load binary file over serial line (kermit mode) loady  - load binary file over serial line (ymodem mode) loop   - infinite loop on address range md     - memory display mii    - MII utility commands mm     - memory modify (auto-incrementing address) mtest  - simple RAM read/write test mw     - memory write (fill) nand   - NAND sub-system nboot  - boot from NAND device nm     - memory modify (constant address) ping   - send ICMP ECHO_REQUEST to network host printenv- print environment variables rarpboot- boot image via network using RARP/TFTP protocol reset  - Perform RESET of the CPU saveenv - save environment variables to persistent storage setenv - set environment variables sf     - SPI flash sub-system tftp   - tftp\0x09- download or upload image via network using TFTP protocol

Recovery
Ins Recovery kommt man, wenn man den Powerbutton während dem Einschalten gedrückt hält oder das Recovery-Flag in die misc-Partition setzt und dann neustartet. Die Option zum Wiederherstellen der Werkseinstellungen in den Android-Einstellungen verwendet den 2.Weg.

Der 2.Weg ist allerdings gefährlich für den Fall, dass die Recovery-Partition beschädigt ist, da man den automatischen Start dann selbst über die serielle Schnittstelle nicht mehr unterbrechen kann.

Die Update-Pakete müssen signiert sein und wie man im unten stehenden Ablauf sieht startet die Box sofort neu wenn sie mit allem fertig ist. ADB-Zugriff ist ebenfalls nicht möglich.

Ablauf des Recovery-Boots

 * Setzen des Bootloader-Flags auf "boot-recovery"
 * Prüfen auf Recovery-Befehl in "/cache/recovery/command"
 * Existiert die Datei und steht ein gültiger Befehl drin so wird dieser ausgeführt
 * ansonsten werden die Dateien "update_system.zip" und "update_app.zip" installiert.
 * Setzen des Bootloader-Flags auf ""
 * Wenn die Datei "update_system.zip" installiert wurde wird das Flag stattdessen auf "boot-recovery" gesetzt und ein Befehl in die command-Datei geschrieben der die Datei "update_app.zip" installiert.
 * Neustart