Home > FreeRunner, polish > Android upgrade … kernel >2mb

Android upgrade … kernel >2mb

Ostatni update Android’a na OpenMoko dostępny jest w katalogu Sean McNeil‘a na people.openmoko.org … niestety uImage (kernel) ma ponad 2mb i nie można go bez problemowo wrzucić na FreeRunner’a gdyż domyślnie uboot odczytuje maksymalnie 2mb jądra (co powoduje błąd sumy CRC) … ale przecież to jest OpenMoko, więc:

  1. boot’ujemy Neo do NOR’a lub  NAND’a (tj. przytrzymujemy przyciski AUX i POWER, kolejność wciśnięcia jest ważna gdyż od niej  zależy to do jakiego rodzaju pamięci się zabootujemy; więcej na wiki OpenMoko)
  2. podpinamy Moko przez usb do komputera
  3. odpalamy komendę:
    screen /dev/tty.usbmodem0000001

    (nazwa urządzenia wzięta jest z MacOs X’a; na którym obecnie (sic!) pracuję :| )

  4. to powinno nas podłączyć do shell’a, następnie wklepujemy tą komende:
    setenv bootcmd setenv bootargs \${bootargs_base} \${mtdparts}\; nand read.e 0x32000000 kernel 0x300000\; bootm 0x32000000

    modyfikuje ona tablicę zmiennych ENV, dokładniej wpis dla bootcmd w taki sposób, że pozwala na odczytanie do 3mb danych dla kernela

  5. teraz wystarczy:
    saveenv

    i już możemy się cieszyć z możliwości zabotowania jądra większego niż 2mb ;>

Modyfikacja zmiennych uboot’a może “zabić” Twoje Neo, więc radzę robić to z rozwagą; jeżeli nie wiesz co robisz to po prostu tego nie rób !

Opis rozwiązania problemu znalazłem w tym wątku.

Miłej i rozważnej zabawy ;>

  1. Lech Karol Pawłaszek
    Grudzień 6th, 2008 at 12:48 | #1

    :P A ja po prostu używam Qi…

  2. Grudzień 6th, 2008 at 14:26 | #2

    o ile mnie pamiec nie myli to Qi potrafi boot’owac tylko system z karty; ale moge sie mylic …

  1. Brak jeszcze trackbacków