Main Page | Modules | Data Structures | File List | Data Fields | Globals | Related Pages

usb.c File Reference

#include <stdio.h>
#include <inttypes.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <ctype.h>
#include <fcntl.h>
#include <errno.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/ioctl.h>
#include <linux/version.h>
#include <linux/types.h>
#include <linux/usb.h>
#include <linux/usbdevice_fs.h>
#include "hd.h"
#include "hd_int.h"
#include "hddb.h"
#include "usb.h"

Defines

#define USB_DT_CS_DEVICE   0x21
#define CTRL_RETRIES   50
#define CTRL_TIMEOUT   100 /* milliseconds */
#define IOCNR_GET_DEVICE_ID   1
#define IOCNR_GET_BUS_ADDRESS   5
#define IOCNR_GET_VID_PID   6
#define LPIOC_GET_DEVICE_ID(len)   _IOC(_IOC_READ, 'P', IOCNR_GET_DEVICE_ID, len)
#define LPIOC_GET_BUS_ADDRESS(len)   _IOC(_IOC_READ, 'P', IOCNR_GET_BUS_ADDRESS, len)
#define LPIOC_GET_VID_PID(len)   _IOC(_IOC_READ, 'P', IOCNR_GET_VID_PID, len)
#define MATCH_FIELD(field, var)   if(!strncasecmp(sl->str, field, sizeof field - 1)) var = sl->str + sizeof field - 1

Functions

void get_usb_data (hd_data_t *hd_data)
int usb_control_msg (int fd, unsigned requesttype, unsigned request, unsigned value, unsigned index, unsigned size, void *data)
void set_class_entries (hd_data_t *hd_data, hd_t *hd, usb_t *usb)
usb_tfind_usb_entry (hd_data_t *hd_data, int *dev_idx)
usb_tadd_usb_entry (hd_data_t *hd_data, usb_t *new_usb)
void dump_usb_data (hd_data_t *hd_data)
void add_usb_guid (hd_t *hd)
void read_usb_lp (hd_data_t *hd_data, hd_t *hd_start)
void drop_some_ifs (hd_data_t *hd_data, hd_t *hd_start)
int same_device (hd_data_t *hd_data, hd_t *hd_start, hd_t *hd)
void hd_scan_usb (hd_data_t *hd_data)

Define Documentation

#define CTRL_RETRIES   50
 

#define CTRL_TIMEOUT   100 /* milliseconds */
 

#define IOCNR_GET_BUS_ADDRESS   5
 

#define IOCNR_GET_DEVICE_ID   1
 

#define IOCNR_GET_VID_PID   6
 

#define LPIOC_GET_BUS_ADDRESS len   )     _IOC(_IOC_READ, 'P', IOCNR_GET_BUS_ADDRESS, len)
 

#define LPIOC_GET_DEVICE_ID len   )     _IOC(_IOC_READ, 'P', IOCNR_GET_DEVICE_ID, len)
 

#define LPIOC_GET_VID_PID len   )     _IOC(_IOC_READ, 'P', IOCNR_GET_VID_PID, len)
 

#define MATCH_FIELD field,
var   )     if(!strncasecmp(sl->str, field, sizeof field - 1)) var = sl->str + sizeof field - 1
 

#define USB_DT_CS_DEVICE   0x21
 


Function Documentation

usb_t * add_usb_entry hd_data_t hd_data,
usb_t new_usb
[static]
 

void add_usb_guid hd_t hd  )  [static]
 

void drop_some_ifs hd_data_t hd_data,
hd_t hd_start
[static]
 

void dump_usb_data hd_data_t hd_data  )  [static]
 

usb_t * find_usb_entry hd_data_t hd_data,
int *  dev_idx
[static]
 

void get_usb_data hd_data_t hd_data  )  [static]
 

void hd_scan_usb hd_data_t hd_data  ) 
 

void read_usb_lp hd_data_t hd_data,
hd_t hd_start
[static]
 

int same_device hd_data_t hd_data,
hd_t hd_start,
hd_t hd
[static]
 

void set_class_entries hd_data_t hd_data,
hd_t hd,
usb_t usb
[static]
 

int usb_control_msg int  fd,
unsigned  requesttype,
unsigned  request,
unsigned  value,
unsigned  index,
unsigned  size,
void *  data
[static]