33
33
usb_list = [] # 'PIN','name','USB'
34
34
usb_otgfs_list = [] # 'PIN','name','USB'
35
35
usb_otghs_list = [] # 'PIN','name','USB'
36
+ sd_list = [] # 'PIN','name','SD'
36
37
37
38
38
39
def find_gpio_file ():
@@ -296,6 +297,14 @@ def store_usb(pin, name, signal):
296
297
usb_otghs_list .append ([pin , name , signal ])
297
298
298
299
300
+ # function to store SD pins
301
+ def store_sd (pin , name , signal ):
302
+ # print(pin, signal, name)
303
+ if isPinAndSignalInList (pin , signal , sd_list ):
304
+ return
305
+ sd_list .append ([pin , name , signal ])
306
+
307
+
299
308
def print_header ():
300
309
s = """/*
301
310
*******************************************************************************
@@ -377,6 +386,8 @@ def print_all_lists():
377
386
print_usb (usb_otgfs_list )
378
387
if print_list_header ("" , "USB_OTG_HS" , "PCD" , usb_otghs_list ):
379
388
print_usb (usb_otghs_list )
389
+ if print_list_header ("SD" , "SD" , "SD" , sd_list ):
390
+ print_sd ()
380
391
# Print specific PinNames in header file
381
392
print_syswkup_h ()
382
393
print_usb_h ()
@@ -687,6 +698,26 @@ def print_syswkup_h():
687
698
out_h_file .write (s1 )
688
699
689
700
701
+ def print_sd ():
702
+ for p in sd_list :
703
+ result = get_gpio_af_num (p [1 ], p [2 ])
704
+ s1 = "%-10s" % (" {" + p [0 ] + "," )
705
+ # 2nd element is the SD signal
706
+ a = p [2 ].split ("_" )
707
+ if a [1 ].startswith ("C" ) or a [1 ].endswith ("DIR" ):
708
+ s1 += a [0 ] + ", STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, " + result + ")},"
709
+ else :
710
+ s1 += a [0 ] + ", STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, " + result + ")},"
711
+ s1 += " // " + p [2 ] + "\n "
712
+ out_c_file .write (s1 )
713
+ out_c_file .write (
714
+ """ {NC, NP, 0}
715
+ };
716
+ #endif
717
+ """
718
+ )
719
+
720
+
690
721
def print_usb (lst ):
691
722
use_hs_in_fs = False
692
723
nb_loop = 1
@@ -788,6 +819,7 @@ def sort_my_lists():
788
819
usb_list .sort (key = natural_sortkey )
789
820
usb_otgfs_list .sort (key = natural_sortkey )
790
821
usb_otghs_list .sort (key = natural_sortkey )
822
+ sd_list .sort (key = natural_sortkey )
791
823
792
824
793
825
def clean_all_lists ():
@@ -813,6 +845,7 @@ def clean_all_lists():
813
845
del usb_list [:]
814
846
del usb_otgfs_list [:]
815
847
del usb_otghs_list [:]
848
+ del sd_list [:]
816
849
817
850
818
851
def parse_pins ():
@@ -855,6 +888,8 @@ def parse_pins():
855
888
store_sys (pin , name , sig )
856
889
if "USB" in sig :
857
890
store_usb (pin , name , sig )
891
+ if sig .startswith ("SD" ):
892
+ store_sd (pin , name , sig )
858
893
859
894
860
895
# main
0 commit comments