From a6b35d64968680a9698cca131dae74275cc55362 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Tue, 30 Oct 2018 12:41:41 +1100 Subject: [PATCH] HAL_ChibiOS: restore old ODR behaviour for F4 boards This fixes an issue with ESP8366 on Pixracer --- .../hwdef/scripts/chibios_hwdef.py | 36 +++++++++---------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/libraries/AP_HAL_ChibiOS/hwdef/scripts/chibios_hwdef.py b/libraries/AP_HAL_ChibiOS/hwdef/scripts/chibios_hwdef.py index 5d26a24b53..0ec09cf3b7 100644 --- a/libraries/AP_HAL_ChibiOS/hwdef/scripts/chibios_hwdef.py +++ b/libraries/AP_HAL_ChibiOS/hwdef/scripts/chibios_hwdef.py @@ -288,8 +288,26 @@ class generic_pin(object): v = e return "PIN_PUPDR_%s(%uU)" % (v, self.pin) + def get_ODR_F1(self): + '''return one of LOW, HIGH''' + values = ['LOW', 'HIGH'] + v = 'HIGH' + if self.type == 'OUTPUT': + v = 'LOW' + for e in self.extra: + if e in values: + v = e + #for some controllers input pull up down is selected by ODR + if self.type == "INPUT": + v = 'LOW' + if 'PULLUP' in self.extra: + v = "HIGH" + return "PIN_ODR_%s(%uU)" % (v, self.pin) + def get_ODR(self): '''return one of LOW, HIGH''' + if mcu_series == "STM32F100": + return self.get_ODR_F1() values = ['LOW', 'HIGH'] v = 'HIGH' for e in self.extra: @@ -316,24 +334,6 @@ class generic_pin(object): return None return self.get_AFIO() - #F1 series GPIO Cfg methods - - def get_ODR(self): - '''return one of LOW, HIGH''' - values = ['LOW', 'HIGH'] - v = 'HIGH' - if self.type == 'OUTPUT': - v = 'LOW' - for e in self.extra: - if e in values: - v = e - #for some controllers input pull up down is selected by ODR - if self.type == "INPUT": - v = 'LOW' - if 'PULLUP' in self.extra: - v = "HIGH" - return "PIN_ODR_%s(%uU)" % (v, self.pin) - def get_CR(self): '''return CR FLAGS''' #Check Speed