1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 /***************************************************************************
4 * Copyright (C) 2007 by Pavel Chromy *
6 ***************************************************************************/
8 #ifndef OPENOCD_JTAG_DRIVERS_BITQ_H
9 #define OPENOCD_JTAG_DRIVERS_BITQ_H
11 #include <jtag/commands.h>
13 struct bitq_interface {
14 /* function to enqueueing low level IO requests */
15 int (*out)(int tms, int tdi, int tdo_req);
18 int (*sleep)(unsigned long us);
19 int (*reset)(int trst, int srst);
21 /* delayed read of requested TDO data,
22 * the input shall be checked after call to any enqueuing function
28 extern struct bitq_interface *bitq_interface;
30 int bitq_execute_queue(void);
32 void bitq_cleanup(void);
34 #endif /* OPENOCD_JTAG_DRIVERS_BITQ_H */