OpenCores
URL https://opencores.org/ocsvn/adv_debug_sys/adv_debug_sys/trunk

Subversion Repositories adv_debug_sys

[/] [adv_debug_sys/] [trunk/] [Software/] [adv_jtag_bridge/] [cable_ft2232.c] - Diff between revs 21 and 55

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 21 Rev 55
Line 24... Line 24...
#include <string.h>
#include <string.h>
#include <stdlib.h>
#include <stdlib.h>
#include <stdint.h>
#include <stdint.h>
#include <unistd.h>
#include <unistd.h>
#include <ftdi.h>
#include <ftdi.h>
 
 
#include "cable_ft2232.h"
#include "cable_ft2232.h"
#include "cable_common.h"
 
#include "errcodes.h"
#include "errcodes.h"
int debug = 0;
int debug = 0;
 
 
 
#define debug(...) //fprintf(stderr, __VA_ARGS__ )
 
 
 
jtag_cable_t ft2232_cable_driver = {
 
    .name = "ft2232",
 
    .inout_func = NULL,
 
    .out_func = NULL,
 
    .init_func = cable_ftdi_init,
 
    .opt_func = cable_ftdi_opt,
 
    .bit_out_func = cable_ftdi_write_bit,
 
    .bit_inout_func = cable_ftdi_read_write_bit,
 
    .stream_out_func = cable_ftdi_write_stream,
 
    .stream_inout_func = cable_ftdi_read_stream,
 
    .flush_func = cable_ftdi_flush,
 
    .opts = "",
 
    .help = "no options\n",
 
};
 
 
 
usbconn_t * usbconn_ftdi_connect();
 
int my_ftdi_write_data(struct ftdi_context *ftdi, unsigned char *buf, int size);
 
char *my_ftdi_get_error_string (struct ftdi_context *ftdi);
 
int my_ftdi_read_data(struct ftdi_context *ftdi, unsigned char *buf, int size);
 
int my_ftdi_usb_open_desc(struct ftdi_context *ftdi, int vendor, int product, const char* description, const char* serial);
 
void my_ftdi_deinit(struct ftdi_context *ftdi);
 
int my_ftdi_usb_purge_buffers(struct ftdi_context *ftdi);
 
int my_ftdi_usb_purge_rx_buffer(struct ftdi_context *ftdi);
 
int my_ftdi_usb_purge_tx_buffer(struct ftdi_context *ftdi);
 
int my_ftdi_usb_reset(struct ftdi_context *ftdi);
 
int my_ftdi_set_latency_timer(struct ftdi_context *ftdi, unsigned char latency);
 
int my_ftdi_set_baudrate(struct ftdi_context *ftdi, int baudrate);
 
int my_ftdi_read_data_set_chunksize(struct ftdi_context *ftdi, unsigned int chunksize);
 
int my_ftdi_write_data_set_chunksize(struct ftdi_context *ftdi, unsigned int chunksize);
 
int my_ftdi_set_event_char(struct ftdi_context *ftdi, unsigned char eventch, unsigned char enable);
 
int my_ftdi_set_error_char(struct ftdi_context *ftdi, unsigned char errorch, unsigned char enable);
 
int my_ftdi_set_bitmode(struct ftdi_context *ftdi, unsigned char bitmask, unsigned char mode);
 
int my_ftdi_usb_close(struct ftdi_context *ftdi);
 
 
static int usbconn_ftdi_common_open( usbconn_t *conn);
static int usbconn_ftdi_common_open( usbconn_t *conn);
static void usbconn_ftdi_free( usbconn_t *conn );
static void usbconn_ftdi_free( usbconn_t *conn );
static int seq_purge(struct ftdi_context *ftdic, int purge_rx, int purge_tx);
static int seq_purge(struct ftdi_context *ftdic, int purge_rx, int purge_tx);
static int seq_reset(struct ftdi_context *ftdic);
static int seq_reset(struct ftdi_context *ftdic);
static int usbconn_ftdi_flush( ftdi_param_t *params );
static int usbconn_ftdi_flush( ftdi_param_t *params );
Line 765... Line 801...
 
 
/// ----------------------------------------------------------------------------------------------
/// ----------------------------------------------------------------------------------------------
/// Advanced Jtag debugger driver interface.
/// Advanced Jtag debugger driver interface.
/// ----------------------------------------------------------------------------------------------
/// ----------------------------------------------------------------------------------------------
 
 
 
jtag_cable_t *cable_ftdi_get_driver(void)
 
{
 
  return &ft2232_cable_driver;
 
}
 
 
int cable_ftdi_init() {
int cable_ftdi_init() {
        int err = APP_ERR_NONE;
        int err = APP_ERR_NONE;
        int res = 0;
        int res = 0;
        unsigned char  *buf = malloc(10);
        unsigned char  *buf = malloc(10);
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.