On Wed, Aug 29, 2007 at 02:58:28PM -0600, Eric Weddington wrote: > > > > -----Original Message----- > > From: [EMAIL PROTECTED] > > [mailto:[EMAIL PROTECTED] > > On Behalf Of Joerg Wunsch > > Sent: Tuesday, August 28, 2007 11:19 PM > > To: [EMAIL PROTECTED] > > Subject: Re: [avr-chat] Re: GUI wrapper for avrdude > > > > As Eric Weddington wrote: > > > > > Patches to avrdude are welcome to read an ELF file, and to program > > > flash, eeprom, and fuses from a single ELF file. > > > > Btw., AVaRICE has been working like that for years (using the ELF > > file, and derive the memory region type based on the offsets). It > > only takes care of flash ROM and EEPROM images as loadable images, but > > also does already have offsets for fuse (0x820000), lock (0x830000), > > and signature (0x840000) address spaces. It eventually reads all > > possible sections of a particular memory type into an internal image, > > and then uses it to program the respective memory areas from that. > > > > [CCing avr-libc-dev. Apologies for duplicates. We should probably move > conversation there.]
Oh-Oh, I'd better subscribe to avr-libc-dev too, then. > One issue that probably should be addressed: > > How does a GNU assembler-only project specify fuse settings, lock bit > settings, etc., in this potential scheme? If I've correctly understood Joerg, then the magic addresses are specified by linker script memory regions. I'd expect to just do the same in another assembler-only project. For the the new regions, it is the work of a moment to assign an output section to a specific memory region, and it is easier to assign stuff to input sections in assembler than it is in 'C'. Defining fuse values in assembler source is effortless: .global some_symbol_if_desired .section .avrfuses,"a" some_symbol_if_desired: .byte <fuse_value1> .byte <fuse_value2> .byte <fuse_value3> Can't off-hand see that I'd need more than the agreed input section names, to make it work with the linker script to be used for 'C', thereby re-using the agreed memory regions and magic addresses. (Or nearly as quick, modify an existing linker script, based on just the magic addresses. :-) Erik _______________________________________________ AVR-libc-dev mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/avr-libc-dev
