Hi,
I'd like to discuss the issue that presently the individual device properties
for the avr family is scattered all over the different files of the
toolchain. Also the avrX family concept has shown to be sub-optimal since
there are, some tiny-devices that have some of the enhanced instructions but
not all.
IMO, it would be time to set up a centralized database that contains all of
the relevant information on the available instructions, eeprom properties,
memory sizes, name of the crt object file, parameters that gcc passes to gas,
libraries to link against, etc. ... so that gcc, binutils and avr-libc could
extract the relevant knowledge from this single database.
database ---HEADER_FILE_GENERATOR1---> header file for gcc
database ---HEADER_FILE_GENERATOR2---> header file for binutils
database ---HEADER_FILE_GENERATOR3---> header file for avr-libc
When trying to set up the database in form of an array of one big structure in
C, I recognized, that the number of entries in the database gets quite large.
So large that I considered it to be difficult to edit and modify. A different
format than plain C might be appropriate. I am definitively somebody who
works with the keyboard most of the time. In this case, however, I'd like to
suggest to try to find a format that could be edited by some sort of GUI.
Any suggestions would be appreciated.