Keresés

Új hozzászólás Aktív témák

  • vargalex

    félisten

    válasz vargalex #712 üzenetére

    Nos, megnéztem a flash chip adatlapját, illetve ismételten a partíciók felosztását.

    Az adatlapból az látszik, hogy a flash 64 KB-os blokkméretet használ. Viszont a radio partíció 0x34000-nél kezdődik, ami: 0x34000 = 212992. 212992 / 1024 = 208. 208/64 = 3,25. Azaz nem blokk határon kezdődik a partíció. Ugyan így igaz ez a factory partícióra is: 0x38000 = 229376, 229378/1024/64=3,5. Csak gondolom a factory partíció írásáig senki nem jutott el. :)

    Az u-boot-env partíció blokk határon kezdődik: 0x30000 = 196608, 196608/1024/64=3. Tehát annak sikeres az írása.

    Így azt találtam ki megoldásnak, hogy build-elek egy olyan LEDE firmware-t, amiben definiálok egy új partíciót (mondjuk backup néven), ami az u-boot-env+radio+factory+defaults partíciók összessége lesz. Ez ugye blokk határon fog kezdődni, összesen 128KB, azaz 2 blokk.

    Ezzel a megoldással a korábban készített mentés is visszaírható majd, csak össze kell másolni egybe a korábbi mentéseket:

    cat u-boot-env.backup radio.backup factory.backup defaults.backup > backup.backup

    majd fel is lehet írni:

    mtd -r /tmp/backup.backup backup

    Ha minden jól megy, még ma build-elek.

    Szerk.: Padavan alatt azért sikerült visszaírni, mert ott a Config és a Factory partíció is blokkhatáron kezdődik, illetve a mértük is a blokkméret többszöröse.

    [ Módosította: Intruder2k5 ]

    Alex

Új hozzászólás Aktív témák