fix(tools): preserve newlines and float values in param migration

- migrate_c_params.py: preserve newlines and paragraph breaks in long
  descriptions, use YAML block scalars for multi-line strings
- generate_params.py: support @value tags on float type parameters
  (fixes RC*_REV enum values being lost during yaml generation)
This commit is contained in:
Jacob Dahl
2026-03-17 21:55:31 -08:00
committed by Jacob Dahl
parent d5974a18d9
commit 6966d67c1f
2 changed files with 17 additions and 4 deletions
+4 -1
View File
@@ -108,7 +108,7 @@ def parse_yaml_parameters_config(yaml_config, ethernet_supported):
tags = '@group {:}'.format(param_group)
if param['type'] == 'enum':
param_type = 'INT32'
for key in param['values']:
for key in sorted(param['values'], key=float):
tags += '\n * @value {:} {:}'.format(key, param['values'][key])
elif param['type'] == 'bitmask':
param_type = 'INT32'
@@ -124,6 +124,9 @@ def parse_yaml_parameters_config(yaml_config, ethernet_supported):
param_type = 'INT32'
elif param['type'] == 'float':
param_type = 'FLOAT'
if 'values' in param:
for key in sorted(param['values'], key=float):
tags += '\n * @value {:} {:}'.format(key, param['values'][key])
else:
raise Exception("unknown param type {:}".format(param['type']))