X-Git-Url: http://developer.intra2net.com/git/?p=libftdi;a=blobdiff_plain;f=ftdi%2Fftdi.h;fp=ftdi%2Fftdi.h;h=28a40bdfece8226382b002cb9cd72eb5bc7277df;hp=9a025b823fd23ab384b753864265745f8129b82c;hb=948f9adab13f60df70132e658e5facf8e0e654a2;hpb=5fdb1cb1f352985eac3dae9acd741e485adc8b52 diff --git a/ftdi/ftdi.h b/ftdi/ftdi.h index 9a025b8..28a40bd 100644 --- a/ftdi/ftdi.h +++ b/ftdi/ftdi.h @@ -27,7 +27,12 @@ struct ftdi_context { // FTDI specific int baudrate; unsigned char bitbang_enabled; - + unsigned char *readbuffer; + unsigned char readbuffer_offset; + unsigned char readbuffer_remaining; + unsigned int readbuffer_chunksize; + unsigned int writebuffer_chunksize; + // misc char *error_str; }; @@ -59,6 +64,7 @@ extern "C" { #endif int ftdi_init(struct ftdi_context *ftdi); + void ftdi_deinit(struct ftdi_context *ftdi); void ftdi_set_usbdev (struct ftdi_context *ftdi, usb_dev_handle *usbdev); int ftdi_usb_open(struct ftdi_context *ftdi, int vendor, int product); int ftdi_usb_close(struct ftdi_context *ftdi); @@ -66,8 +72,14 @@ extern "C" { int ftdi_usb_purge_buffers(struct ftdi_context *ftdi); int ftdi_set_baudrate(struct ftdi_context *ftdi, int baudrate); - int ftdi_write_data(struct ftdi_context *ftdi, unsigned char *buf, int size); + int ftdi_read_data(struct ftdi_context *ftdi, unsigned char *buf, int size); + int ftdi_read_data_set_chunksize(struct ftdi_context *ftdi, unsigned int chunksize); + int ftdi_read_data_get_chunksize(struct ftdi_context *ftdi, unsigned int *chunksize); + + int ftdi_write_data(struct ftdi_context *ftdi, unsigned char *buf, int size); + int ftdi_write_data_set_chunksize(struct ftdi_context *ftdi, unsigned int chunksize); + int ftdi_write_data_get_chunksize(struct ftdi_context *ftdi, unsigned int *chunksize); int ftdi_enable_bitbang(struct ftdi_context *ftdi, unsigned char bitmask); int ftdi_disable_bitbang(struct ftdi_context *ftdi);