-
Notifications
You must be signed in to change notification settings - Fork 137
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Developer options to describe parts and extend avrdude.conf syntax #1040
Commits on May 24, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 952ad72 - Browse repository at this point
Copy the full SHA 952ad72View commit details
Commits on Jun 26, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 40425ff - Browse repository at this point
Copy the full SHA 40425ffView commit details -
Configuration menu - View commit details
-
Copy full SHA for 317cc6d - Browse repository at this point
Copy the full SHA 317cc6dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0a7f264 - Browse repository at this point
Copy the full SHA 0a7f264View commit details
Commits on Jun 28, 2022
-
Move developer options into own source file and expand part descripti…
…on -p \* -p \*/c check address bits in SPI commands -p \*/d description of core part features -p \*/o opcodes for SPI programming parts and memories -p \*/s show avrdude.conf entries of parts -p \*/ss show full avrdude.conf entry as tab separated table -p \*/w wd_... constants for ISP parts -p \*/\* all of the above except -p \*/s -p \* same as -p\*/\*
Configuration menu - View commit details
-
Copy full SHA for 3bd75e7 - Browse repository at this point
Copy the full SHA 3bd75e7View commit details -
Configuration menu - View commit details
-
Copy full SHA for d8a30aa - Browse repository at this point
Copy the full SHA d8a30aaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0240b36 - Browse repository at this point
Copy the full SHA 0240b36View commit details
Commits on Jul 7, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 9e2cea3 - Browse repository at this point
Copy the full SHA 9e2cea3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 215ea1a - Browse repository at this point
Copy the full SHA 215ea1aView commit details
Commits on Jul 12, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 3ef8122 - Browse repository at this point
Copy the full SHA 3ef8122View commit details
Commits on Jul 18, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 068e78e - Browse repository at this point
Copy the full SHA 068e78eView commit details
Commits on Jul 19, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 3b5a1f6 - Browse repository at this point
Copy the full SHA 3b5a1f6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 43e2955 - Browse repository at this point
Copy the full SHA 43e2955View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8989e65 - Browse repository at this point
Copy the full SHA 8989e65View commit details -
Correct bit number for lone 'a' in config_gram.y
When an SPI command has a lone 'a' the initialisation now is as would be expected by all commands that take an address. Atmel's opcodes for SPI programming are consistent in this respect. This commit makes specifying the bit number in avrdude.conf optional. Instead of read_lo = "0 0 1 0 0 0 0 0 0 0 a13 a12 a11 a10 a9 a8 a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; one can now use read_lo = "0 0 1 0 0 0 0 0 0 0 a a a a a a a a a a a a a a o o o o o o o o";
Configuration menu - View commit details
-
Copy full SHA for 8da9c2b - Browse repository at this point
Copy the full SHA 8da9c2bView commit details -
Configuration menu - View commit details
-
Copy full SHA for bb6e1bb - Browse repository at this point
Copy the full SHA bb6e1bbView commit details -
Configuration menu - View commit details
-
Copy full SHA for f8b6a24 - Browse repository at this point
Copy the full SHA f8b6a24View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8503f2d - Browse repository at this point
Copy the full SHA 8503f2dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1555906 - Browse repository at this point
Copy the full SHA 1555906View commit details -
Configuration menu - View commit details
-
Copy full SHA for bdb5ba6 - Browse repository at this point
Copy the full SHA bdb5ba6View commit details -
Extend rather than reset memory entries in avrdude.conf
This commit changes the philosophy whenever avrdude.conf encounters the same memory of a part for the second time or whenever a memory is described that, through inheritance, already existed: AVRDUDE no longer zaps the memory, it rather extends it. Therefore, avrdude.conf.in's entry for ATmega128RFA1, which inherits from the ATmega2561, needs a line `load_ext_addr = NULL;` in its flash memory description to zap the inherited load_ext_addr SPI command. Other than this, avrdude.conf.in needs no other change in order to effect the same internal representation proving earlier updates to the .conf.in file correct that manually ensured inheritance of memory contents.
Configuration menu - View commit details
-
Copy full SHA for db37c9d - Browse repository at this point
Copy the full SHA db37c9dView commit details -
Add compact alternative specification for SPI opcodes in avrdude.conf
As the address bit numbers in the SPI opcodes are highly systematic, they don't really need to be specified. Each bit can therefore be described as one of the characters 0 (always 0), 1 (always 1), x (don't care, but will be set as 0), a (a copy of the correct bit of the byte or word address of read, write, load, pagewrite or load extended address command of memories with more than one byte), i (input bit for a load/write) or o (output bit from a read). The bits therefore do not need to be individually separated. If a string in the list of strings that describe an SPI opcode does *not* contain a space *and* is longer than 7 characters, it is interpreted as a compact bit-pattern representation. The characters 0, 1, x, a, i and o will be recognised as the corresponding bit, whilst any of the characters ., -, _ or / can act as arbitrary visual separators, which are ignored. Examples: loadpage_lo = "0100.0000--000x.xxxx--xxaa.aaaa--iiii.iiii"; loadpage_lo = "0100.0000", "000x.xxxx", "xxaa.aaaa", "iiii.iiii"; loadpage_lo = "0100.0000", "000x.xxxx.xxaa.aaaa", "iiii.iiii"; loadpage_lo = "0100.0000-000x.xxxx--xxaa.aaaa-iiii.iiii"; loadpage_lo = "0100.0000/000x.xxxx/xxaa.aaaa/iiii.iiii"; The compact format is an extension of the current format, which remains valid. Both, the compact and the traditional specification can be mixed in different strings, albeit not in the same string: load_ext_addr = "0100.1101", "0000.0000.0000", "0 0 0 a16", "0000.0000";
Configuration menu - View commit details
-
Copy full SHA for 30041e3 - Browse repository at this point
Copy the full SHA 30041e3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6afa115 - Browse repository at this point
Copy the full SHA 6afa115View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4ada98a - Browse repository at this point
Copy the full SHA 4ada98aView commit details
Commits on Jul 21, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 696574d - Browse repository at this point
Copy the full SHA 696574dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 192e118 - Browse repository at this point
Copy the full SHA 192e118View commit details -
Configuration menu - View commit details
-
Copy full SHA for 55f6765 - Browse repository at this point
Copy the full SHA 55f6765View commit details -
Provide avr_set_addr_mem() to set addresses in SPI opcodes within bou…
…ndaries The function avr_set_addr_mem(AVRMEM *mem, int opnum, unsigned char *cmd, unsigned long addr) is meant to replace avr_set_addr(OPCODE *op, unsigned char *cmd, unsigned long addr) in future. avr_set_addr_mem() has more information about the context of the task in that it knows the memory size, memory page size, whether or not the memory is a flash memory (which gets words addressees supplied) and, crucially, knows which SPI operation it is meant to compute the address bits for. avr_set_addr_mem() first computes the interval of bit numbers that must be supplied for the SPI command to stand a chance to work. The function only sets those address bits that are needed. Once all avr_set_addr() function calls have been replaced by avr_set_addr_mem(), the SPI commands that need an address can afford to declare in avrdude.conf all 16 address bits in the middle two bytes of the SPI command. This over-declaration will be corrected during runtime by avr_set_addr_mem(). One consequence of this is that parts can inherit smaller or larger memories from parents without the need to use different SPI codes in avrdude.conf. Another consequence is that avr_set_addr_mem() can, and does, tell the caller whether vital address bits were not declared in the SPI opcode. During parsing of avrdude.conf this might be utilised to generate a corresponding warning. This will uncover problematic SPI codes in avrdude.conf that in the past went undetected.
Configuration menu - View commit details
-
Copy full SHA for 572849e - Browse repository at this point
Copy the full SHA 572849eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 02788fb - Browse repository at this point
Copy the full SHA 02788fbView commit details -
Configuration menu - View commit details
-
Copy full SHA for a95d169 - Browse repository at this point
Copy the full SHA a95d169View commit details
Commits on Jul 22, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 5a517fb - Browse repository at this point
Copy the full SHA 5a517fbView commit details
Commits on Jul 24, 2022
-
Configuration menu - View commit details
-
Copy full SHA for d5d3a0e - Browse repository at this point
Copy the full SHA d5d3a0eView commit details
Commits on Jul 25, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 1549273 - Browse repository at this point
Copy the full SHA 1549273View commit details
Commits on Jul 26, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 78754b8 - Browse repository at this point
Copy the full SHA 78754b8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 62dcc2e - Browse repository at this point
Copy the full SHA 62dcc2eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 004b46b - Browse repository at this point
Copy the full SHA 004b46bView commit details -
Configuration menu - View commit details
-
Copy full SHA for f299439 - Browse repository at this point
Copy the full SHA f299439View commit details