20
20
cantd_list = [] #'PIN','name','CANTD'
21
21
canrd_list = [] #'PIN','name','CANRD'
22
22
eth_list = [] #'PIN','name','ETH'
23
+ qspi_list = [] #'PIN','name','QUADSPI'
23
24
24
25
25
26
def find_gpio_file (xmldoc ):
@@ -131,6 +132,10 @@ def store_can(pin, name, signal):
131
132
def store_eth (pin , name , signal ):
132
133
eth_list .append ([pin ,name ,signal ])
133
134
135
+ #function to store QSPI pins
136
+ def store_qspi (pin , name , signal ):
137
+ qspi_list .append ([pin ,name ,signal ])
138
+
134
139
def print_header ():
135
140
s = ("""/*
136
141
*******************************************************************************
@@ -205,6 +210,8 @@ def print_all_lists():
205
210
print_can (xml , cantd_list )
206
211
if print_list_header ("ETHERNET" , "Ethernet" , eth_list , "ETH" ):
207
212
print_eth (xml , eth_list )
213
+ if print_list_header ("QUADSPI" , "QUADSPI" , qspi_list , "QSPI" ):
214
+ print_qspi (xml , qspi_list )
208
215
209
216
def print_list_header (comment , name , l , switch ):
210
217
if len (l )> 0 :
@@ -412,6 +419,33 @@ def print_eth(xml, l):
412
419
#endif
413
420
""" )
414
421
422
+ def print_qspi (xml , l ):
423
+ i = 0
424
+ if len (l )> 0 :
425
+ prev_s = ''
426
+ while i < len (l ):
427
+ p = l [i ]
428
+ result = get_gpio_af_num (xml , p [1 ], p [2 ])
429
+ if result != 'NOTFOUND' :
430
+ s1 = "%-12s" % (" {" + p [0 ] + ',' )
431
+ #2nd element is the QUADSPI_XXXX signal
432
+ s1 += 'QUADSPI, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, ' + result + ')},'
433
+ #check duplicated lines, only signal differs
434
+ if (prev_s == s1 ):
435
+ s1 = '|' + p [2 ]
436
+ else :
437
+ if len (prev_s )> 0 :
438
+ out_file .write ('\n ' )
439
+ prev_s = s1
440
+ s1 += ' // ' + p [2 ]
441
+ out_file .write (s1 )
442
+ i += 1
443
+
444
+ out_file .write ( """\n {NC, NP, 0}
445
+ };
446
+ #endif
447
+ """ )
448
+
415
449
tokenize = re .compile (r'(\d+)|(\D+)' ).findall
416
450
def natural_sortkey (list_2_elem ):
417
451
@@ -434,6 +468,7 @@ def sort_my_lists():
434
468
cantd_list .sort (key = natural_sortkey )
435
469
canrd_list .sort (key = natural_sortkey )
436
470
eth_list .sort (key = natural_sortkey )
471
+ qspi_list .sort (key = natural_sortkey )
437
472
438
473
return
439
474
@@ -554,7 +589,9 @@ def sort_my_lists():
554
589
if "CAN" in sig :
555
590
store_can ( pin , name , sig )
556
591
if "ETH" in sig :
557
- store_eth ( pin , name , sig )
592
+ store_eth ( pin , name , sig )
593
+ if "QUADSPI" in sig :
594
+ store_qspi ( pin , name , sig )
558
595
559
596
print (" * * * Sorting lists..." )
560
597
sort_my_lists ()
0 commit comments