summaryrefslogtreecommitdiff
path: root/platforms/stm32/l4.yaml
blob: 33322d910ef5131f06a46699767678a548a610ca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
- match:
    mem: b
  mem:
    flash:
      origin: 0x08000000
      size: 128k

- match:
    mem: c
  mem:
    flash:
      origin: 0x08000000
      size: 256k

- match:
    mem: e
  mem:
    flash:
      origin: 0x08000000
      size: 512k
    ram:
      origin: 0x20000000
      size: 128k

- match:
    mem: g
  mem:
    flash:
      origin: 0x08000000
      size: 1024k
    ram:
      origin: 0x20000000
      size: 128k

- mem:
    ram:
      origin: 0x20000000
      size: 64k

  periph:
    stm32_dma:
      DMA1:
        type: v1
        offset: 0x40020000
      DMA2:
        type: v1
        offset: 0x40020400

    stm32_exti:
      EXTI:
        type: l4
        offset: 0x40010400

    stm32_flash:
      FLASH:
        type: l4
        offset: 0x40022000

    stm32_gpio:
      GPIOA:
        offset: 0x48000000
      GPIOB:
        offset: 0x48000400
      GPIOC:
        offset: 0x48000800
      GPIOD:
        offset: 0x48000c00
      GPIOE:
        offset: 0x48001000

    stm32_pwr:
      PWR:
        type: wb # Yes, wb has a couple of extras, but otherwise same.
        offset: 0x40007000

    stm32_rtc:
      RTC:
        offset: 0x40002800
        backup_count: 32

    stm32_syscfg:
      SYSCFG:
        type: wb # Yes, wb has a couple of extras, but otherwise same.
        offset: 0x40010000

    stm32_timer:
      TIM1:
        offset: 0x40012C00
      TIM2:
        offset: 0x40000000
      TIM3:
        offset: 0x40000400
      TIM6:
        offset: 0x40001000
      TIM7:
        offset: 0x40001400
      TIM15:
        offset: 0x40014000
      TIM16:
        offset: 0x40014400
      LPTIM1:
        type: lpv1
        offset: 0x40007c00
      LPTIM2:
        type: lpv1
        offset: 0x40009400

    stm32_uart:
      USART1:
        type: v2
        offset: 0x40013800
      USART2:
        type: v2
        offset: 0x40004400
      USART3:
        type: v2
        offset: 0x40004800
      USART4:
        type: v2
        offset: 0x40004c00
      LPUART1:
        type: lpv1
        offset: 0x40008000

    rcc:
      RCC:
        offset: 0x40021000
        type: l4
        bus:
          AHB1:
            DMA1: 0
            DMA2: 1
            FLASH: 8
            CRC: 12
            TSC: 16
            DMA2D: 17

          AHB2:
            GPIOA: 0
            GPIOB: 1
            GPIOC: 2
            GPIOD: 3
            GPIOE: 4
            GPIOF: 5
            GPIOG: 6
            GPIOH: 7
            OTGFS: 12
            ADC1: 13
            DCMI: 14
            AES1: 16
            HASH: 17
            RNG1: 18

          AHB3:
            FMC: 0
            QUADSPI: 8

          APB1_1:
            TIM2: 0
            TIM3: 1
            TIM4: 2
            TIM5: 3
            TIM6: 4
            TIM7: 5
            LCD: 9
            RTCAPB: 10
            WWDG: 11
            SPI2: 14
            SPI3: 15
            USART2: 17
            USART3: 18
            UART4: 19
            UART5: 20
            I2C1: 21
            I2C2: 22
            I2C3: 23
            CRS: 24
            CAN1: 25
            CAN2: 26
            USB: 26
            PWR: 28
            DAC1: 29
            OPAMP1: 30
            LPTIM1: 31

          APB1_2:
            LPUART1: 0
            I2C4: 1
            SWPMI1: 2
            LPTIM2: 5

          APB2:
            SYSCFG: 0
            FW: 7
            SDMMC1: 10
            TIM1: 11
            SPI1: 12
            TIM8: 13
            USART1: 14
            TIM15: 16
            TIM16: 17
            TIM17: 18
            SAI1: 21
            SAI2: 22
            DFSDM1: 24

  interrupt:
    irq:
      0: WWDG
      1: PVD
      2: TAMP_STAMP
      3: RTC_WKUP
      4: FLASH
      5: RCC
      6: EXTI0
      7: EXTI1
      8: EXTI2
      9: EXTI3
      10: EXTI4
      11: DMA1_CH1
      12: DMA1_CH2
      13: DMA1_CH3
      14: DMA1_CH4
      15: DMA1_CH5
      16: DMA1_CH6
      17: DMA1_CH7
      18: ADC1_2
      19: CAN1_TX
      20: CAN1_RX0
      21: CAN1_RX1
      22: CAN1_SCRE
      23: EXTI9_5
      24: TIM1_BRK_TIM15
      25: TIM1_UP_TIM16
      26: TIM1_TRG_COM_TIM17
      27: TIM1_CC
      28: TIM2
      29: TIM3
      30: TIM4
      31: I2C1_EV
      32: I2C1_ER
      33: I2C2_EV
      34: I2C2_ER
      35: SPI1
      36: SPI2
      37: USART1
      38: USART2
      39: USART3
      40: EXTI15_10
      41: RTC_Alarm
      42: FSDM1_FLT3
      43: TIM8_BRK
      44: TIM8_UP
      45: TIM8_TRG_COM
      46: TIM8_CC
      47: ADC3
      48: FMC
      49: SDMMC1
      50: TIM5
      51: SPI3
      52: UART4
      53: UART5
      54: TIM6_DACUNDER
      55: TIM7
      56: DMA2_CH1
      57: DMA2_CH2
      58: DMA2_CH3
      59: DMA2_CH4
      60: DMA2_CH5
      61: DFSDM1_FLT0
      62: DFSDM1_FLT1
      63: DFSDM1_FLT2
      64: COMP
      65: LPTIM1
      66: LPTIM2
      67: OTG_FS
      68: DMA2_CH6
      69: DMA2_CH7
      70: LPUART1
      71: QUADSPI
      72: I2C3_EV
      73: I2C3_ER
      74: SAI1
      75: SAI2
      76: SWPMI1
      77: TSC
      78: LCD
      79: AES
      80: RNG_HASH
      81: FPU
      82: HASH_CRS
      83: I2C4_EV
      84: I2C4_ER
      85: DCMI
      86: CAN2_TX
      87: CAN2_RX0
      88: CAN2_RX1
      89: CAN2_SCR
      90: DMA2D

  define:
    - STM32L4

  meta:
    cpu: cortex-m4f