Skip to content

Commit 9e5614a

Browse files
authored
Merge pull request #614 from skoe/override_pins
Override pin names for OPAMPs
2 parents 0548eb6 + 2e47664 commit 9e5614a

File tree

14 files changed

+387
-99
lines changed

14 files changed

+387
-99
lines changed

README.md

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,8 @@ This project is built in three stages:
105105
2. **JSON Generation**
106106
- `stm32-data-gen` generates the JSON files from consolidated YAML and source data:
107107
1. Parse YAML files to build an in-memory IR for registers (`src/registers.rs`).
108-
- `data/extra/family/*.yaml`: STM32 family metadata (package options, flash/RAM sizes, low-level identifiers).
108+
- `data/extra/family/*.yaml`: Extra or corrective peripheral entries, rules to modify pin names,
109+
rules to override pin names for specific instances of a peripheral.
109110
- `data/header_map.yaml`: MCU slug to HAL C-header filename mapping for base addresses & IRQ extraction.
110111
- `data/registers/*.yaml`: Register-block definitions (offsets, fields, enums).
111112
- `data/dmamux/*.yaml`: DMAMUX profiles for families with a DMA multiplexer.
@@ -259,6 +260,3 @@ Sometimes even the same IP name+version in the same chip family has different re
259260
('.*TIM\d.*:gptimer.*', 'timer_v1/TIM_GP16'),
260261
```
261262
262-
### Peripheral versions
263-
264-
The versions of peripherals can be found in the table [here](https://docs.google.com/spreadsheets/d/1-R-AjYrMLL2_623G-AFN2A9THMf8FFMpFD4Kq-owPmI/edit#gid=0).

data/extra/family/STM32F3.yaml

Lines changed: 66 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -6,43 +6,69 @@ peripherals:
66
kind: vrefintcal
77
version: v1
88
block: VREFINTCAL
9-
- name: OPAMP1
10-
pins:
11-
- pin: PA7
12-
signal: VP0
13-
- pin: PA5
14-
signal: VP1
15-
- pin: PA3
16-
signal: VP2
17-
- pin: PA1
18-
signal: VP3
19-
- name: OPAMP2
20-
pins:
21-
- pin: PD14
22-
signal: VP0
23-
- pin: PB14
24-
signal: VP1
25-
- pin: PB0
26-
signal: VP2
27-
- pin: PA7
28-
signal: VP3
29-
- name: OPAMP3
30-
pins:
31-
- pin: PB13
32-
signal: VP0
33-
- pin: PA5
34-
signal: VP1
35-
- pin: PA1
36-
signal: VP2
37-
- pin: PB0
38-
signal: VP3
39-
- name: OPAMP4
40-
pins:
41-
- pin: PD11
42-
signal: VP0
43-
- pin: PB11
44-
signal: VP1
45-
- pin: PA4
46-
signal: VP2
47-
- pin: PB13
48-
signal: VP3
9+
10+
override_pins:
11+
# Corresponds to tsmc018_ull_opamp_v1_0_Cube
12+
OPAMP1:
13+
- pin: PA1
14+
signal: VP0
15+
- pin: PA7
16+
signal: VP1
17+
- pin: PA3
18+
signal: VP2
19+
- pin: PA5
20+
signal: VP3
21+
- pin: PC5
22+
signal: VM0
23+
- pin: PA3
24+
signal: VM1
25+
- pin: PA2
26+
signal: VOUT
27+
28+
OPAMP2:
29+
- pin: PA7
30+
signal: VP0
31+
- pin: PD14
32+
signal: VP1
33+
- pin: PB0
34+
signal: VP2
35+
- pin: PB14
36+
signal: VP3
37+
- pin: PC5
38+
signal: VM0
39+
- pin: PA5
40+
signal: VM1
41+
- pin: PA6
42+
signal: VOUT
43+
44+
OPAMP3:
45+
- pin: PB0
46+
signal: VP0
47+
- pin: PB13
48+
signal: VP1
49+
- pin: PA1
50+
signal: VP2
51+
- pin: PA5
52+
signal: VP3
53+
- pin: PB10
54+
signal: VM0
55+
- pin: PB2
56+
signal: VM1
57+
- pin: PB1
58+
signal: VOUT
59+
60+
OPAMP4:
61+
- pin: PB13
62+
signal: VP0
63+
- pin: PD11
64+
signal: VP1
65+
- pin: PA4
66+
signal: VP2
67+
- pin: PB11
68+
signal: VP3
69+
- pin: PB10
70+
signal: VM0
71+
- pin: PD8
72+
signal: VM1
73+
- pin: PB12
74+
signal: VOUT

data/extra/family/STM32G4.yaml

Lines changed: 88 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -6,53 +6,91 @@ peripherals:
66
kind: tamp
77
version: g4
88
block: TAMP
9-
- name: OPAMP1
10-
pins:
11-
- pin: PA1
12-
signal: VP0
13-
- pin: PA3
14-
signal: VP1
15-
- pin: PA7
16-
signal: VP2
17-
- name: OPAMP2
18-
pins:
19-
- pin: PA7
20-
signal: VP0
21-
- pin: PB14
22-
signal: VP1
23-
- pin: PB0
24-
signal: VP2
25-
- pin: PD14
26-
signal: VP3
27-
- name: OPAMP3
28-
pins:
29-
- pin: PB0
30-
signal: VP0
31-
- pin: PB13
32-
signal: VP1
33-
- pin: PA1
34-
signal: VP2
35-
- name: OPAMP4
36-
pins:
37-
- pin: PB13
38-
signal: VP0
39-
- pin: PD11
40-
signal: VP1
41-
- pin: PB11
42-
signal: VP2
43-
- name: OPAMP5
44-
pins:
45-
- pin: PB14
46-
signal: VP0
47-
- pin: PD12
48-
signal: VP1
49-
- pin: PC3
50-
signal: VP2
51-
- name: OPAMP6
52-
pins:
53-
- pin: PB12
54-
signal: VP0
55-
- pin: PD9
56-
signal: VP1
57-
- pin: PB13
58-
signal: VP2
9+
10+
override_pins:
11+
# Corresponds to G4_tsmc90_fastOpamp_Cube
12+
OPAMP1:
13+
- pin: PA1
14+
signal: VINP0
15+
- pin: PA3
16+
signal: VINP1
17+
- pin: PA7
18+
signal: VINP2
19+
- pin: PA3
20+
signal: VINM0
21+
- pin: PC5
22+
signal: VINM1
23+
- pin: PA2
24+
signal: VOUT
25+
26+
OPAMP2:
27+
- pin: PA7
28+
signal: VINP0
29+
- pin: PB14
30+
signal: VINP1
31+
- pin: PB0
32+
signal: VINP2
33+
- pin: PD14
34+
signal: VINP3
35+
- pin: PA5
36+
signal: VINM0
37+
- pin: PC5
38+
signal: VINM1
39+
- pin: PA6
40+
signal: VOUT
41+
42+
OPAMP3:
43+
- pin: PB0
44+
signal: VINP0
45+
- pin: PB13
46+
signal: VINP1
47+
- pin: PA1
48+
signal: VINP2
49+
- pin: PB2
50+
signal: VINM0
51+
- pin: PB10
52+
signal: VINM1
53+
- pin: PB1
54+
signal: VOUT
55+
56+
OPAMP4:
57+
- pin: PB13
58+
signal: VINP0
59+
- pin: PD11
60+
signal: VINP1
61+
- pin: PB11
62+
signal: VINP2
63+
- pin: PB10
64+
signal: VINM0
65+
- pin: PD8
66+
signal: VINM1
67+
- pin: PB12
68+
signal: VOUT
69+
70+
OPAMP5:
71+
- pin: PB14
72+
signal: VINP0
73+
- pin: PD12
74+
signal: VINP1
75+
- pin: PC3
76+
signal: VINP2
77+
- pin: PB15
78+
signal: VINM0
79+
- pin: PA3
80+
signal: VINM1
81+
- pin: PA8
82+
signal: VOUT
83+
84+
OPAMP6:
85+
- pin: PB12
86+
signal: VINP0
87+
- pin: PD9
88+
signal: VINP1
89+
- pin: PB13
90+
signal: VINP2
91+
- pin: PA1
92+
signal: VINM0
93+
- pin: PB1
94+
signal: VINM1
95+
- pin: PB11
96+
signal: VOUT

data/extra/family/STM32H5.yaml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
---
2+
override_pins:
3+
# Corresponds to cmosM40_opamp_v1_0_Cube
4+
# STM32H5 variant
5+
OPAMP1:
6+
- pin: PC5
7+
signal: VINM0
8+
- pin: PB1
9+
signal: VINM1
10+
- pin: PB0
11+
signal: VINP0
12+
- pin: PA0
13+
signal: VINP2
14+
- pin: PA7
15+
signal: VOUT

data/extra/family/STM32H7.yaml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,26 @@ pin_cleanup:
88
- ADC
99
- DAC
1010
- COMP
11+
12+
override_pins:
13+
# Corresponds to cmosM40_opamp_v1_0_Cube
14+
# STM32H7 variant
15+
OPAMP1:
16+
- pin: PC5
17+
signal: VINM0
18+
- pin: PA7
19+
signal: VINM1
20+
- pin: PB0
21+
signal: VINP0
22+
- pin: PC4
23+
signal: VOUT
24+
25+
OPAMP2:
26+
- pin: PE8
27+
signal: VINM0
28+
- pin: PG1
29+
signal: VINM1
30+
- pin: PE9
31+
signal: VINP0
32+
- pin: PE7
33+
signal: VOUT

data/extra/family/STM32L4+.yaml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,21 @@ peripherals:
66
kind: vrefintcal
77
version: v1
88
block: VREFINTCAL
9+
10+
override_pins:
11+
# Corresponds to tsmc018_ull_opamp_v1_0_L4_Cube
12+
OPAMP1:
13+
- pin: PA0
14+
signal: VINP
15+
- pin: PA1
16+
signal: VINM
17+
- pin: PA3
18+
signal: VOUT
19+
20+
OPAMP2:
21+
- pin: PA6
22+
signal: VINP
23+
- pin: PA7
24+
signal: VINM
25+
- pin: PB0
26+
signal: VOUT

data/extra/family/STM32L4.yaml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,21 @@ peripherals:
66
kind: vrefintcal
77
version: v1
88
block: VREFINTCAL
9+
10+
override_pins:
11+
# Corresponds to tsmc018_ull_opamp_v1_0_L4_Cube
12+
OPAMP1:
13+
- pin: PA0
14+
signal: VINP
15+
- pin: PA1
16+
signal: VINM
17+
- pin: PA3
18+
signal: VOUT
19+
20+
OPAMP2:
21+
- pin: PA6
22+
signal: VINP
23+
- pin: PA7
24+
signal: VINM
25+
- pin: PB0
26+
signal: VOUT

data/extra/family/STM32L5.yaml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
---
2+
override_pins:
3+
# Corresponds to tsmc018_ull_opamp_v1_0_L4_Cube, also used for L5
4+
OPAMP1:
5+
- pin: PA0
6+
signal: VINP
7+
- pin: PA1
8+
signal: VINM
9+
- pin: PA3
10+
signal: VOUT
11+
12+
OPAMP2:
13+
- pin: PA6
14+
signal: VINP
15+
- pin: PA7
16+
signal: VINM
17+
- pin: PB0
18+
signal: VOUT

data/extra/family/STM32U0.yaml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
---
2+
override_pins:
3+
# Corresponds to tsmc018_ull_opamp_v1_0_L4_Cube, also used for U0
4+
OPAMP1:
5+
- pin: PA0
6+
signal: VINP
7+
- pin: PA1
8+
signal: VINM
9+
- pin: PA3
10+
signal: VOUT
11+
12+
OPAMP2:
13+
- pin: PA6
14+
signal: VINP
15+
- pin: PA7
16+
signal: VINM
17+
- pin: PB0
18+
signal: VOUT

0 commit comments

Comments
 (0)