Main Page | Modules | Data Structures | Directories | File List | Data Fields | Globals | Examples

usb_io.c File Reference

#include <string.h>
#include <usb.h>
#include "base.h"
#include "libnjb.h"
#include "ioutil.h"
#include "usb_io.h"
#include "njb_error.h"

Functions

ssize_t usb_pipe_write (njb_t *njb, void *buf, size_t nbytes)
ssize_t usb_pipe_read (njb_t *njb, void *buf, size_t nbytes)
int usb_setup (njb_t *njb, int type, int request, int value, int index, int length, void *data)

Variables

int __sub_depth

Detailed Description

This file contain some USB-specific code that is used by all devices.

Function Documentation

ssize_t usb_pipe_read njb_t njb,
void *  buf,
size_t  nbytes
 

This function reads a chunk of bytes to a buffer from a device's IN endpoint.

Parameters:
njb the jukebox object to use
buf the buffer to store the bytes in
nbytes the number of bytes to read in
Returns:
the number of bytes actually read

ssize_t usb_pipe_write njb_t njb,
void *  buf,
size_t  nbytes
 

This function writes a number of bytes from a buffer to a devices OUT endpoint.

Parameters:
njb the jukebox object to use
buf the buffer to send bytes from
nbytes the number of bytes to write
Returns:
the number of bytes actually written

int usb_setup njb_t njb,
int  type,
int  request,
int  value,
int  index,
int  length,
void *  data
 

This function sends a USB SETUP 8-byte command across to endpoint 0 on the device.


Variable Documentation

int __sub_depth
 

The current subroutine depth for all of libnjb (global)


Generated on Thu Oct 20 20:35:59 2005 for libnjb by  doxygen 1.4.4