Files
dummy_device_template/manifest_src/gen_manifest_json.py
2026-04-09 22:10:28 +03:00

39 lines
1.1 KiB
Python

import sys
import csv
import json
def main():
if len(sys.argv) != 2:
print('provide manifest data directory')
return
manifest_dir = sys.argv[1]
with open(manifest_dir + '/dev_type', 'r') as f:
dev_type = f.read()
mem_segments = []
out_manifest = {
'mem_segments': mem_segments,
'dev_type': dev_type
}
with open(manifest_dir + '/seg_data.csv', 'r', newline='') as csvfile:
reader = csv.DictReader(csvfile, delimiter=';')
for line in reader:
mem_segments.append(
{
'seg_id': int(line['seg_id']),
'name': line['name'],
'word_len': int(line['word_len']),
'default_size': int(line['default_size']),
'default_addr': int(line['default_addr']),
'is_executable': line['is_executable'] == '1'
}
)
with open(manifest_dir + '/MANIFEST.json', 'w') as f:
json.dump(out_manifest, f, indent=4)
if __name__ == '__main__':
main()