zy1000: flush jtag buffer before changing speed
authorØyvind Harboe <oyvind.harboe@zylin.com>
Mon, 18 Jan 2010 20:54:58 +0000 (21:54 +0100)
committerØyvind Harboe <oyvind.harboe@zylin.com>
Tue, 19 Jan 2010 09:58:48 +0000 (10:58 +0100)
It is conceivable that there could be commands in the
queue when a speed change request comes in. Flush the
hw queue before changing speed. Not observed, found by
inspection.

Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
src/jtag/zy1000/zy1000.c

index 9070f2e382c6e385184572516d17cd928fc7b08c..2c205b7a5bddbe608a2605665db240092f536c79 100644 (file)
@@ -199,6 +199,9 @@ void zy1000_reset(int trst, int srst)
 
 int zy1000_speed(int speed)
 {
+       /* flush JTAG master FIFO before setting speed */
+       waitIdle();
+
        if (speed == 0)
        {
                /*0 means RCLK*/