Ich suche nach einem Bootloader, der in der Lage ist, ein File von der SD-Karte zu lesen und zu flashen (man muss das Rad ja schließlich nicht immer wieder neu erfinden). Target ist in meinem Fall ein AVR32 UC3A1512. Kennt jemand etwas passendes? Oder einen, der leicht zu portieren wäre? Hab zwar schon gesucht (U-Boot etc.), aber man weiss ja nie...
>man muss das Rad ja schließlich nicht >immer wieder neu erfinden In diese Fall wohl leider doch ;-) ...
HI, Ja ich denke auch, dass das wohl noch keiner gemacht hat für einen UC3. Wäre aber sehr interessant wenn jemand mal so etwas umsetzen würde.
Hi, habe das gleiche Problem. Hat da schon jemand ein Lösung gefunden?
Gefunden hab ich nichts, hab aber mit nem eigenen angefangen. Nach Start prüft er Bootbedingungen (PIN) und holt sich ein Image von der SD-Karte. Ist bisher nur Quick and Dirty (deshalb nicht veröffentlicht) und verwendet das Framework. Er passt gerade so (mit Optimierung) in den Bootloaderbereich (63K).
Moin Willum, hört sich gut an, so habe ich mir das auch vorgestellt(mit Pin). Würdest Du mir den die Sourcen überlassen, auch wenn's Q&D ist? Gruß Karsten
Hallo, würde mich auch ineressieren! Gruß Michael
Ok hier ist er, hab ihn noch etwas bereinigt (Sicherheitsmechanismen)und den einen oder anderen Kommentar dazugepackt. Erwartet wie gesagt nicht viel. Fuses zum Schutz des Bootloader-Bereichs können nach Bedarf noch gesetzt werden. Have fun...
Hi, ich wollte gerade den Code von Willum K. testen. Im AVR32 Studio bekomme ich folgende Fehlermeldung: src\SOFTWARE_FRAMEWORK\ASM\trampoline.o -lnewlib_addons-at32ucr2-speed_opt src\SOFTWARE_FRAMEWORK\UTILS\STARTUP_FILES\GCC\crt0.o: In function `udata_clear_loop_end': (.text._stext+0x4c): undefined reference to `main' collect2: ld returned 1 exit status Build error occurred, build is stopped Time consumed: 952 ms. Muss ich in dem crt0 oder trampoline file Einstellungen ändern? Reicht es, wenn ich unter Projekteigenschaften bei den Linker flags: '-Wl,-e,_trampoline' eingebe oder muss ich dort auch die Bootloader Adresse 0x80000000 angeben? Gruß Lena
wird im crt0.x file an dieser Codestelle, nicht meine main-Funktion geladen? Fehlt hier noch eine reference?
1 | // Start the show. |
2 | lda.w pc, main |
Wie bazi schon gesagt hat, findet der Linker keine main. Übrigens meine Linker-Optionen sehen wie folgt aus: -L../src/SOFTWARE_FRAMEWORK/UTILS/LIBS/NEWLIB_ADDONS -Wl,-Map,btldr.map -T../link_uc3a1512.lds -Wl,--section-start=.btldrv=0x8000FFE0 -mpart=uc3a1512 -Wl,--gc-sections --rodata-writable --direct-data Das Linker File Script ist ein modifiziertes Script aus dem Flash-Update-Workaround für den AVR32 auf der Atmel Website (nur bis einschl. I-Maske).
Vielen Dank für eure Hilfe Hab das Problem mit der main-Funktion gefunden.
Hallo, Habe versucht den den Bootloader von Willum an den Start zu bekommen. Bekomme es aber nicht hin (Jede Menge Fehlermeldungen). Halt jemand ein komplettes Projekt, das er mir eventuell als Muster zur Verfügung stellen kann. Danke für eure Hilfe. Grüße Anna
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.