Hi, wie kann man prinzipiell den bootloader in einem embedded System (Router) austauschen? Ich hab zwar schon bootloader gefunden (redboot), aber mich würde noch interessieren, worauf zu achten ist bei der Einstellung und Konfiguration davon. Muss der Speicheraufbau (Adressen von Flash und Ram) mit angegeben werden, little/big-endian? Besten Dank Jens
Hä ??? Es sollte zum System eine Bedienungsanleitung oder ein Service Manual o.ä. geben, wo das alles drinsteht. Für "embedded system" gibt's keine allgemeingültigen Verfahren oder Vorgehensweise oder sonstwas. Eine Waschmaschine ist eben was anderes wie eine CNC-Steuerung oder ein Flugbahnregler für 'ne Rakete. Das ist alles speziell. Ausserdem braucht man eine passende andere oder neuere Version, und man sollte sich sicher sein, daß die passt und zu diesem System gehört. Sonst kann's passieren, daß gar nichts mehr geht und der Service des Herstellers antanzen muss.
Für Handelsübliche Router gibts halt keine Anleitung vom Hersteller afaik. Was es oft schon gibt sind Buildroots für die Firmware, aber nichts für den Bootloader. Das es Speziell ist, ist mir klar. Aber es Funktioniert nunmal eigentlich alles nach "fast" der gleichen weise. Irgendwas wird irgendwohin geladen und irgendwie gestartet. Da der Aufbau natürlich nie gleich ist (ausser bei den gleichen Teilen ;) ) ging es mir ja darum Infos zu bekommen, wie es Funktioniert, und wo man u.u. Infos herbekommt wie man vorgehen muss. Firmware zu killen geht ja noch, die kann man nachladen, aber den Bootloader??? Da kann man nur per jtag oder direkt aufs Flashzugreifend was machen, was sicher noch aufwendiger ist.
Jens B. wrote: > Das es Speziell ist, ist mir klar. Aber es Funktioniert nunmal > eigentlich alles nach "fast" der gleichen weise. Irgendwas wird > irgendwohin geladen und irgendwie gestartet. Ja, ist ungefähr so wie ne Wohnungseinrichtung. In jeder Wohnung gibts Bett, Tisch, Stuhl, Klo, Herd usw. Wo die sich aber befinden, ist überall verschieden. Und genau so mannigfaltig sind Bootloader. Es fängt ja schon damit an, das die verschiedenen Chips und deren Revisionen schon verschiedene Bootalgorithmen haben. Dann noch verschiedenen Hardware und deren Revisionen usw. Wenn Du also wirklich fundierte Informationen zu einem ganz bestimmten Bootloader für eine ganz bestimmte Hardware mit einer ganz bestimmten Revision haben willst, mußt Du Mitarbeiter in der ganz bestimmten Entwicklungsabteilung sein. Peter P.S.: Wir machen es in der Regel so, daß unsere Bootloader vor dem Einlöten gebrannt und gelockt werden. Damit sind die Geräte sehr sicher, d.h. können nicht versehentlich totgeflasht werden.
Ganz zu schweigen davon, dass verschieden Chips verschiedene Maschinensprachecodes haben.. Du kannst einen 6502 nicht mit Binärcode vom 8088 betreiben. Außerdem, was versprichst Du Dir davon den Bootloader auszutauschen? Der hat ja sowieso keine andere Aufgabe als das neue Programm von irgendwoher entgegen zunehmen und in den Programmspeicher zu schreiben (Flashen). Sollte der Original natürlich nur Update über seriell erlauben und Du willst aber per I2C updaten dann könnte sowas sinn machen.. aber nur mit einem der speziell für die Hardware(umgebung) geschrieben wurde. "Ich hab hier einen Router und einen Bootloader im Netz gefunden" klingt doch etwas zu riskant^^ Bei Atmels kann man den Bootloader übrigens ganz normal über ISP austauschen...
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.