usb-linux: add get_endp()

Add a helper function to get the endpoint data structure
and put it into use.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
Gerd Hoffmann 2011-06-10 13:34:10 +02:00
parent 48e2faf222
commit ca3a36cf2b
1 changed files with 21 additions and 18 deletions

View File

@ -142,74 +142,79 @@ static void usb_host_auto_check(void *unused);
static int usb_host_read_file(char *line, size_t line_size, static int usb_host_read_file(char *line, size_t line_size,
const char *device_file, const char *device_name); const char *device_file, const char *device_name);
static struct endp_data *get_endp(USBHostDevice *s, int ep)
{
return s->endp_table + ep - 1;
}
static int is_isoc(USBHostDevice *s, int ep) static int is_isoc(USBHostDevice *s, int ep)
{ {
return s->endp_table[ep - 1].type == USBDEVFS_URB_TYPE_ISO; return get_endp(s, ep)->type == USBDEVFS_URB_TYPE_ISO;
} }
static int is_valid(USBHostDevice *s, int ep) static int is_valid(USBHostDevice *s, int ep)
{ {
return s->endp_table[ep - 1].type != INVALID_EP_TYPE; return get_endp(s, ep)->type != INVALID_EP_TYPE;
} }
static int is_halted(USBHostDevice *s, int ep) static int is_halted(USBHostDevice *s, int ep)
{ {
return s->endp_table[ep - 1].halted; return get_endp(s, ep)->halted;
} }
static void clear_halt(USBHostDevice *s, int ep) static void clear_halt(USBHostDevice *s, int ep)
{ {
s->endp_table[ep - 1].halted = 0; get_endp(s, ep)->halted = 0;
} }
static void set_halt(USBHostDevice *s, int ep) static void set_halt(USBHostDevice *s, int ep)
{ {
s->endp_table[ep - 1].halted = 1; get_endp(s, ep)->halted = 1;
} }
static int is_iso_started(USBHostDevice *s, int ep) static int is_iso_started(USBHostDevice *s, int ep)
{ {
return s->endp_table[ep - 1].iso_started; return get_endp(s, ep)->iso_started;
} }
static void clear_iso_started(USBHostDevice *s, int ep) static void clear_iso_started(USBHostDevice *s, int ep)
{ {
s->endp_table[ep - 1].iso_started = 0; get_endp(s, ep)->iso_started = 0;
} }
static void set_iso_started(USBHostDevice *s, int ep) static void set_iso_started(USBHostDevice *s, int ep)
{ {
s->endp_table[ep - 1].iso_started = 1; get_endp(s, ep)->iso_started = 1;
} }
static void set_iso_urb(USBHostDevice *s, int ep, AsyncURB *iso_urb) static void set_iso_urb(USBHostDevice *s, int ep, AsyncURB *iso_urb)
{ {
s->endp_table[ep - 1].iso_urb = iso_urb; get_endp(s, ep)->iso_urb = iso_urb;
} }
static AsyncURB *get_iso_urb(USBHostDevice *s, int ep) static AsyncURB *get_iso_urb(USBHostDevice *s, int ep)
{ {
return s->endp_table[ep - 1].iso_urb; return get_endp(s, ep)->iso_urb;
} }
static void set_iso_urb_idx(USBHostDevice *s, int ep, int i) static void set_iso_urb_idx(USBHostDevice *s, int ep, int i)
{ {
s->endp_table[ep - 1].iso_urb_idx = i; get_endp(s, ep)->iso_urb_idx = i;
} }
static int get_iso_urb_idx(USBHostDevice *s, int ep) static int get_iso_urb_idx(USBHostDevice *s, int ep)
{ {
return s->endp_table[ep - 1].iso_urb_idx; return get_endp(s, ep)->iso_urb_idx;
} }
static void set_iso_buffer_used(USBHostDevice *s, int ep, int i) static void set_iso_buffer_used(USBHostDevice *s, int ep, int i)
{ {
s->endp_table[ep - 1].iso_buffer_used = i; get_endp(s, ep)->iso_buffer_used = i;
} }
static int get_iso_buffer_used(USBHostDevice *s, int ep) static int get_iso_buffer_used(USBHostDevice *s, int ep)
{ {
return s->endp_table[ep - 1].iso_buffer_used; return get_endp(s, ep)->iso_buffer_used;
} }
static void set_max_packet_size(USBHostDevice *s, int ep, uint8_t *descriptor) static void set_max_packet_size(USBHostDevice *s, int ep, uint8_t *descriptor)
@ -223,14 +228,12 @@ static void set_max_packet_size(USBHostDevice *s, int ep, uint8_t *descriptor)
case 2: microframes = 3; break; case 2: microframes = 3; break;
default: microframes = 1; break; default: microframes = 1; break;
} }
DPRINTF("husb: max packet size: 0x%x -> %d x %d\n", get_endp(s, ep)->max_packet_size = size * microframes;
raw, microframes, size);
s->endp_table[ep - 1].max_packet_size = size * microframes;
} }
static int get_max_packet_size(USBHostDevice *s, int ep) static int get_max_packet_size(USBHostDevice *s, int ep)
{ {
return s->endp_table[ep - 1].max_packet_size; return get_endp(s, ep)->max_packet_size;
} }
/* /*