avr-gcc-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [avr-gcc-list] Reusing code and variables from bootloader in main pr


From: Ivan Dimitrov
Subject: RE: [avr-gcc-list] Reusing code and variables from bootloader in main program
Date: Sat, 26 Jun 2010 17:00:40 +0300

you have to put all vars in one structure (or if you use only function pointers you can pack them in array of functions) and place them in the very begging of the RAM. This can be done with dedicated linker section.

Regards I. Dimitrov



> From: address@hidden
> Date: Sun, 27 Jun 2010 00:04:22 +1100
> To: address@hidden
> Subject: [avr-gcc-list] Reusing code and variables from bootloader in main program
>
> I have atmega64 with SD card connected. The card is used for storing
> WAV files, logs, etc. I want to add a bootloader that would upgrade
> the main program if certain file is present on the card. Using
> separate copies of filesystem library in main program and bootloader
> is too expensive in terms of flash space. I am thinking about this
> solution: link the bootloader with filesystem libraries, and in main
> program have a set of pointers to filesystem library functions in
> .noinit section. When bootloader is started , it upgrades main program
> if necessary, and then initializes the prointers with correct
> addresses and jumps to address zero, starting the main program. Since
> variables are in .noinit, main program would not initialize them,
> preserving the addresses. Obviously, main program also needs to know
> addresses of all global variables used by filesystem lib. The problem
> is : how do I make both program use same addresses for certain
> variables?
>
> _______________________________________________
> AVR-GCC-list mailing list
> address@hidden
> http://lists.nongnu.org/mailman/listinfo/avr-gcc-list


Hotmail: Powerful Free email with security by Microsoft. Get it now.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]