Lines Matching +full:usb +full:- +full:hub

1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
4 * Copyright (c) 2008-2019 Hans Petter Selasky. All rights reserved.
32 #include <dev/usb/usb_core.h>
33 #include <dev/usb/usb_busdma.h>
34 #include <dev/usb/usb_transfer.h>
65 * of the USB descriptors belonging to an USB configuration. Please
66 * refer to the USB specification for a definition of "endpoints" and
90 * The following structure defines the USB device flags.
94 uint8_t self_powered:1; /* set if USB device is self powered */
95 uint8_t no_strings:1; /* set if USB device does not support
110 * The following structure is used for power-save purposes. The data
111 * in this structure is protected by the USB BUS lock.
122 * endpoints for an USB configuration in USB device side mode.
136 * endpoints for an USB configuration in USB device side mode.
149 * The following structure is used when generating USB descriptors
150 * from USB templates.
165 * The scratch area for USB devices. Access to this structure is
179 * Helper structure to keep track of USB device statistics.
186 * The following structure defines an USB device. There exists one of
187 * these structures for every USB device.
215 struct usb_bus *bus; /* our USB BUS */
218 struct usb_device *parent_hs_hub; /* high-speed parent HUB */
220 struct usb_hub *hub; /* only if this is a hub */
243 uint8_t device_index; /* device index in "bus->devices" */
248 uint8_t depth; /* distance from root HUB */
249 uint8_t port_index; /* parent HUB port index */
250 uint8_t port_no; /* parent HUB port number */
251 uint8_t hs_hub_addr; /* high-speed HUB address */
252 uint8_t hs_port_no; /* high-speed HUB port number */
255 uint8_t re_enumerate_wait; /* set if re-enum. is in progress */
263 /* the "flags" field is write-protected by "bus->mtx" */
286 uint32_t clear_stall_errors; /* number of clear-stall failures */