Try serial polarity high/high
[fw/altos] / lib / ccdbg-io.c
index 53ea758342c6f22f055c42549bc2fc3c403c8336..3606c57cf960461d9a19ecfb879e070385c097bb 100644 (file)
 #include "cp-usb.h"
 #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)
+{
+       cc_clock_us = us;
+}
+
 void
 ccdbg_half_clock(struct ccdbg *dbg)
 {
        struct timespec req, rem;
-       req.tv_sec = (CC_CLOCK_US / 2) / 1000000;
-       req.tv_nsec = ((CC_CLOCK_US / 2) % 1000000) * 1000;
+       req.tv_sec = (cc_clock_us / 2) / 1000000;
+       req.tv_nsec = ((cc_clock_us / 2) % 1000000) * 1000;
        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)
 {