Hallo, ich habe gerade mal wieder meinen Grasshopper (AVR32-Board) rausgekramt. Ich sehe, dass mittlerweile ein Port von OpenWrt für AVR32 existiert. (Das ATNGW100 wird explizit als unterstützte Hardware aufgeführt.) Hat schon einmal jemand versucht, OpenWrt auf dem Grasshopper einzusetzen? Interessant an OpenWrt ist u.a., dass es eine Vielzahl an fertigen Anwendungen in Form von Packages gibt. Christian
Hmm, hat das noch keiner probiert? Muss ich das wirklich am WE einfach mal selber testen?
Hallo Christian, Bist Du schon weiter gekommen? Ich habe grade versucht meine Std.-Buildroot Umgebung mit OWFS und FUSE zu erweitern und habe mir dabei das Patch zerschossen. Beim Googlen bin ich dann auf OpenWrt gestossen und frage mich nun, ob es einen Grasshopper mit OpenWrt gibt... Gruss, Axel
Axel, nein, leider habe ich OpenWrt auch nicht auf den Grasshopper bekommen. (Ich habe allerdings auch nicht viel Zeit darauf verwendet.)
Dieses Wochenende habe ich mich mal wieder mit dem Thema OpenWrt auf dem AVR32 Grasshopper beschäftigt und -- deshalb hole ich den alten Thread nochmal nach oben -- eine lauffähige Version davon erzeugt. Ihr findet ein JFFS2-Image eines schlanken OpenWrt-Systems für den Grasshopper jetzt unter http://www.chzsoft.de/grasshopper/openwrt-avr32-jffs2-64k-uimage.img (knapp 2 MiB) Es handelt sich dabei um einen OpenWrt basierend auf dem heute aktuellen Stand (SVN Revision 19786) mit folgenden Änderungen: - Es kommt ein Linux-Kernel 2.6.30.9 zum Einsatz, der für den Grasshopper gepatcht wurde. Vorteil dieser Kernelversion: Es stehen auf der OpenWrt-Seite fertige Pakete der einzelnen Kernelmodule bereit, die bequem mit dem Paketmanager (s. unten) eingespielt werden können. - Das Netzwerkinterface wurde konfiguriert, sich per DHCP eine IP zu besorgen. - Der Kernel ist als "/boot/uImage" in das JFFS2-Image integriert, so dass das obige Image direkt als Ersatz für das Standardimage dienen kann. Der Bootloader U-Boot muss dazu nicht modifiziert werden. Ein paar Hinweise zum Einstieg: - Im Wiki http://www.mikrocontroller.net/articles/AVR32_Grasshopper ist beschrieben, wie man ein neues Rootdateisystem flasht. - Damit der SSH-Zugang aktiv wird, muss entweder über die serielle Konsole (d.h. über die USB-Schnittstelle) oder über Telnet ein Root-Passwort gesetzt werden. - Der Paketmanager heißt opkg. Mit "opkg update" lädt man eine Liste der verfügbaren Pakete, mit "opkg list" zeigt man diese an und mit "opkg install paketname" installiert man ein Paket. - An Software installiert sind u.a. bereits ein cgi-bin-fähiger HTTP-Server (liefert Dateien aus "/www" aus) und die Skriptsprache lua. Abschließend ein Hinweis: Ich übernehme keine Haftung für Schäden, Probleme etc., die aus der Verwendung des Images resultieren. Über Feedback freue ich mich trotzdem. Christian
Hallo christianz, tolle Arbeit! Ich war schon eine Weile auf der Suche nach OpenWRT auf dem Grasshopper. Nach einigen Wochen frustrierendem "Gefrickel" an ICNova und ATMEL Toolchains endlich mal ein Kernel und ein JFF2 Image, das funktioniert. DANKE ! Einen kleinen Wermutstropfen hat das Ganze leider doch. Ich habe an meinem Hopper eine SDCard angeschlossen, die unter UBOOT und anderen Kernels gut funktioniert. Ich kann die für die SDcard benötigten Module via OPKG INSTALL nachinstallieren. Leider werden nur zwei (mmc-block, mmc-core) der drei benötigten Module geladen. Das Modul "atmel-mci" beendet sich immer mit der Meldung: insmod: can't insert 'atmel-mci': No such device Hast Du irgendeine Idee, was ich da noch machen kann? Gruß dilldepp
Es kann sein, dass zur Verwendung von SD-Cards irgendwas in den Kernel fest eincompiliert werden muss, das in meinem Image nicht drin ist. Du musst dann den Kernel neu compilieren. Unter http://www.chzsoft.de/grasshopper/openwrt-r19787-grasshopper.patch.gz habe ich einen Patch gegen SVN-Rev. 19787 von OpenWRT abgelegt. Damit kannst Du Dein eigenes OpenWRT-Image für den Grasshopper erzeugen. Folgende Schritte sind nötig: Auschecken mit SVN in den Ordner openwrt: svn co -r 19787 svn://svn.openwrt.org/openwrt/trunk/ openwrt Vorher entpackten Patch (s.o.) anwenden: patch -p1 -d openwrt < openwrt-r19787-grasshopper.patch OpenWRT konfigurieren und Image erstellen: cd openwrt make menuconfig make Meine Konfigurationsdatei liegt als Starthilfe unter http://www.chzsoft.de/grasshopper/openwrt-r19787-grasshopper.config.gz bereit. Einfach entpacken und als ".config" in den openwrt-Ordner kopieren.
Hallo christianz, danke für die ausführliche Anleitung. Das Auschecken, Patchen und der MAKE Vorgang liefen einwandfrei durch. Im nächsten Durchlauf aktiverte ich den MMC Support in allen denkbaren Varianten (ATMEL-MCI, SPI-MMC, GPIO-MMC usw.). Es blieb immer beim selben Ergebnis: Das Modul kann nicht geladen werden, weil das Device nicht existiert. Im Moment bin ich mir nicht so sicher, welches device gemeint ist (Physikalisch oder in /dev). Was mich wundert ist, dass es beim NGW100 ohne zu Murren funktioniert. Im Prizip hat der Grasshopper doch nur eine etwas andere Speicheraufteilung ? Ich bleibe dran. Bis dann. Gruß Dilldepp.
Hmm, aus irgendeinem Grund werden die entsprechenden Zeilen für MMC in arch/avr32/boards/grasshopper/setup.c nicht mitcompiliert, selbst wenn CONFIG_MMC_ATMELMCI gesetzt ist. Ich gehe dem nach, wenn ich mal mehr Zeit habe. Evtl. hilft es Dir bis dahin, ein #define CONFIG_MMC_ATMELMCI y an den Anfang der oben genannten Datei zu setzen und den Kernel nochmal zu compilieren.
Außerdem fehlt in arch/avr32/boards/grasshopper/setup.c noch ein #include <linux/atmel-mci.h> damit die Datei mit CONFIG_MMC_ATMELMCI compiliert. Dann lässt sich das Kernel-Modul atmel-mci.ko auch laden. Hoffe, das hilft. Wenn ich mehr Zeit habe, fixe ich das ganze noch einmal richtig.
Das JFFS2-Image unter http://www.chzsoft.de/grasshopper/openwrt-avr32-jffs2-64k-uimage.img wurde aktualisiert: - basierend auf OpenWRT SVN-Rev. 20651, - mit Linux-Kernel 2.6.32.10, für den es z.Zt. fertige Pakete gibt, - diesmal vorbereitet für die Installation von kmod-mmc-atmelmci (testen kann ich es mangels SD-Card nicht). Patch: http://www.chzsoft.de/grasshopper/openwrt-r20651-grasshopper.patch.gz Config: http://www.chzsoft.de/grasshopper/openwrt-r20651-grasshopper.config.gz
Hallo Christianz, es klappt. :-)) Die SD-Card wird erkannt, das Mosul kann fehlerfrei eingebunden werden. Beim Einbinden des KMOD-FS-VFAT bekomme ich allerdings eine Menge Fehler, das Einsprungpunkte nicht gefunden werden können. Scheinbar lade ich ein Modul für eine anderen Kernelversion. Ich schaue mir das in den nächsten Tagen noch einmal an und poste die genaue Fehlermeldung. Mir fehlt ein wenig die Zeit detaillierter zu antworten. Auf jeden Fall noch einmal vielen Dank. Tolle Arbeit ! Bis dann.
So, hier die versprochenen Fehlermeldungen. Egal, welche Paketquelle (Deine Webseite oder Openwrt) ich angebe. In beiden Fällen die selbe Fehlermeldungen und damit ist kein mount möglich.... Downloading http://www.chzsoft.de/grasshopper/openwrt/kmod-nls-base_2.6.32.10-1_avr32.ipk. Configuring kmod-fs-vfat. fat: Unknown symbol load_nls fat: Unknown symbol utf16s_to_utf8s fat: Unknown symbol unload_nls vfat: Unknown symbol fat_dir_empty vfat: Unknown symbol fat_time_unix2fat vfat: Unknown symbol fat_get_dotdot_entry vfat: Unknown symbol fat_free_clusters vfat: Unknown symbol fat_setattr vfat: Unknown symbol fat_scan vfat: Unknown symbol fat_search_long vfat: Unknown symbol fat_getattr vfat: Unknown symbol fat_fs_error vfat: Unknown symbol fat_attach vfat: Unknown symbol fat_build_inode vfat: Unknown symbol fat_fill_super vfat: Unknown symbol fat_alloc_new_dir vfat: Unknown symbol fat_remove_entries vfat: Unknown symbol fat_add_entries vfat: Unknown symbol fat_sync_inode vfat: Unknown symbol utf8s_to_utf16s vfat: Unknown symbol fat_detach Configuring kmod-nls-base. root@OpenWrt:/etc# Witzigerweise funktioniert KMOD-FS-EXT3 ohne Probleme. Habe z.Zt leider nur SC-Cards mit VFAT zur Hand :-(
Auch hier gilt: Es kann sein, dass, Routinen, die von keinem zu compilierenden Modul benötigt werden, nicht in den Kernel eincompiliert werden, um diesen klein zu halten Hier dürfte helfen, OpenWRT inkl. Kernel wie ich es oben beschrieben habe (aber diesmal ausgehend von SVN-Revision 20651) zu bauen und dabei "kmod-fs-vfat" als Package zu aktivieren.
Die selben Fehlermeldungen kommen beim Einbinden des Moduls KMOD-FS-MSDOS. Ich konnte aber erfolgreich das Modul KMOD-FS-NTFS einbinden. Scheinbar kann es aber nur lesen und nicht schreiben. Wie auch immer, nachdem ich die SD-CArd mit NTFS formatiert hatte, konnte ich die Karte mounten und die Dateien von der SD-Card ins /tmp Verzeichnis kopieren. Ein binärer Vergleich zeigte, dass der Kopiervorgang fehlerfrei war. Soweit, so gut. Hat Du noch eine Idee, was mit den beiden FAT-Modulen los ist?
das Programmpaket nfts-3g kann auch schreibend auf ein NTFS FS zugreifen. Und was das Beste ist: es scheint auch zu funktionieren. Wahnsinn !
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.