usb_hub_info_t Struct Reference
[USB hub driver]

Information about attached hub. More...

#include <usbhub.h>


Data Fields

usb_hc_connection_t connection
 connection to hcd
usb_pipe_tcontrol_pipe
 convenience pointer to control pipe
bool is_default_address_used
 default address is used indicator
size_t pending_ops_count
 Number of pending operations on the mutex to prevent shooting ourselves in the foot.
fibril_condvar_t pending_ops_cv
 Condition variable for pending_ops_count.
fibril_mutex_t pending_ops_mutex
 Guard for pending_ops_count.
size_t port_count
 Number of ports.
fibril_mutex_t port_mutex
usb_hub_port_tports
 attached device handles, for each port one
usb_pipe_tstatus_change_pipe
 convenience pointer to status change pipe
usb_device_tusb_device
 generic usb device data


Detailed Description

Information about attached hub.

Definition at line 54 of file usbhub.h.


Field Documentation

usb_pipe_t* control_pipe

convenience pointer to control pipe

Control pipe is initialized in usb_device structure. This is pointer into this structure, so that it does not have to be searched again and again for the 'right pipe'.

Definition at line 87 of file usbhub.h.

bool is_default_address_used

default address is used indicator

If default address is requested by this device, it cannot be requested by the same hub again, otherwise a deadlock will occur.

Definition at line 71 of file usbhub.h.

size_t pending_ops_count

Number of pending operations on the mutex to prevent shooting ourselves in the foot.

When the hub is disconnected but we are in the middle of some operation, we cannot destroy this structure right away because the pending operation might use it.

Definition at line 98 of file usbhub.h.

usb_pipe_t* status_change_pipe

convenience pointer to status change pipe

Status change pipe is initialized in usb_device structure. This is pointer into this structure, so that it does not have to be searched again and again for the 'right pipe'.

Definition at line 79 of file usbhub.h.


The documentation for this struct was generated from the following file:
Generated on Thu Jun 2 07:46:00 2011 for HelenOS/USB by  doxygen 1.4.7