From 624738ca64c71c8f2cccced3fb5d2380bb4ae56b Mon Sep 17 00:00:00 2001 From: Damien George Date: Fri, 22 Apr 2016 09:56:02 +0100 Subject: [PATCH] extmod/machine_i2c: Allow mp_hal_pin_obj_t to be any type, not a ptr. --- esp8266/esp_mphal.h | 2 +- extmod/machine_i2c.c | 4 ++-- stmhal/mphalport.h | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/esp8266/esp_mphal.h b/esp8266/esp_mphal.h index 82277ed5af..39cf60ab16 100644 --- a/esp8266/esp_mphal.h +++ b/esp8266/esp_mphal.h @@ -63,7 +63,7 @@ void ets_event_poll(void); #include "etshal.h" #include "gpio.h" #include "esp8266/modpyb.h" -#define mp_hal_pin_obj_t pyb_pin_obj_t +#define mp_hal_pin_obj_t pyb_pin_obj_t* #define mp_hal_get_pin_obj(o) mp_obj_get_pin_obj(o) #define mp_hal_pin_config_od(p) do { \ ETS_GPIO_INTR_DISABLE(); \ diff --git a/extmod/machine_i2c.c b/extmod/machine_i2c.c index 061b44378b..e3bdb36925 100644 --- a/extmod/machine_i2c.c +++ b/extmod/machine_i2c.c @@ -37,8 +37,8 @@ typedef struct _machine_i2c_obj_t { mp_obj_base_t base; uint32_t us_delay; - mp_hal_pin_obj_t *scl; - mp_hal_pin_obj_t *sda; + mp_hal_pin_obj_t scl; + mp_hal_pin_obj_t sda; } machine_i2c_obj_t; STATIC void mp_hal_i2c_delay(machine_i2c_obj_t *self) { diff --git a/stmhal/mphalport.h b/stmhal/mphalport.h index 65de2ab863..7b29f9c9c0 100644 --- a/stmhal/mphalport.h +++ b/stmhal/mphalport.h @@ -43,7 +43,7 @@ void mp_hal_set_interrupt_char(int c); // -1 to disable // C-level pin HAL #include "stmhal/pin.h" -#define mp_hal_pin_obj_t pin_obj_t +#define mp_hal_pin_obj_t pin_obj_t* #define mp_hal_get_pin_obj(o) (pin_obj_t*)pin_find(o) #define mp_hal_pin_config_od(p) mp_hal_gpio_config((p)->gpio, (p)->pin, 5, 0, 0) #define mp_hal_pin_low(p) GPIO_clear_pin((p)->gpio, (p)->pin_mask)