@@ -34,6 +34,7 @@ def hjload(*_, **__): # noqa: E301
34
34
from ot .lc_ctrl .const import LcCtrlConstants
35
35
from ot .otp .const import OtpConstants
36
36
from ot .otp .secret import OtpSecretConstants
37
+ from ot .top import OpenTitanTop
37
38
from ot .util .arg import ArgError
38
39
from ot .util .log import configure_loggers
39
40
from ot .util .misc import alphanum_key , to_bool
@@ -510,18 +511,14 @@ def _generate_pwrmgr(self, cfg: ConfigParser,
510
511
def main ():
511
512
"""Main routine"""
512
513
debug = True
513
- top_map = {
514
- 'darjeeling' : 'dj' ,
515
- 'earlgrey' : 'eg' ,
516
- }
517
514
actions = ['config' , 'clock' ]
518
515
try :
519
516
desc = sys .modules [__name__ ].__doc__ .split ('.' , 1 )[0 ].strip ()
520
517
argparser = ArgumentParser (description = f'{ desc } .' )
521
518
files = argparser .add_argument_group (title = 'Files' )
522
519
files .add_argument ('opentitan' , nargs = '?' , metavar = 'OTDIR' ,
523
520
help = 'OpenTitan root directory' )
524
- files .add_argument ('-T' , '--top' , choices = top_map . keys () ,
521
+ files .add_argument ('-T' , '--top' , choices = OpenTitanTop . names ,
525
522
help = 'OpenTitan top name' )
526
523
files .add_argument ('-o' , '--out' , metavar = 'CFG' ,
527
524
help = 'Filename of the config file to generate' )
@@ -576,7 +573,7 @@ def main():
576
573
argparser .error ('Top name is required if no top file is '
577
574
'specified' )
578
575
top = f'top_{ args .top } '
579
- topvar = top_map [ args .top ]
576
+ topvar = OpenTitanTop . short_name ( args .top )
580
577
topcfg = joinpath (ot_dir , f'hw/{ top } /data/autogen/{ top } .gen.hjson' )
581
578
if not isfile (topcfg ):
582
579
argparser .error (f"No such file '{ topcfg } '" )
@@ -589,9 +586,9 @@ def main():
589
586
ltop = cfg .top_name
590
587
if not ltop :
591
588
argparser .error ('Unknown top name' )
592
- log .info ("Top: '%s'" , cfg . top_name )
589
+ log .info ("Top: '%s'" , ltop )
593
590
ltop = ltop .lower ()
594
- topvar = { k . lower (): v for k , v in top_map . items ()}. get ( ltop )
591
+ topvar = OpenTitanTop . short_name ( cfg . top_name )
595
592
if not topvar :
596
593
argparser .error (f'Unsupported top name: { cfg .top_name } ' )
597
594
top = f'top_{ ltop } '
0 commit comments