Merge pull request #149 from smbolton/fix_timer_types
Fix TIM timer types across all lines
This commit is contained in:
commit
c27bc1f719
@ -15,7 +15,7 @@ from stm32data.util import *
|
||||
|
||||
def corename(d):
|
||||
# print("CHECKING CORENAME", d)
|
||||
if m := re.match('.*Cortex-M(\d+)(\+?)\s*(.*)', d):
|
||||
if m := re.match(r'.*Cortex-M(\d+)(\+?)\s*(.*)', d):
|
||||
name = "cm" + str(m.group(1))
|
||||
if m.group(2) == "+":
|
||||
name += "p"
|
||||
@ -273,23 +273,20 @@ perimap = [
|
||||
('.*:FSMC:.*', ('fsmc', 'v1', 'FSMC')),
|
||||
('STM32H7.*:FMC:.*', ('fmc', 'h7', 'FMC')),
|
||||
|
||||
('.*LPTIM\d.*:G0xx_lptimer1_v1_4', ('lptim', 'g0', 'LPTIM')),
|
||||
(r'.*LPTIM\d.*:G0xx_lptimer1_v1_4', ('lptim', 'g0', 'LPTIM')),
|
||||
|
||||
('STM32H7.*:TIM1:.*', ('timer', 'v1', 'TIM_ADV')),
|
||||
('STM32H7.*:TIM2:.*', ('timer', 'v1', 'TIM_GP32')),
|
||||
('STM32H7.*:TIM5:.*', ('timer', 'v1', 'TIM_GP32')),
|
||||
('STM32H7.*:TIM6:.*', ('timer', 'v1', 'TIM_BASIC')),
|
||||
('STM32H7.*:TIM7:.*', ('timer', 'v1', 'TIM_BASIC')),
|
||||
('STM32H7.*:TIM8:.*', ('timer', 'v1', 'TIM_ADV')),
|
||||
('STM32F1.*:TIM(1|8):.*', ('timer', 'v1', 'TIM_ADV')),
|
||||
('STM32F1.*:TIM(2|5):.*', ('timer', 'v1', 'TIM_GP16')),
|
||||
('STM32F1.*:TIM(6|7):.*', ('timer', 'v1', 'TIM_BASIC')),
|
||||
|
||||
('STM32F3.*:TIM(6|7){1}:.*', ('timer', 'v1', 'TIM_BASIC')),
|
||||
('STM32F3.*:TIM(3|4|15|16|17){1}:.*', ('timer', 'v1', 'TIM_GP16')),
|
||||
('STM32F3.*:TIM2:.*', ('timer', 'v1', 'TIM_GP32')),
|
||||
('STM32F3.*:TIM(1|8|20){1}:.*', ('timer', 'v1', 'TIM_ADV')),
|
||||
('STM32L0.*:TIM2:.*', ('timer', 'v1', 'TIM_GP16')),
|
||||
|
||||
('STM32F7.*:TIM1:.*', ('timer', 'v1', 'TIM_ADV')),
|
||||
('STM32F7.*:TIM8:.*', ('timer', 'v1', 'TIM_ADV')),
|
||||
('.*TIM\d.*:gptimer.*', ('timer', 'v1', 'TIM_GP16')),
|
||||
('STM32U5.*:TIM(2|3|4|5):.*', ('timer', 'v1', 'TIM_GP32')),
|
||||
|
||||
('STM32.*:TIM(1|8|20):.*', ('timer', 'v1', 'TIM_ADV')),
|
||||
('STM32.*:TIM(2|5|23|24):.*', ('timer', 'v1', 'TIM_GP32')),
|
||||
('STM32.*:TIM(6|7|18):.*', ('timer', 'v1', 'TIM_BASIC')),
|
||||
(r'.*TIM\d.*:gptimer.*', ('timer', 'v1', 'TIM_GP16')),
|
||||
|
||||
('STM32F0.*:DBGMCU:.*', ('dbgmcu', 'f0', 'DBGMCU')),
|
||||
('STM32F1.*:DBGMCU:.*', ('dbgmcu', 'f1', 'DBGMCU')),
|
||||
@ -313,8 +310,8 @@ perimap = [
|
||||
('.*:IPCC:v1_0', ('ipcc', 'v1', 'IPCC')),
|
||||
('.*:DMAMUX.*', ('dmamux', 'v1', 'DMAMUX')),
|
||||
|
||||
('.*:GPDMA\d?:.*', ('gpdma', 'v1', 'GPDMA')),
|
||||
('.*:BDMA\d?:.*', ('bdma', 'v1', 'DMA')),
|
||||
(r'.*:GPDMA\d?:.*', ('gpdma', 'v1', 'GPDMA')),
|
||||
(r'.*:BDMA\d?:.*', ('bdma', 'v1', 'DMA')),
|
||||
('STM32H7.*:DMA2D:DMA2D:dma2d1_v1_0', ('dma2d', 'v2', 'DMA2D')),
|
||||
('.*:DMA2D:dma2d1_v1_0', ('dma2d', 'v1', 'DMA2D')),
|
||||
('STM32L4[PQRS].*:DMA.*', ('bdma', 'v1', 'DMA')), # L4+
|
||||
@ -1138,7 +1135,7 @@ def parse_dma():
|
||||
dmamux_channel = 0
|
||||
for n in dma_peri_name.split(","):
|
||||
n = n.strip()
|
||||
if result := re.match('.*' + n + '_(Channel|Stream)\[(\d+)-(\d+)\]', channels[0]['@Name']):
|
||||
if result := re.match('.*' + n + r'_(Channel|Stream)\[(\d+)-(\d+)\]', channels[0]['@Name']):
|
||||
low = int(result.group(2))
|
||||
high = int(result.group(3))
|
||||
for i in range(low, high + 1):
|
||||
@ -1280,7 +1277,7 @@ def parse_rcc_regs():
|
||||
for (key, body) in y.items():
|
||||
# Some chip families have a separate bus for GPIO so it's not attached to the AHB/APB
|
||||
# bus but an GPIO bus. Use the GPIO as the clock for these chips.
|
||||
if m := re.match('^fieldset/((A[PH]B\d?)|GPIO)[LH]?ENR\d?$', key):
|
||||
if m := re.match(r'^fieldset/((A[PH]B\d?)|GPIO)[LH]?ENR\d?$', key):
|
||||
reg = removeprefix(key, 'fieldset/')
|
||||
clock = m.group(1)
|
||||
clock = clock_renames.get(clock, clock)
|
||||
@ -1289,7 +1286,7 @@ def parse_rcc_regs():
|
||||
peri = removesuffix(field['name'], 'EN')
|
||||
|
||||
# Timers are a bit special, they may have a x2 freq
|
||||
peri_clock = f'{clock}_TIM' if re.match('^TIM\d+$', peri) else clock
|
||||
peri_clock = f'{clock}_TIM' if re.match(r'^TIM\d+$', peri) else clock
|
||||
res = {
|
||||
'clock': peri_clock,
|
||||
'enable': {
|
||||
|
Loading…
x
Reference in New Issue
Block a user