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(struct jtag_command
*cmd_queue
);
32 void bitq_cleanup(void);
34 #endif /* OPENOCD_JTAG_DRIVERS_BITQ_H */