diff options
author | danicampora <danicampora@gmail.com> | 2015-03-20 10:59:35 +0100 |
---|---|---|
committer | danicampora <danicampora@gmail.com> | 2015-03-21 11:27:26 +0100 |
commit | c1c23e2f6a145fa5aacc165395e00f47f359b95a (patch) | |
tree | d9966e3cfa235e546629a6480327a8d8f595df7d | |
parent | cd9bc14c8f524834578d3e7b2ee8ecf4fbc8ea3e (diff) | |
download | micropython-c1c23e2f6a145fa5aacc165395e00f47f359b95a.tar.gz micropython-c1c23e2f6a145fa5aacc165395e00f47f359b95a.zip |
cc3200: Remove superfluous code in pybsleep.
-rw-r--r-- | cc3200/misc/mpcallback.c | 2 | ||||
-rw-r--r-- | cc3200/mods/pybsleep.c | 20 |
2 files changed, 7 insertions, 15 deletions
diff --git a/cc3200/misc/mpcallback.c b/cc3200/misc/mpcallback.c index fa1d55f4ca..7827b0e62e 100644 --- a/cc3200/misc/mpcallback.c +++ b/cc3200/misc/mpcallback.c @@ -113,7 +113,7 @@ uint mpcallback_translate_priority (uint priority) { void mpcallback_handler (mp_obj_t self_in) { mpcallback_obj_t *self = self_in; - if (self->handler != mp_const_none) { + if (self && self->handler != mp_const_none) { // disable interrupts to avoid nesting uint primsk = disable_irq(); // when executing code within a handler we must lock the GC to prevent diff --git a/cc3200/mods/pybsleep.c b/cc3200/mods/pybsleep.c index 52dafd9d41..b074d539bd 100644 --- a/cc3200/mods/pybsleep.c +++ b/cc3200/mods/pybsleep.c @@ -121,7 +121,7 @@ typedef struct { ******************************************************************************/ STATIC const mp_obj_type_t pybsleep_type; STATIC nvic_reg_store_t *nvic_reg_store; -STATIC pybsleep_wake_cb_t pybsleep_wake_cb; +STATIC pybsleep_wake_cb_t pybsleep_wake_cb = {NULL, NULL, NULL, 0}; volatile arm_cm4_core_regs_t vault_arm_registers; STATIC pybsleep_reset_cause_t pybsleep_reset_cause = PYB_SLP_PWRON_RESET; @@ -397,30 +397,22 @@ STATIC void PRCMInterruptHandler (void) { // reading the interrupt status automatically clears the interrupt if (PRCM_INT_SLOW_CLK_CTR == MAP_PRCMIntStatus()) { // this interrupt is triggered during active mode - if (pybsleep_wake_cb.timer_lpds_wake_cb) { - mpcallback_handler(pybsleep_wake_cb.timer_lpds_wake_cb); - } + mpcallback_handler(pybsleep_wake_cb.timer_lpds_wake_cb); } else { // interrupt has been triggered while waking up from LPDS switch (MAP_PRCMLPDSWakeupCauseGet()) { case PRCM_LPDS_HOST_IRQ: - if (pybsleep_wake_cb.wlan_lpds_wake_cb) { - mpcallback_handler(pybsleep_wake_cb.wlan_lpds_wake_cb); - } + mpcallback_handler(pybsleep_wake_cb.wlan_lpds_wake_cb); break; case PRCM_LPDS_GPIO: - if (pybsleep_wake_cb.gpio_lpds_wake_cb) { - mpcallback_handler(pybsleep_wake_cb.gpio_lpds_wake_cb); - } + mpcallback_handler(pybsleep_wake_cb.gpio_lpds_wake_cb); break; case PRCM_LPDS_TIMER: - // disable timer was wake-up source + // disable the timer as a wake-up source pybsleep_wake_cb.timer_wake_pwrmode &= ~PYB_PWR_MODE_LPDS; MAP_PRCMLPDSWakeupSourceDisable(PRCM_LPDS_TIMER); - if (pybsleep_wake_cb.timer_lpds_wake_cb) { - mpcallback_handler(pybsleep_wake_cb.timer_lpds_wake_cb); - } + mpcallback_handler(pybsleep_wake_cb.timer_lpds_wake_cb); break; default: break; |