diff options
Diffstat (limited to 'lib/python/qmk/info.py')
| -rw-r--r-- | lib/python/qmk/info.py | 29 | 
1 files changed, 23 insertions, 6 deletions
| diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py index 9a07fc842f..7e6f531f9c 100644 --- a/lib/python/qmk/info.py +++ b/lib/python/qmk/info.py @@ -49,6 +49,7 @@ def info_json(keyboard):          'parse_errors': [],          'parse_warnings': [],          'maintainer': 'qmk', +        'manufacturer': 'qmk',      }      # Populate the list of JSON keymaps @@ -387,6 +388,19 @@ def _extract_matrix_info(info_data, config_c):      return info_data +# TODO: kill off usb.device_ver in favor of usb.device_version +def _extract_device_version(info_data): +    if info_data.get('usb'): +        if info_data['usb'].get('device_version') and not info_data['usb'].get('device_ver'): +            (major, minor, revision) = info_data['usb']['device_version'].split('.', 3) +            info_data['usb']['device_ver'] = f'0x{major.zfill(2)}{minor}{revision}' +        if not info_data['usb'].get('device_version') and info_data['usb'].get('device_ver'): +            major = int(info_data['usb']['device_ver'][2:4]) +            minor = int(info_data['usb']['device_ver'][4]) +            revision = int(info_data['usb']['device_ver'][5]) +            info_data['usb']['device_version'] = f'{major}.{minor}.{revision}' + +  def _extract_config_h(info_data):      """Pull some keyboard information from existing config.h files      """ @@ -430,6 +444,13 @@ def _extract_config_h(info_data):                  elif key_type == 'int':                      dotty_info[info_key] = int(config_c[config_key]) +                elif key_type == 'bcd_version': +                    major = int(config_c[config_key][2:4]) +                    minor = int(config_c[config_key][4]) +                    revision = int(config_c[config_key][5]) + +                    dotty_info[info_key] = f'{major}.{minor}.{revision}' +                  else:                      dotty_info[info_key] = config_c[config_key] @@ -444,6 +465,7 @@ def _extract_config_h(info_data):      _extract_split_main(info_data, config_c)      _extract_split_transport(info_data, config_c)      _extract_split_right_pins(info_data, config_c) +    _extract_device_version(info_data)      return info_data @@ -622,12 +644,7 @@ def arm_processor_rules(info_data, rules):      info_data['protocol'] = 'ChibiOS'      if 'bootloader' not in info_data: -        if 'STM32' in info_data['processor']: -            info_data['bootloader'] = 'stm32-dfu' -        elif 'WB32' in info_data['processor']: -            info_data['bootloader'] = 'wb32-dfu' -        else: -            info_data['bootloader'] = 'unknown' +        info_data['bootloader'] = 'unknown'      if 'STM32' in info_data['processor']:          info_data['platform'] = 'STM32' | 
