M patch/common/ac.yaml => patch/common/ac.yaml +6 -0
@@ 1,3 1,9 @@
+# Patches for the Analog Comparator
+#
+# - Make the control-register actually writable
+# - Fix the description of the "Interrupt Mode Select" field
+# - Make just the Output field of ACSR read-only
+# - Fix the "Interrupt Mode Select" enumerated values
AC:
_modify:
ACSR:
M patch/common/pll.yaml => patch/common/pll.yaml +8 -2
@@ 1,3 1,9 @@
+# Patches for the PLL Clock Generator
+#
+# - Make the Lock Detector field read-only
+# - Add descriptions for "Input Multiplexer" and "USB Postscaler"
+# - Remove and re-add the "Lock Frequency" and Postscaler fields
+# to fix <https://github.com/Rahix/atdf2svd/issues/1>.
PLL:
PLLCSR:
_modify:
@@ 11,13 17,13 @@ PLL:
PINMUX:
description: "PLL Input Multiplexer"
PLLUSB:
- description: "PLL Postcaler for USB Peripheral"
+ description: "PLL Postscaler for USB Peripheral"
_add:
PDIV:
description: "PLL Lock Frequency"
bitRange: "[3:0]"
PLLTM:
- description: "PLL Postcaler for High Speed Timer"
+ description: "PLL Postscaler for High Speed Timer"
bitRange: "[5:4]"
PDIV:
MHZ40: [0b0011, "40 MHz"]
M patch/common/twi.yaml => patch/common/twi.yaml +6 -0
@@ 1,3 1,9 @@
+# Patches for the Two-Wire-Interface peripheral (i2c)
+#
+# - Make the Control Register read-write with only the
+# "Write Collision Flag" being read-only
+# - Fix the "Slave Address Mask" description
+# - Fix the Prescaler enumerated values
TWI:
_modify:
TWCR:
M patch/common/wdt.yaml => patch/common/wdt.yaml +9 -0
@@ 1,3 1,12 @@
+# Patches for the Watchdog Timer
+#
+# The control register has a different name between ATmega and
+# ATtiny (WDTCSR vs WDTCR).
+#
+# - Make the control register read-write
+# - Remove the overlapping WDP (Prescaler) field and replace
+# it with two separate fields.
+# - TODO: See if svd2rust would support some kind of mask?
WDT:
_modify:
WDTCSR,WDTCR: