takashi kadono / Mbed OS Nucleo446_SSD1331

Dependencies:   ssd1331

Committer:
kadonotakashi
Date:
Wed Oct 10 00:33:53 2018 +0000
Revision:
0:8fdf9a60065b
how to make mbed librry

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kadonotakashi 0:8fdf9a60065b 1 from os.path import dirname, abspath, join, exists
kadonotakashi 0:8fdf9a60065b 2
kadonotakashi 0:8fdf9a60065b 3 from tools.utils import json_file_to_dict
kadonotakashi 0:8fdf9a60065b 4 from tools.targets import TARGET_MAP
kadonotakashi 0:8fdf9a60065b 5 from tools.config import Config
kadonotakashi 0:8fdf9a60065b 6
kadonotakashi 0:8fdf9a60065b 7 CONFIG_DIR = dirname(abspath(__file__))
kadonotakashi 0:8fdf9a60065b 8 CONFIG_MAP = json_file_to_dict(join(CONFIG_DIR, "config_paths.json"))
kadonotakashi 0:8fdf9a60065b 9 TARGET_CONFIGS = json_file_to_dict(join(CONFIG_DIR, "target_configs.json"))
kadonotakashi 0:8fdf9a60065b 10
kadonotakashi 0:8fdf9a60065b 11 def get_valid_configs(target_name):
kadonotakashi 0:8fdf9a60065b 12 if target_name in TARGET_CONFIGS:
kadonotakashi 0:8fdf9a60065b 13 target_config = TARGET_CONFIGS[target_name]
kadonotakashi 0:8fdf9a60065b 14 elif (target_name in TARGET_MAP and 'EMAC' in TARGET_MAP[target_name].device_has):
kadonotakashi 0:8fdf9a60065b 15 target_config = { "default_test_configuration": "ETHERNET", "test_configurations": ["ETHERNET"] }
kadonotakashi 0:8fdf9a60065b 16 else:
kadonotakashi 0:8fdf9a60065b 17 return {}
kadonotakashi 0:8fdf9a60065b 18
kadonotakashi 0:8fdf9a60065b 19 config_dict = {}
kadonotakashi 0:8fdf9a60065b 20 for attr in CONFIG_MAP:
kadonotakashi 0:8fdf9a60065b 21 if attr in target_config['test_configurations']:
kadonotakashi 0:8fdf9a60065b 22 config_dict[attr] = CONFIG_MAP[attr]
kadonotakashi 0:8fdf9a60065b 23 return config_dict
kadonotakashi 0:8fdf9a60065b 24
kadonotakashi 0:8fdf9a60065b 25 def get_config_path(conf_name, target_name):
kadonotakashi 0:8fdf9a60065b 26 configs = get_valid_configs(target_name)
kadonotakashi 0:8fdf9a60065b 27 if configs and conf_name.upper() in configs:
kadonotakashi 0:8fdf9a60065b 28 return join(CONFIG_DIR, configs[conf_name.upper()])
kadonotakashi 0:8fdf9a60065b 29 else:
kadonotakashi 0:8fdf9a60065b 30 return None
kadonotakashi 0:8fdf9a60065b 31
kadonotakashi 0:8fdf9a60065b 32 def get_default_config(source_dir, target_name):
kadonotakashi 0:8fdf9a60065b 33 if target_name in TARGET_CONFIGS:
kadonotakashi 0:8fdf9a60065b 34 config_name = TARGET_CONFIGS[target_name]['default_test_configuration']
kadonotakashi 0:8fdf9a60065b 35 if config_name == "NONE":
kadonotakashi 0:8fdf9a60065b 36 return None
kadonotakashi 0:8fdf9a60065b 37 return join(CONFIG_DIR, CONFIG_MAP[config_name])
kadonotakashi 0:8fdf9a60065b 38 elif Config.find_app_config(source_dir):
kadonotakashi 0:8fdf9a60065b 39 return None
kadonotakashi 0:8fdf9a60065b 40 elif (target_name in TARGET_MAP and 'EMAC' in TARGET_MAP[target_name].device_has):
kadonotakashi 0:8fdf9a60065b 41 return join(CONFIG_DIR, CONFIG_MAP["ETHERNET"])
kadonotakashi 0:8fdf9a60065b 42 else:
kadonotakashi 0:8fdf9a60065b 43 return None