Add basic support for ATmega168
attiny88: simplify patches thanks to svdpatch fixes
svdpatch: Fix _replace_enum when used on derived fields
Make sure the enum is replaced properly in the case of derived
enumerated values.
Signed-off-by: Rahix <rahix@rahix.de>
svdpatch: Fix peripheral modifications
attiny85: Make differential channel names consistent
attiny85: Numerous patch improvements
attiny85: USI patch fixes
attiny85: Timer patch fixes
attiny85: Add patch for Timer/Counter 1
Signed-off-by: Rahix <rahix@rahix.de>
atmega328p: Add patch for 8-bit asynchronous timer
Signed-off-by: Rahix <rahix@rahix.de>
atmega32u4: Add patch for 10-bit timer/counter
Signed-off-by: Rahix <rahix@rahix.de>
atmega32u4,atmega328p: Add patch for 16-bit timers
Signed-off-by: Rahix <rahix@rahix.de>
patch: Restructure timer patches
Redesign timer patch file structure for better modularity. Now,
`timer/<chip>.yaml` defines all timer peripherals for a chip and uses
peripheral-level includes for patching the actual peripheral. The
actual peripheral patches live in `timer/dev/<type>.yaml`.
The intermediate `<chip>.yaml` file is needed because peripheral-level
includes are not allowed in top-level files.
Signed-off-by: Rahix <rahix@rahix.de>
Add support for ATmega2560
Add patches for ADC peripherals
Add a patch to fixup a few registers in the ADC peripheral
for ATmega328P, ATmega32U4, ATmega1280, and ATmega64.
Add basic support for ATmega64
Pull in the ATDF file from Microchip and add all the necessary plumbing
around the code-base to make it compile. Not tested against real
hardware and no device-specific patches are included yet.
Signed-off-by: Rahix <rahix@rahix.de>
make: Use a patchfile instead of weird sed expr
As reported in issue #24 the sed(1) expression used to patch the generated
`mod.rs` does not work on MacOS (BSD sed). Instead, use patch(1) and a small
patchfile to accomplish the same task.
Signed-off-by: Rahix <rahix@rahix.de>