From a9a732af1fcd45c27aff731901e347d0ed82a888 Mon Sep 17 00:00:00 2001 From: Damien George Date: Wed, 13 Apr 2016 22:38:44 +0100 Subject: [PATCH] esp8266: Remove pin_id field from C pin object. This field is the same as phys_port and not needed. --- esp8266/modpyb.h | 3 +-- esp8266/modpybpin.c | 30 +++++++++++++++--------------- esp8266/modpybpwm.c | 2 +- 3 files changed, 17 insertions(+), 18 deletions(-) diff --git a/esp8266/modpyb.h b/esp8266/modpyb.h index eb67d5cd50..69a6edb709 100644 --- a/esp8266/modpyb.h +++ b/esp8266/modpyb.h @@ -13,10 +13,9 @@ extern const mp_obj_type_t pyb_spi_type; typedef struct _pyb_pin_obj_t { mp_obj_base_t base; - uint16_t pin_id; uint16_t phys_port; - uint32_t periph; uint16_t func; + uint32_t periph; } pyb_pin_obj_t; uint mp_obj_get_pin(mp_obj_t pin_in); diff --git a/esp8266/modpybpin.c b/esp8266/modpybpin.c index 63ba410849..d12d5505d7 100644 --- a/esp8266/modpybpin.c +++ b/esp8266/modpybpin.c @@ -45,21 +45,21 @@ //#define GPIO_PULL_DOWN (2) STATIC const pyb_pin_obj_t pyb_pin_obj[] = { - {{&pyb_pin_type}, 0, 0, PERIPHS_IO_MUX_GPIO0_U, FUNC_GPIO0}, - {{&pyb_pin_type}, 1, 1, PERIPHS_IO_MUX_U0TXD_U, FUNC_GPIO1}, - {{&pyb_pin_type}, 2, 2, PERIPHS_IO_MUX_GPIO2_U, FUNC_GPIO2}, - {{&pyb_pin_type}, 3, 3, PERIPHS_IO_MUX_U0RXD_U, FUNC_GPIO3}, - {{&pyb_pin_type}, 4, 4, PERIPHS_IO_MUX_GPIO4_U, FUNC_GPIO4}, - {{&pyb_pin_type}, 5, 5, PERIPHS_IO_MUX_GPIO5_U, FUNC_GPIO5}, - {{&pyb_pin_type}, 9, 9, PERIPHS_IO_MUX_SD_DATA2_U, FUNC_GPIO9}, - {{&pyb_pin_type}, 10, 10, PERIPHS_IO_MUX_SD_DATA3_U, FUNC_GPIO10}, - {{&pyb_pin_type}, 12, 12, PERIPHS_IO_MUX_MTDI_U, FUNC_GPIO12}, - {{&pyb_pin_type}, 13, 13, PERIPHS_IO_MUX_MTCK_U, FUNC_GPIO13}, - {{&pyb_pin_type}, 14, 14, PERIPHS_IO_MUX_MTMS_U, FUNC_GPIO14}, - {{&pyb_pin_type}, 15, 15, PERIPHS_IO_MUX_MTDO_U, FUNC_GPIO15}, + {{&pyb_pin_type}, 0, FUNC_GPIO0, PERIPHS_IO_MUX_GPIO0_U}, + {{&pyb_pin_type}, 1, FUNC_GPIO1, PERIPHS_IO_MUX_U0TXD_U}, + {{&pyb_pin_type}, 2, FUNC_GPIO2, PERIPHS_IO_MUX_GPIO2_U}, + {{&pyb_pin_type}, 3, FUNC_GPIO3, PERIPHS_IO_MUX_U0RXD_U}, + {{&pyb_pin_type}, 4, FUNC_GPIO4, PERIPHS_IO_MUX_GPIO4_U}, + {{&pyb_pin_type}, 5, FUNC_GPIO5, PERIPHS_IO_MUX_GPIO5_U}, + {{&pyb_pin_type}, 9, FUNC_GPIO9, PERIPHS_IO_MUX_SD_DATA2_U}, + {{&pyb_pin_type}, 10, FUNC_GPIO10, PERIPHS_IO_MUX_SD_DATA3_U}, + {{&pyb_pin_type}, 12, FUNC_GPIO12, PERIPHS_IO_MUX_MTDI_U}, + {{&pyb_pin_type}, 13, FUNC_GPIO13, PERIPHS_IO_MUX_MTCK_U}, + {{&pyb_pin_type}, 14, FUNC_GPIO14, PERIPHS_IO_MUX_MTMS_U}, + {{&pyb_pin_type}, 15, FUNC_GPIO15, PERIPHS_IO_MUX_MTDO_U}, // GPIO16 is special, belongs to different register set, and // otherwise handled specially. - {{&pyb_pin_type}, 16, 16, -1, -1}, + {{&pyb_pin_type}, 16, -1, -1}, }; STATIC uint8_t pin_mode[16 + 1]; @@ -130,7 +130,7 @@ STATIC void pyb_pin_print(const mp_print_t *print, mp_obj_t self_in, mp_print_ki pyb_pin_obj_t *self = self_in; // pin name - mp_printf(print, "Pin(%u)", self->pin_id); + mp_printf(print, "Pin(%u)", self->phys_port); } // pin.init(mode, pull=Pin.PULL_NONE, af=-1) @@ -202,7 +202,7 @@ STATIC mp_obj_t pyb_pin_make_new(const mp_obj_type_t *type, mp_uint_t n_args, mp int wanted_pin = mp_obj_get_int(args[0]); pyb_pin_obj_t *pin = NULL; for (int i = 0; i < MP_ARRAY_SIZE(pyb_pin_obj); i++) { - if (pyb_pin_obj[i].pin_id == wanted_pin) { + if (pyb_pin_obj[i].phys_port == wanted_pin) { pin = (pyb_pin_obj_t*)&pyb_pin_obj[i]; break; } diff --git a/esp8266/modpybpwm.c b/esp8266/modpybpwm.c index ccd5f56b25..871e4c3dd7 100644 --- a/esp8266/modpybpwm.c +++ b/esp8266/modpybpwm.c @@ -47,7 +47,7 @@ STATIC bool pwm_inited = false; STATIC void pyb_pwm_print(const mp_print_t *print, mp_obj_t self_in, mp_print_kind_t kind) { pyb_pwm_obj_t *self = MP_OBJ_TO_PTR(self_in); - mp_printf(print, "PWM(%u", self->pin->pin_id); + mp_printf(print, "PWM(%u", self->pin->phys_port); if (self->active) { mp_printf(print, ", freq=%u, duty=%u", pwm_get_freq(self->channel), pwm_get_duty(self->channel));