Linux 14.981 Themen, 106.343 Beiträge

gcc für Broadcom BCM5354r3

Synthetic_codes / 10 Antworten / Flachansicht Nickles

Moin.

Also erstmal zur vorgeschichte:

Ich habe bereits in einem anderen Thread Probleme mit meinem Huawei E220 Modem beschrieben. Neuerliche hinweise haben mich dazu geführt, dass diese Probleme wohl mit meinem Mainboard zusammenhängen. Daraufhin habe ich mich(was ich schon länger vorhatte) nach einem UMTS-Router umgeschaut. Dabei war einer meiner wichtigsten interessen dass es ein linux-basiertes gerät sein sollte.

Ich bin nun bei der SurfStation von O2 gelandet, die einen router mit USB Host schnittstelle darstellt. Aufgrund dieser Tatsache ging ich davon aus, dass es sich wohl um ein linux basiertes gerät handeln müsse, einfach weil das die billigste und einfachste variante ist, die ich mir so vorstellen kann.

Meine annahme war richtig. ich kann mich per Telnet an der box anmelden, und habe dann ein linux image, das mir vollen root-zugriff gewährt.

Ich hatte eigentlich auf ein ARM9 basiertes gerät gehofft, aber dem war leider nicht so.

laut /proc/cpuinfo handelt es sich um eine Broadcom CPU:


# cat /proc/cpuinfo
system type : Broadcom BCM5354 chip rev 3
processor : 0
cpu model : BCM3302 V2.9
BogoMIPS : 237.56
wait instruction : no
microsecond timers : yes
tlb_entries : 32
extra interrupt vector : no
hardware watchpoint : no
VCED exceptions : not available
VCEI exceptions : not available
unaligned_instructions : 2
dcache hits : 0
dcache misses : 0
icache hits : 0
icache misses : 0
instructions : 0


ein /proc/version ergibt mir folgendes:


# cat /proc/version
Linux version 2.4.20 (x127667@old_server.com) (gcc version 3.2.3 with Broadcom m
odifications) #2 Â■ 7È┬ 8 17:03:53 CST 2008


So... nun fängt es mit den Problemen an: Der hersteller des gerätes ist nirgendwo angegeben. Weder am Gerät selbst, noch im Handbuch oder auf der Verpackung. Will heissen, dass sich da mal wieder jemand um die GPL geschickt gedrückt hat.

Ich bräuchte nun ein kernel modul für den vfat treiber, welches ich selbst kompilieren müsste.(und noch ein paar andere module)

dazu fehlt mir jedoch der nötige Compiler. Kann mir da jemand weiterhelfen?
Weiss unter umständen jemand welcher hersteller sich hinter der "Surf Station" von O2 verbirgt?

Ich meine ich bin mir atm nicht mal sicher dass man das gerät in D verwenden darf, da es keinerlei kennzeichnungen hat, nicht mal das CE logo oder ein FCC logo.

Muss ein hersteller sein Produkt nicht als solches kenntlich machen?
was meint ihr dazu?

'); DROP TABLE users;--
bei Antwort benachrichtigen
KarstenW Synthetic_codes „Die idee ist gar nicht die kernelsourcen auf dem router zu kompilieren, sondern...“
Optionen

Das stimmt. Das steht auch alles so in der GPL .
Die FSF hat auch immer wieder Ärger mit Firmen die sich nicht an die Lizenzbestimmungen der GPL halten. Wenn du vom Hersteller oder vom Provider den Sourcecode nicht bekommst und auch kein Cross Compiler kostenlos verfügbar ist, dann mußt du einen anderen Router verwenden.
Meiner Erfahrung nach läuft auf den meisten Routern Linux. Vielleicht läuft auf manchen Routern das Unixderivat Net BSD. NetBSD ist auch Open Source.

Ich habe mal gegoogelt und zum Thema Crosscompilieren das hier gefunden:

http://tobias.schroepf.de/doku/doku.php?id=gentoo:crosscompile-toolchain_einrichten

Das wird so ähnlich bei vielen Distributionen sein.

http://linux.baltic.net/technikabende/emblinux.pdf

Ich habe da auch keine Erfahrung.

Das Prinzip der Freie Software kann nur funktionieren wenn auch die Hardware-Hersteller mitmachen.
Wenn der Umsatz zurückgeht, weil die Anwender den Sourcecode haben wollen aber nicht bekommen, dann müssen die Hersteller handeln (oder gehen bankrott).
Anders funktioniert das eben nicht.

Ich weiß aber auch nicht welchen Router du nutzen kannst, wenn du deine Firmware selbst kompilieren willst.

PS: Ich verstehe immer noch nicht warum du dieses Modul vfat selbst kompilieren willst. Linuxtreiber können entweder als Modul oder monolitisch übersetzt werden. Ich nehme mal an das der vfat Treiber monolitisch übersetzt worden ist und sich schon im Linuxkernel auf diesem Router befindet.
Auf diesem Router ist wahrscheinlich nicht mal ein dynamischer Linker ld installiert, welcher die Kernelmodule in den RAM Speicher lädt und mit dem Linuxkernel verlinkt.
Versuch doch einfach mal einen USB Stick anzuschließen und teste ob sich Daten auf diesem Stick speichern lassen.

Debian GNU/Linux https://www.debian.org/index.de.html
bei Antwort benachrichtigen