airos
Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
| Obě strany předchozí revizePředchozí verzeNásledující verze | Předchozí verze | ||
| airos [2016/11/06 12:47] – [Oprava loco M5] djbuldog | airos [2025/08/28 10:09] (aktuální) – upraveno mimo DokuWiki 127.0.0.1 | ||
|---|---|---|---|
| Řádek 8: | Řádek 8: | ||
| * http:// | * http:// | ||
| * https:// | * https:// | ||
| + | |||
| + | * BACHA BACHA... AirOS už neposkytuje SDK, pouze GPL archív s modifikacemi GPL kódu!! | ||
| + | * udělat si vlastní modifikaci AirOS je tedy složitější něž dříve | ||
| ===== upload fw ===== | ===== upload fw ===== | ||
| Řádek 38: | Řádek 41: | ||
| * bílý (RX) na SOUT | * bílý (RX) na SOUT | ||
| * zelený (TX) na SIN | * zelený (TX) na SIN | ||
| - | * klient | + | * klient |
| * v konzoli šlo vidět, že | * v konzoli šlo vidět, že | ||
| * startuje U-Boot 1.1.4.2-s445 (Sep 6 2010 - 14:46:33) | * startuje U-Boot 1.1.4.2-s445 (Sep 6 2010 - 14:46:33) | ||
| Řádek 116: | Řádek 119: | ||
| * že by za to mohla ta hláška o protected při nahrávání img? | * že by za to mohla ta hláška o protected při nahrávání img? | ||
| * ANO!! pro přepsání u-boot se musí použít speciální příkaz '' | * ANO!! pro přepsání u-boot se musí použít speciální příkaz '' | ||
| + | * už tam mám poslední verzi | ||
| + | |||
| + | ===== Aktuální img ===== | ||
| + | |||
| + | < | ||
| + | ar7240> mtdparts | ||
| + | |||
| + | device nor0 < | ||
| + | #: name size offset mask_flags | ||
| + | 0: u-boot | ||
| + | 1: u-boot-env | ||
| + | 2: kernel | ||
| + | 3: rootfs | ||
| + | 4: cfg | ||
| + | 5: EEPROM | ||
| + | |||
| + | active partition: nor0,0 - (u-boot) 0x00040000 @ 0x00000000 | ||
| + | |||
| + | defaults: | ||
| + | mtdids | ||
| + | mtdparts: mtdparts=ar7240-nor0: | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | ar7240> version | ||
| + | |||
| + | U-Boot 1.1.4.2-s956 (Jun 10 2015 - 10:54:50) | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | ar7240> imls | ||
| + | Image at 9F050000: | ||
| + | Image Name: MIPS Ubiquiti Linux-2.6.32.68 | ||
| + | | ||
| + | Image Type: MIPS Linux Kernel Image (lzma compressed) | ||
| + | Data Size: 1008812 Bytes = 985.2 kB | ||
| + | Load Address: 80002000 | ||
| + | Entry Point: | ||
| + | | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | ar7240> printenv | ||
| + | bootdelay=1 | ||
| + | baudrate=115200 | ||
| + | ethaddr=00: | ||
| + | filesize=73041f | ||
| + | fileaddr=5 | ||
| + | serverip=192.168.1.254 | ||
| + | ethact=eth0 | ||
| + | mtdparts=mtdparts=ar7240-nor0: | ||
| + | bootcmd=bootm 0x9f050000 | ||
| + | bootargs=console=ttyS0, | ||
| + | ipaddr=192.168.1.20 | ||
| + | stdin=serial | ||
| + | stdout=serial | ||
| + | stderr=serial | ||
| + | ubntaddr=80200020 | ||
| + | appinitdone=true | ||
| + | mtdids=nor0=ar7240-nor0 | ||
| + | partition=nor0, | ||
| + | mtddevnum=0 | ||
| + | mtddevname=u-boot | ||
| + | </ | ||
| + | |||
| + | ==== dmesg ==== | ||
| + | |||
| + | * nechápu to, ale najednou se ta krabička rozhodla, že nastartuje :D | ||
| + | * předcházelo tomu několik restartů | ||
| + | * mám příležitost kouknout do dmesg | ||
| + | * RAM je tedy dostupná od 0x00000000 - 0x02000000? | ||
| + | |||
| + | < | ||
| + | [ 0.000000] Determined physical RAM map: | ||
| + | [ 0.000000] | ||
| + | </ | ||
| + | |||
| + | * tohle už známe dobře | ||
| + | |||
| + | < | ||
| + | [ 0.073000] 6 cmdlinepart partitions found on MTD device ar7240-nor0 | ||
| + | [ 0.073000] Creating 6 MTD partitions on " | ||
| + | [ 0.073000] 0x000000000000-0x000000040000 : " | ||
| + | [ 0.075000] 0x000000040000-0x000000050000 : " | ||
| + | [ 0.076000] 0x000000050000-0x000000150000 : " | ||
| + | [ 0.077000] 0x000000150000-0x0000007b0000 : " | ||
| + | [ 0.079000] mtd: partition " | ||
| + | [ 0.079000] 0x0000007b0000-0x0000007f0000 : " | ||
| + | [ 0.080000] 0x0000007f0000-0x000000800000 : " | ||
| + | </ | ||
| + | |||
| + | ===== memtest ===== | ||
| + | |||
| + | * u-boot poskytuje přímo triviální memtest | ||
| + | < | ||
| + | mtest [start [end [pattern [iterations]]]] | ||
| + | </ | ||
| + | * m5 loco má 32MB RAM, tedy 0x00000000 - 0x02000000 | ||
| + | * při spuštění mtest se ale nesmí přepsat paměť u-boot/ | ||
| + | * u-boot v mtd tabulce velikost 0x00050000, test by měl tedy skončit před adresou 0x01FB0000 | ||
| + | * zkoušel jsem najít první adresu, na které test paměti selže | ||
| + | < | ||
| + | ar7240> mtest 0x00000000 0x01FA9709 | ||
| + | Pattern 00000000 | ||
| + | </ | ||
| + | * poslední adresa, na které test jde spustit je | ||
| + | < | ||
| + | ar7240> mtest 0x00000000 0x01FA9708 | ||
| + | </ | ||
| + | * ale.. když použiji pattern 0xffffffff, tak musím adresu ještě snížit | ||
| + | < | ||
| + | ar7240> mtest 0x00000000 0x01FA9704 0xffffffff | ||
| + | </ | ||
| + | * test nejspíš zapíše vzorek a pak ho zkusí přečíst | ||
| + | * pokud je přečtení ok, tak nejspíš zkusí invertovanou hodnotu a následně přičte jedničku | ||
| + | < | ||
| + | ar7240> mtest 0x00000000 0x01FA9708 | ||
| + | Pattern 00000000 | ||
| + | Pattern FFFFFFFF | ||
| + | Pattern 00000001 | ||
| + | </ | ||
| + | |||
| + | * parametrem pattern se nastavuje, od jakého vzorku začít | ||
| + | * parametr počet iterací se mi nepodařilo nastavit. čtvrtý argument mi to vůbec nebere. možná stará verze u-boot? | ||
| + | * paměť mi přijde ok, ale použitou hranicí si nejsem jistý.. co když je chyba zrovna tam? | ||
| ===== Boot po síti z TFTP ===== | ===== Boot po síti z TFTP ===== | ||
| Řádek 121: | Řádek 249: | ||
| * loco je založeno na ar7240 (https:// | * loco je založeno na ar7240 (https:// | ||
| * podle [[http:// | * podle [[http:// | ||
| - | | + | |
| - | * CFG_SDRAM_BASE 0x80000000 | + | * RAM má 32MB, tekže rozsah offsetu bude 0x00000000 - 0x02000000, |
| - | * tftpboot 0x80000000 XM.v5.6.9.29546.160819.1157.bin | + | * kam je ale namapován? podle testu memtest asi na začátek adresního rozsahu |
| - | * a nic.. bad magic :/ | + | * a kolik si vzal u-boot? [[http:// |
| + | * offset 0x9f000000 je 2544 MB, takže RAM může být klidně před ním? | ||
| + | |||
| + | * <del>https:// | ||
| + | * <del>CFG_SDRAM_BASE 0x80000000 | ||
| + | * <del>tftpboot 0x80000000 XM.v5.6.9.29546.160819.1157.bin</ | ||
| + | * <del>a nic.. bad magic :/</ | ||
| * podle mě ten bin obsahuje u-boot script, který provádí teprve to rozbalení atd.. | * podle mě ten bin obsahuje u-boot script, který provádí teprve to rozbalení atd.. | ||
| Řádek 148: | Řádek 282: | ||
| * http:// | * http:// | ||
| - | * http://free-electrons.com/ | + | * zkusíme to po staru přes ghex |
| + | * pokud tam jsou nějaké u-boot skripty, musí to jít najít přes stringy!! | ||
| + | * dal jsem vyhledat " | ||
| + | * vypadá to ale jako stringy nějaké binárky než skript. Že by tak vypadal ten U-Boot script image? | ||
| - | * https:// | ||
| * http:// | * http:// | ||
| + | < | ||
| + | binwalk / | ||
| + | |||
| + | DECIMAL | ||
| + | -------------------------------------------------------------------------------- | ||
| + | 0 | ||
| + | 260 | ||
| + | 140580 | ||
| + | 140772 | ||
| + | 161032 | ||
| + | 203044 | ||
| + | 209568 | ||
| + | 209632 | ||
| + | 209696 | ||
| + | 1218508 | ||
| + | 1218572 | ||
| + | 7510092 | ||
| + | </ | ||
| + | |||
| + | * https:// | ||
| + | * http:// | ||
| ===== Co s tím tedy je? ===== | ===== Co s tím tedy je? ===== | ||
| * rozbitá RAM? | * rozbitá RAM? | ||
| - | * nápad: | + | * podle memtest to moc nevypadá |
| - | * co ten test paměti v u-boot? | + | * když mi to pak naběhlo, tak to žádné segfault neházelo |
| * rozbil se flash? | * rozbil se flash? | ||
| * img jsem zkoušel nahrát několikrát a chovalo se to divně | * img jsem zkoušel nahrát několikrát a chovalo se to divně | ||
| Řádek 163: | Řádek 320: | ||
| * občas to hodilo chyby až při čtení kernelu/ | * občas to hodilo chyby až při čtení kernelu/ | ||
| * občas to nehodilo žádnou chybu, ale zaseklo se | * občas to nehodilo žádnou chybu, ale zaseklo se | ||
| + | * občas mi to dokonce naběhlo :) | ||
| * nápad: | * nápad: | ||
| * boot img po síti? tam se nepoužije flash.. | * boot img po síti? tam se nepoužije flash.. | ||
airos.1478432822.txt.gz · Poslední úprava: (upraveno mimo DokuWiki)
