v žití ze mě občas vypadne i to, z čeho mohou mít užitek i jiní a tady Vám to chci dát
OpenWRT a přesný čas na WL-520gU
Oprava firmware pro bezdrátový router WL-520gU.
Pokud nahrajete firmware openwrt-brcm-2.4-squashfs.trx do Vašeho milovaného ASUS routeru WL-520gU, záhy zjistíte, že se čas oproti reálnému bude silně rozcházet. Hodiny se výrazně odchýlý a to už i po několika minutách. Řešením může být, že do cronu hodíte co pár minut rdate na časový server, ale to je řešení naprosto nečisté a pouze se zbavuje následků bez řešení příčiny. A to ani nemluvím o nevhodnosti, pokud je časový server mimo lokální síť. Vše lze vyřešit čistě následujícím postupem ...
Problém ujíždějícího času vznikl následovně. Jádro brcm-2.4-squashfs předpokládá, a je i tak zkompilováno, že procesor poběží na taktovací frekvenci 240 MHz. A jako na potvoru zrovna WL-520 je taktován pouze na 200 MHz. Nejednodušším řešením, pokud nepotřebujute zvláštní funkce nebo modifikaci jádra podle sebe, je použít hotový opravený zkompilovaný firmware pro WL-520 z tohoto odkazu:
http://www.emuf.cz/download/openwrt/correct_time_brcm2_4/openwrt-brcm-2.4-squashfs.trx
Hash MD5:
Součástí FW jsou následující moduly:
busybox - 1.15.3-2
dnsmasq - 2.55-6
dropbear - 0.52-4
firewall - 1-20
iptables - 1.4.6-2
iptables-mod-conntrack - 1.4.6-2
iptables-mod-nat - 1.4.6-2
kernel - 2.4.37.9-1
kmod-brcm-wl - 2.4.37.9+4.150.10.5.3-7
kmod-diag - 2.4.37.9-7.1
kmod-ipt-conntrack - 2.4.37.9-1
kmod-ipt-core - 2.4.37.9-1
kmod-ipt-nat - 2.4.37.9-1
kmod-ipt-nathelper - 2.4.37.9-1
kmod-ppp - 2.4.37.9-1
kmod-pppoe - 2.4.37.9-1
kmod-switch - 2.4.37.9-3
kmod-wlcompat - 2.4.37.9+4.150.10.5.3-7
libc - 0.9.30.1-43.10
libgcc - 3.4.6-43.10
libiptc - 1.4.6-2
liblua - 5.1.4-7
libuci - 12012009.6-2
libuci-lua - 12012009.6-2
libxtables - 1.4.6-2
lua - 5.1.4-7
mtd - 13
nas - 4.150.10.5.3-7
nvram - 7
opkg - 576-1
ppp - 2.4.4-11
ppp-mod-pppoe - 2.4.4-11
uci - 12012009.6-2
uhttpd - 21
wireless-tools - 29-4
wlc - 4.150.10.5.3-7
Jinak pro zvídavé nebo pro ty, co vyžadují speciální moduly je zde uveden postup jakým způsobem vlastní jádro zkompilovat.
Nejprve je třeba stáhnout požadované zdrojáky podle postupu
https://dev.openwrt.org/wiki/GetSource
Následuje kontrola systému, zda máte vše co budete potřebovat ke kompilaci.
Kompilaci jsem prováděl na debianu, cílová architektura je logicky MIPS.
Linux debian 2.6.8-2-386 #1 Thu May 19 17:40:50 JST 2005 i686 GNU/Linux
Po vyřešení potřebných závislostí (podle INSTALL, nebo podle toho co kde zařve :) )
v případě nesnází koukněte na:
http://kamikaze.openwrt.org/docs/openwrt.html#x1-410002.1.1
zadejte:
make package/symlinks
make menuconfig
Nastavte vše co potřebujete, pro inspiraci můj konfigurační soubor je zde:
http://www.emuf.cz/download/openwrt/correct_time_brcm2_4/config
Čas na aplikaci záplat (nutno provést opakovaně po každém make clean):
patch -i -p0 correct_time.patch
Nespoléhejte na to, že kompilace proběhne jen tak košer a rovnou zadejte:
A dál postupujte jako při každé kompilaci v Linuxu, jak se něco podělá opravte to .
(pokud zlobí nějaký modul a nebudete ho potřebovat, tak nejjednošší cestou je vyhodit jej z kompilace např. CRDA,AOE,AOETools, ...)
Odpovědět
Komentáře k tomuto příspěvku jsou zakázány.