Remove reference to nonexistent rcc_h7ab
This commit is contained in:
parent
767e8d93f8
commit
4837bee5df
23
parse.py
23
parse.py
@ -245,7 +245,7 @@ perimap = [
|
|||||||
('STM32L0.*:RCC:.*', 'rcc_l0/RCC'),
|
('STM32L0.*:RCC:.*', 'rcc_l0/RCC'),
|
||||||
('STM32L4.*:RCC:.*', 'rcc_l4/RCC'),
|
('STM32L4.*:RCC:.*', 'rcc_l4/RCC'),
|
||||||
('STM32F4.*:RCC:.*', 'rcc_f4/RCC'),
|
('STM32F4.*:RCC:.*', 'rcc_f4/RCC'),
|
||||||
('.*:STM32H7AB_rcc_v1_0', 'rcc_h7ab/RCC'),
|
('.*:STM32H7AB_rcc_v1_0', ''), # rcc_h7ab/RCC
|
||||||
('.*:STM32H7_rcc_v1_0', 'rcc_h7/RCC'),
|
('.*:STM32H7_rcc_v1_0', 'rcc_h7/RCC'),
|
||||||
('.*:STM32L0_dbgmcu_v1_0', 'dbg_l0/DBG'),
|
('.*:STM32L0_dbgmcu_v1_0', 'dbg_l0/DBG'),
|
||||||
('.*:STM32L0_crs_v1_0', 'crs_l0/CRS'),
|
('.*:STM32L0_crs_v1_0', 'crs_l0/CRS'),
|
||||||
@ -267,9 +267,12 @@ rng_clock_map = [
|
|||||||
def match_peri(peri):
|
def match_peri(peri):
|
||||||
for r, block in perimap:
|
for r, block in perimap:
|
||||||
if re.match(r, peri):
|
if re.match(r, peri):
|
||||||
|
if block == '':
|
||||||
|
return None
|
||||||
return block
|
return block
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
|
||||||
def find_af(gpio_af, peri_name, pin_name, signal_name):
|
def find_af(gpio_af, peri_name, pin_name, signal_name):
|
||||||
if gpio_af in af:
|
if gpio_af in af:
|
||||||
if pin_name in af[gpio_af]:
|
if pin_name in af[gpio_af]:
|
||||||
@ -277,12 +280,14 @@ def find_af(gpio_af, peri_name, pin_name, signal_name):
|
|||||||
return af[gpio_af][pin_name][peri_name + '_' + signal_name]
|
return af[gpio_af][pin_name][peri_name + '_' + signal_name]
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
|
||||||
def match_rng_clock(rcc):
|
def match_rng_clock(rcc):
|
||||||
for r, clock in rng_clock_map:
|
for r, clock in rng_clock_map:
|
||||||
if re.match(r, rcc):
|
if re.match(r, rcc):
|
||||||
return clock
|
return clock
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
|
||||||
def parse_headers():
|
def parse_headers():
|
||||||
os.makedirs('sources/headers_parsed', exist_ok=True)
|
os.makedirs('sources/headers_parsed', exist_ok=True)
|
||||||
print('loading headers...')
|
print('loading headers...')
|
||||||
@ -429,7 +434,6 @@ def parse_chips():
|
|||||||
|
|
||||||
pins[peri_name].append(entry)
|
pins[peri_name].append(entry)
|
||||||
|
|
||||||
|
|
||||||
for chip_name, chip in chips.items():
|
for chip_name, chip in chips.items():
|
||||||
print(f'* processing chip {chip_name}')
|
print(f'* processing chip {chip_name}')
|
||||||
rcc = chip['rcc']
|
rcc = chip['rcc']
|
||||||
@ -457,21 +461,10 @@ def parse_chips():
|
|||||||
p['clock'] = clocks[rcc][pname]
|
p['clock'] = clocks[rcc][pname]
|
||||||
elif chip['family'] == 'STM32H7' and pname == "SPI6":
|
elif chip['family'] == 'STM32H7' and pname == "SPI6":
|
||||||
p['clock'] = "APB4"
|
p['clock'] = "APB4"
|
||||||
# else:
|
|
||||||
#print( f'peri {pname} -> no clock')
|
|
||||||
|
|
||||||
if block := match_peri(chip_name+':'+pname+':'+pkind):
|
if block := match_peri(chip_name+':'+pname+':'+pkind):
|
||||||
p['block'] = block
|
p['block'] = block
|
||||||
|
|
||||||
#if block is not None and block.startswith("dac_"):
|
|
||||||
#peri_pins = []
|
|
||||||
#dac_out_pins = find_signal_pins(chip, pname + "_OUT([0-9]+)")
|
|
||||||
#for (out_pin, m) in dac_out_pins:
|
|
||||||
#peri_pins.append( OrderedDict({
|
|
||||||
#"pin": out_pin,
|
|
||||||
#"function": "Ch" + m[1],
|
|
||||||
#}) )
|
|
||||||
|
|
||||||
if pname in chip['pins']:
|
if pname in chip['pins']:
|
||||||
if len(chip['pins'][pname]) > 0:
|
if len(chip['pins'][pname]) > 0:
|
||||||
p['pins'] = chip['pins'][pname]
|
p['pins'] = chip['pins'][pname]
|
||||||
@ -483,7 +476,6 @@ def parse_chips():
|
|||||||
|
|
||||||
peris[pname] = p
|
peris[pname] = p
|
||||||
|
|
||||||
|
|
||||||
# Handle GPIO specially.
|
# Handle GPIO specially.
|
||||||
for p in range(20):
|
for p in range(20):
|
||||||
port = 'GPIO' + chr(ord('A')+p)
|
port = 'GPIO' + chr(ord('A')+p)
|
||||||
@ -561,6 +553,7 @@ def parse_chips():
|
|||||||
|
|
||||||
af = {}
|
af = {}
|
||||||
|
|
||||||
|
|
||||||
def parse_gpio_af():
|
def parse_gpio_af():
|
||||||
os.makedirs('data/gpio_af', exist_ok=True)
|
os.makedirs('data/gpio_af', exist_ok=True)
|
||||||
for f in glob('sources/cubedb/mcu/IP/GPIO-*_gpio_v1_0_Modes.xml'):
|
for f in glob('sources/cubedb/mcu/IP/GPIO-*_gpio_v1_0_Modes.xml'):
|
||||||
@ -605,8 +598,10 @@ def parse_gpio_af():
|
|||||||
|
|
||||||
af[ff] = pins
|
af[ff] = pins
|
||||||
|
|
||||||
|
|
||||||
clocks = {}
|
clocks = {}
|
||||||
|
|
||||||
|
|
||||||
def parse_clocks():
|
def parse_clocks():
|
||||||
for f in glob('sources/cubedb/mcu/IP/RCC-*rcc_v1_0_Modes.xml'):
|
for f in glob('sources/cubedb/mcu/IP/RCC-*rcc_v1_0_Modes.xml'):
|
||||||
ff = removeprefix(f, 'sources/cubedb/mcu/IP/RCC-')
|
ff = removeprefix(f, 'sources/cubedb/mcu/IP/RCC-')
|
||||||
|
Loading…
x
Reference in New Issue
Block a user