Closed Rahix closed 5 months ago
SVD diff:
diff --color -Nur svd-orig/attiny2313a.svd.patched svd/attiny2313a.svd.patched
--- svd-orig/attiny2313a.svd.patched 2024-01-28 17:56:40.222364358 +0100
+++ svd/attiny2313a.svd.patched 2024-01-28 18:07:27.551781547 +0100
@@ -1125,7 +1125,10 @@
<maximum>255</maximum>
</range>
</writeConstraint>
- </register>
+ <fields><field><name>PA0</name><description>Pin A0</description><bitRange>[0:0]</bitRange><access>read-write</access></field>
+ <field><name>PA1</name><description>Pin A1</description><bitRange>[1:1]</bitRange><access>read-write</access></field>
+ <field><name>PA2</name><description>Pin A2</description><bitRange>[2:2]</bitRange><access>read-write</access></field>
+ </fields></register>
<register>
<name>PINA</name>
<description>Port A Input Pins</description>
@@ -1138,7 +1141,10 @@
<maximum>255</maximum>
</range>
</writeConstraint>
- </register>
+ <fields><field><name>PA0</name><description>Pin A0</description><bitRange>[0:0]</bitRange><access>read-write</access></field>
+ <field><name>PA1</name><description>Pin A1</description><bitRange>[1:1]</bitRange><access>read-write</access></field>
+ <field><name>PA2</name><description>Pin A2</description><bitRange>[2:2]</bitRange><access>read-write</access></field>
+ </fields></register>
<register>
<name>PORTA</name>
<description>Port A Data Register</description>
@@ -1151,7 +1157,10 @@
<maximum>255</maximum>
</range>
</writeConstraint>
- </register>
+ <fields><field><name>PA0</name><description>Pin A0</description><bitRange>[0:0]</bitRange><access>read-write</access></field>
+ <field><name>PA1</name><description>Pin A1</description><bitRange>[1:1]</bitRange><access>read-write</access></field>
+ <field><name>PA2</name><description>Pin A2</description><bitRange>[2:2]</bitRange><access>read-write</access></field>
+ </fields></register>
</registers>
</peripheral>
<peripheral>
@@ -1176,7 +1185,15 @@
<maximum>255</maximum>
</range>
</writeConstraint>
- </register>
+ <fields><field><name>PB0</name><description>Pin B0</description><bitRange>[0:0]</bitRange><access>read-write</access></field>
+ <field><name>PB1</name><description>Pin B1</description><bitRange>[1:1]</bitRange><access>read-write</access></field>
+ <field><name>PB2</name><description>Pin B2</description><bitRange>[2:2]</bitRange><access>read-write</access></field>
+ <field><name>PB3</name><description>Pin B3</description><bitRange>[3:3]</bitRange><access>read-write</access></field>
+ <field><name>PB4</name><description>Pin B4</description><bitRange>[4:4]</bitRange><access>read-write</access></field>
+ <field><name>PB5</name><description>Pin B5</description><bitRange>[5:5]</bitRange><access>read-write</access></field>
+ <field><name>PB6</name><description>Pin B6</description><bitRange>[6:6]</bitRange><access>read-write</access></field>
+ <field><name>PB7</name><description>Pin B7</description><bitRange>[7:7]</bitRange><access>read-write</access></field>
+ </fields></register>
<register>
<name>PINB</name>
<description>Port B Input Pins</description>
@@ -1189,7 +1206,15 @@
<maximum>255</maximum>
</range>
</writeConstraint>
- </register>
+ <fields><field><name>PB0</name><description>Pin B0</description><bitRange>[0:0]</bitRange><access>read-write</access></field>
+ <field><name>PB1</name><description>Pin B1</description><bitRange>[1:1]</bitRange><access>read-write</access></field>
+ <field><name>PB2</name><description>Pin B2</description><bitRange>[2:2]</bitRange><access>read-write</access></field>
+ <field><name>PB3</name><description>Pin B3</description><bitRange>[3:3]</bitRange><access>read-write</access></field>
+ <field><name>PB4</name><description>Pin B4</description><bitRange>[4:4]</bitRange><access>read-write</access></field>
+ <field><name>PB5</name><description>Pin B5</description><bitRange>[5:5]</bitRange><access>read-write</access></field>
+ <field><name>PB6</name><description>Pin B6</description><bitRange>[6:6]</bitRange><access>read-write</access></field>
+ <field><name>PB7</name><description>Pin B7</description><bitRange>[7:7]</bitRange><access>read-write</access></field>
+ </fields></register>
<register>
<name>PORTB</name>
<description>Port B Data Register</description>
@@ -1202,7 +1227,15 @@
<maximum>255</maximum>
</range>
</writeConstraint>
- </register>
+ <fields><field><name>PB0</name><description>Pin B0</description><bitRange>[0:0]</bitRange><access>read-write</access></field>
+ <field><name>PB1</name><description>Pin B1</description><bitRange>[1:1]</bitRange><access>read-write</access></field>
+ <field><name>PB2</name><description>Pin B2</description><bitRange>[2:2]</bitRange><access>read-write</access></field>
+ <field><name>PB3</name><description>Pin B3</description><bitRange>[3:3]</bitRange><access>read-write</access></field>
+ <field><name>PB4</name><description>Pin B4</description><bitRange>[4:4]</bitRange><access>read-write</access></field>
+ <field><name>PB5</name><description>Pin B5</description><bitRange>[5:5]</bitRange><access>read-write</access></field>
+ <field><name>PB6</name><description>Pin B6</description><bitRange>[6:6]</bitRange><access>read-write</access></field>
+ <field><name>PB7</name><description>Pin B7</description><bitRange>[7:7]</bitRange><access>read-write</access></field>
+ </fields></register>
</registers>
</peripheral>
<peripheral>
@@ -1227,7 +1260,14 @@
<maximum>255</maximum>
</range>
</writeConstraint>
- </register>
+ <fields><field><name>PD0</name><description>Pin D0</description><bitRange>[0:0]</bitRange><access>read-write</access></field>
+ <field><name>PD1</name><description>Pin D1</description><bitRange>[1:1]</bitRange><access>read-write</access></field>
+ <field><name>PD2</name><description>Pin D2</description><bitRange>[2:2]</bitRange><access>read-write</access></field>
+ <field><name>PD3</name><description>Pin D3</description><bitRange>[3:3]</bitRange><access>read-write</access></field>
+ <field><name>PD4</name><description>Pin D4</description><bitRange>[4:4]</bitRange><access>read-write</access></field>
+ <field><name>PD5</name><description>Pin D5</description><bitRange>[5:5]</bitRange><access>read-write</access></field>
+ <field><name>PD6</name><description>Pin D6</description><bitRange>[6:6]</bitRange><access>read-write</access></field>
+ </fields></register>
<register>
<name>PIND</name>
<description>Input Pins, Port D</description>
@@ -1240,7 +1280,14 @@
<maximum>255</maximum>
</range>
</writeConstraint>
- </register>
+ <fields><field><name>PD0</name><description>Pin D0</description><bitRange>[0:0]</bitRange><access>read-write</access></field>
+ <field><name>PD1</name><description>Pin D1</description><bitRange>[1:1]</bitRange><access>read-write</access></field>
+ <field><name>PD2</name><description>Pin D2</description><bitRange>[2:2]</bitRange><access>read-write</access></field>
+ <field><name>PD3</name><description>Pin D3</description><bitRange>[3:3]</bitRange><access>read-write</access></field>
+ <field><name>PD4</name><description>Pin D4</description><bitRange>[4:4]</bitRange><access>read-write</access></field>
+ <field><name>PD5</name><description>Pin D5</description><bitRange>[5:5]</bitRange><access>read-write</access></field>
+ <field><name>PD6</name><description>Pin D6</description><bitRange>[6:6]</bitRange><access>read-write</access></field>
+ </fields></register>
<register>
<name>PORTD</name>
<description>Data Register, Port D</description>
@@ -1253,7 +1300,14 @@
<maximum>255</maximum>
</range>
</writeConstraint>
- </register>
+ <fields><field><name>PD0</name><description>Pin D0</description><bitRange>[0:0]</bitRange><access>read-write</access></field>
+ <field><name>PD1</name><description>Pin D1</description><bitRange>[1:1]</bitRange><access>read-write</access></field>
+ <field><name>PD2</name><description>Pin D2</description><bitRange>[2:2]</bitRange><access>read-write</access></field>
+ <field><name>PD3</name><description>Pin D3</description><bitRange>[3:3]</bitRange><access>read-write</access></field>
+ <field><name>PD4</name><description>Pin D4</description><bitRange>[4:4]</bitRange><access>read-write</access></field>
+ <field><name>PD5</name><description>Pin D5</description><bitRange>[5:5]</bitRange><access>read-write</access></field>
+ <field><name>PD6</name><description>Pin D6</description><bitRange>[6:6]</bitRange><access>read-write</access></field>
+ </fields></register>
</registers>
</peripheral>
<peripheral>
diff --color -Nur svd-orig/attiny2313.svd.patched svd/attiny2313.svd.patched
--- svd-orig/attiny2313.svd.patched 2024-01-28 17:56:40.222364358 +0100
+++ svd/attiny2313.svd.patched 2024-01-28 18:06:41.857839285 +0100
@@ -1003,7 +1003,10 @@
<maximum>255</maximum>
</range>
</writeConstraint>
- </register>
+ <fields><field><name>PA0</name><description>Pin A0</description><bitRange>[0:0]</bitRange><access>read-write</access></field>
+ <field><name>PA1</name><description>Pin A1</description><bitRange>[1:1]</bitRange><access>read-write</access></field>
+ <field><name>PA2</name><description>Pin A2</description><bitRange>[2:2]</bitRange><access>read-write</access></field>
+ </fields></register>
<register>
<name>PINA</name>
<description>Port A Input Pins</description>
@@ -1016,7 +1019,10 @@
<maximum>255</maximum>
</range>
</writeConstraint>
- </register>
+ <fields><field><name>PA0</name><description>Pin A0</description><bitRange>[0:0]</bitRange><access>read-write</access></field>
+ <field><name>PA1</name><description>Pin A1</description><bitRange>[1:1]</bitRange><access>read-write</access></field>
+ <field><name>PA2</name><description>Pin A2</description><bitRange>[2:2]</bitRange><access>read-write</access></field>
+ </fields></register>
<register>
<name>PORTA</name>
<description>Port A Data Register</description>
@@ -1029,7 +1035,10 @@
<maximum>255</maximum>
</range>
</writeConstraint>
- </register>
+ <fields><field><name>PA0</name><description>Pin A0</description><bitRange>[0:0]</bitRange><access>read-write</access></field>
+ <field><name>PA1</name><description>Pin A1</description><bitRange>[1:1]</bitRange><access>read-write</access></field>
+ <field><name>PA2</name><description>Pin A2</description><bitRange>[2:2]</bitRange><access>read-write</access></field>
+ </fields></register>
</registers>
</peripheral>
<peripheral>
@@ -1054,7 +1063,15 @@
<maximum>255</maximum>
</range>
</writeConstraint>
- </register>
+ <fields><field><name>PB0</name><description>Pin B0</description><bitRange>[0:0]</bitRange><access>read-write</access></field>
+ <field><name>PB1</name><description>Pin B1</description><bitRange>[1:1]</bitRange><access>read-write</access></field>
+ <field><name>PB2</name><description>Pin B2</description><bitRange>[2:2]</bitRange><access>read-write</access></field>
+ <field><name>PB3</name><description>Pin B3</description><bitRange>[3:3]</bitRange><access>read-write</access></field>
+ <field><name>PB4</name><description>Pin B4</description><bitRange>[4:4]</bitRange><access>read-write</access></field>
+ <field><name>PB5</name><description>Pin B5</description><bitRange>[5:5]</bitRange><access>read-write</access></field>
+ <field><name>PB6</name><description>Pin B6</description><bitRange>[6:6]</bitRange><access>read-write</access></field>
+ <field><name>PB7</name><description>Pin B7</description><bitRange>[7:7]</bitRange><access>read-write</access></field>
+ </fields></register>
<register>
<name>PINB</name>
<description>Port B Input Pins</description>
@@ -1067,7 +1084,15 @@
<maximum>255</maximum>
</range>
</writeConstraint>
- </register>
+ <fields><field><name>PB0</name><description>Pin B0</description><bitRange>[0:0]</bitRange><access>read-write</access></field>
+ <field><name>PB1</name><description>Pin B1</description><bitRange>[1:1]</bitRange><access>read-write</access></field>
+ <field><name>PB2</name><description>Pin B2</description><bitRange>[2:2]</bitRange><access>read-write</access></field>
+ <field><name>PB3</name><description>Pin B3</description><bitRange>[3:3]</bitRange><access>read-write</access></field>
+ <field><name>PB4</name><description>Pin B4</description><bitRange>[4:4]</bitRange><access>read-write</access></field>
+ <field><name>PB5</name><description>Pin B5</description><bitRange>[5:5]</bitRange><access>read-write</access></field>
+ <field><name>PB6</name><description>Pin B6</description><bitRange>[6:6]</bitRange><access>read-write</access></field>
+ <field><name>PB7</name><description>Pin B7</description><bitRange>[7:7]</bitRange><access>read-write</access></field>
+ </fields></register>
<register>
<name>PORTB</name>
<description>Port B Data Register</description>
@@ -1080,7 +1105,15 @@
<maximum>255</maximum>
</range>
</writeConstraint>
- </register>
+ <fields><field><name>PB0</name><description>Pin B0</description><bitRange>[0:0]</bitRange><access>read-write</access></field>
+ <field><name>PB1</name><description>Pin B1</description><bitRange>[1:1]</bitRange><access>read-write</access></field>
+ <field><name>PB2</name><description>Pin B2</description><bitRange>[2:2]</bitRange><access>read-write</access></field>
+ <field><name>PB3</name><description>Pin B3</description><bitRange>[3:3]</bitRange><access>read-write</access></field>
+ <field><name>PB4</name><description>Pin B4</description><bitRange>[4:4]</bitRange><access>read-write</access></field>
+ <field><name>PB5</name><description>Pin B5</description><bitRange>[5:5]</bitRange><access>read-write</access></field>
+ <field><name>PB6</name><description>Pin B6</description><bitRange>[6:6]</bitRange><access>read-write</access></field>
+ <field><name>PB7</name><description>Pin B7</description><bitRange>[7:7]</bitRange><access>read-write</access></field>
+ </fields></register>
</registers>
</peripheral>
<peripheral>
@@ -1105,7 +1138,14 @@
<maximum>255</maximum>
</range>
</writeConstraint>
- </register>
+ <fields><field><name>PD0</name><description>Pin D0</description><bitRange>[0:0]</bitRange><access>read-write</access></field>
+ <field><name>PD1</name><description>Pin D1</description><bitRange>[1:1]</bitRange><access>read-write</access></field>
+ <field><name>PD2</name><description>Pin D2</description><bitRange>[2:2]</bitRange><access>read-write</access></field>
+ <field><name>PD3</name><description>Pin D3</description><bitRange>[3:3]</bitRange><access>read-write</access></field>
+ <field><name>PD4</name><description>Pin D4</description><bitRange>[4:4]</bitRange><access>read-write</access></field>
+ <field><name>PD5</name><description>Pin D5</description><bitRange>[5:5]</bitRange><access>read-write</access></field>
+ <field><name>PD6</name><description>Pin D6</description><bitRange>[6:6]</bitRange><access>read-write</access></field>
+ </fields></register>
<register>
<name>PIND</name>
<description>Input Pins, Port D</description>
@@ -1118,7 +1158,14 @@
<maximum>255</maximum>
</range>
</writeConstraint>
- </register>
+ <fields><field><name>PD0</name><description>Pin D0</description><bitRange>[0:0]</bitRange><access>read-write</access></field>
+ <field><name>PD1</name><description>Pin D1</description><bitRange>[1:1]</bitRange><access>read-write</access></field>
+ <field><name>PD2</name><description>Pin D2</description><bitRange>[2:2]</bitRange><access>read-write</access></field>
+ <field><name>PD3</name><description>Pin D3</description><bitRange>[3:3]</bitRange><access>read-write</access></field>
+ <field><name>PD4</name><description>Pin D4</description><bitRange>[4:4]</bitRange><access>read-write</access></field>
+ <field><name>PD5</name><description>Pin D5</description><bitRange>[5:5]</bitRange><access>read-write</access></field>
+ <field><name>PD6</name><description>Pin D6</description><bitRange>[6:6]</bitRange><access>read-write</access></field>
+ </fields></register>
<register>
<name>PORTD</name>
<description>Data Register, Port D</description>
@@ -1131,7 +1178,14 @@
<maximum>255</maximum>
</range>
</writeConstraint>
- </register>
+ <fields><field><name>PD0</name><description>Pin D0</description><bitRange>[0:0]</bitRange><access>read-write</access></field>
+ <field><name>PD1</name><description>Pin D1</description><bitRange>[1:1]</bitRange><access>read-write</access></field>
+ <field><name>PD2</name><description>Pin D2</description><bitRange>[2:2]</bitRange><access>read-write</access></field>
+ <field><name>PD3</name><description>Pin D3</description><bitRange>[3:3]</bitRange><access>read-write</access></field>
+ <field><name>PD4</name><description>Pin D4</description><bitRange>[4:4]</bitRange><access>read-write</access></field>
+ <field><name>PD5</name><description>Pin D5</description><bitRange>[5:5]</bitRange><access>read-write</access></field>
+ <field><name>PD6</name><description>Pin D6</description><bitRange>[6:6]</bitRange><access>read-write</access></field>
+ </fields></register>
</registers>
</peripheral>
<peripheral>
Usually, atdf2svd generates fields for each pin in the DDR,PORT,PIN registers based on additional information in the ATDF file. However, it seems for the ATtiny2313{,A} chips, this information is missing. Patch in the missing fields manually.
This was found via https://github.com/Rahix/avr-hal/pull/500.