blob: dac59240af53cb65ee358582610509b8e7e1dde4 [file] [log] [blame]
Mark Dykes50297972024-03-15 12:49:22 -05001# !/usr/bin/env python
2#
3# Copyright (c) 2025 Arm Limited. All rights reserved.
4#
5# SPDX-License-Identifier: BSD-3-Clause
6#
7
8
9#python3 generate_smc.py -s smclist
10#This script generated C files after the read of the SMC description/list file
11import argparse
12import readsmclist
13import gen_arg_struct_def
14import gen_field_specification
15
16parser = argparse.ArgumentParser(
17 prog='generate_smc.py',
18 description='Generates SMC code to add to fuzzer library',
19 epilog='one argument input')
20
21parser.add_argument('-s', '--smclist',help="SMC list file .")
22
23args = parser.parse_args()
24
25print("starting generate SMC")
26
27seq = 0
28
29readsmclist.readsmclist(args.smclist,seq)
30
31arglst = readsmclist.arglst
32argnumfield = readsmclist.argnumfield
33argfieldname = readsmclist.argfieldname
34argstartbit = readsmclist.argstartbit
35argendbit = readsmclist.argendbit
36argdefval = readsmclist.argdefval
37smcname = readsmclist.smcname
38argnum = readsmclist.argnum
39argname = readsmclist.argname
40
41gen_arg_struct_def.gen_arg_struct_def("./include/arg_struct_def.h",argfieldname,arglst,argnumfield)
42
43gen_field_specification.gen_field_specification("./include/field_specification.h",
44argfieldname,argendbit,argstartbit,argdefval,argnumfield)
45