From d5fbedc24fdd41e7c30b2f9239f666f33893e065 Mon Sep 17 00:00:00 2001 From: Vegard Storheil Eriksen Date: Thu, 16 Sep 2021 23:50:26 +0200 Subject: gpio: Generate instances from platform spec. --- gpio/SConscript | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 gpio/SConscript (limited to 'gpio/SConscript') diff --git a/gpio/SConscript b/gpio/SConscript new file mode 100644 index 0000000..ea352cc --- /dev/null +++ b/gpio/SConscript @@ -0,0 +1,25 @@ +Import('env') + +headers = [] +instances = [] +sources = [] +aliases = {} +type_aliases = {} + +periph = env['PLATFORM_SPEC'].get('periph', {}) + +if 'stm32_gpio' in periph: + headers.append('stm32_gpio.h') + for name, data in periph['stm32_gpio'].items(): + instances.append({ + 'type': 'STM32_GPIO_%s_t' % data['type'], + 'name': name, + 'args': [data['offset']], + }) + + type_aliases['Pin'] = 'STM32_GPIO_%s_t::Pin' % data['type'] + type_aliases['PinArray'] = 'STM32_GPIO_%s_t::PinArray' % data['type'] + +env.Jinja2('gpio.h', '../templates/periph_instances.h.j2', headers = headers, instances = instances, aliases = aliases, type_aliases = type_aliases) + +Return('sources') -- cgit v1.2.3