]> granicus.if.org Git - esp-idf/commitdiff
ulp: fix a bug that ULP may not be restarted correctly
authorIvan Grokhotkov <ivan@espressif.com>
Mon, 20 Feb 2017 07:25:16 +0000 (15:25 +0800)
committerIvan Grokhotkov <ivan@espressif.com>
Wed, 22 Feb 2017 06:40:36 +0000 (14:40 +0800)
components/ulp/ulp.c

index 424a468c3c78eecf9ff8676923b02f316e933a62..c7ac15b49c6271f85b32dd2fa12a6f9f130dbd6b 100644 (file)
@@ -265,6 +265,8 @@ esp_err_t ulp_run(uint32_t entry_point)
 {
     // disable ULP timer
     CLEAR_PERI_REG_MASK(RTC_CNTL_STATE0_REG, RTC_CNTL_ULP_CP_SLP_TIMER_EN);
+    // wait for at least 1 RTC_SLOW_CLK cycle
+    ets_delay_us(10);
     // set entry point
     SET_PERI_REG_BITS(SENS_SAR_START_FORCE_REG, SENS_PC_INIT_V, entry_point, SENS_PC_INIT_S);
     // disable force start