Wait for a while when switching the RESET_N line
[fw/altos] / lib / ccdbg-io.c
index e5e85e4390ff1220c3eebf12f30fe42a820b2d9e..3606c57cf960461d9a19ecfb879e070385c097bb 100644 (file)
@@ -25,6 +25,7 @@
 #endif
 
 static uint32_t        cc_clock_us = CC_CLOCK_US;
 #endif
 
 static uint32_t        cc_clock_us = CC_CLOCK_US;
+static uint32_t        cc_reset_us = CC_RESET_US;
 
 void
 ccdbg_set_clock(uint32_t us)
 
 void
 ccdbg_set_clock(uint32_t us)
@@ -41,6 +42,17 @@ ccdbg_half_clock(struct ccdbg *dbg)
        nanosleep(&req, &rem);
 }
 
        nanosleep(&req, &rem);
 }
 
+void
+ccdbg_wait_reset(struct ccdbg *dbg)
+{
+       struct timespec req, rem;
+       
+       ccdbg_sync_io(dbg);
+       req.tv_sec = (cc_reset_us) / 1000000;
+       req.tv_nsec = ((cc_reset_us) % 1000000) * 1000;
+       nanosleep(&req, &rem);
+}
+       
 struct ccdbg *
 ccdbg_open(void)
 {
 struct ccdbg *
 ccdbg_open(void)
 {