USBA_HCDI_REGISTER(9F) Kernel Functions for Drivers USBA_HCDI_REGISTER(9F)
NAME
usba_hcdi_register,
usba_hcdi_unregister - register and unregister HCD
driver
SYNOPSIS
#include <sys/usb/usba/hcdi.h> int usba_hcdi_register(
usba_hcdi_register_args_t *args,
uint_t flags);
void usba_hcdi_unregister(
dev_info_t *dip);
INTERFACE LEVEL
Volatile - illumos USB HCD private function
This is a private function that is not part of the stable DDI. It may be
removed or changed at any time.
PARAMETERS
args A pointer to a filled out registration structure. See
usba_hcdi_register_args_t(9S) for the members to fill in.
flags Should be set to
0.
dip Pointer to the device's
dev_info structure.
DESCRIPTION
The
usba_hcdi_register() and
usba_hcdi_unregister() functions are used to
register and unregister a USB HCDI driver from the USBA framework.
The
usba_hcdi_register() function is called during a device driver's
attach(9E) entry point after it has finished initializing the device.
After this function successfully returns, device drivers should assume that
the
usba_hcdi_ops(9S) functions may be called at any time.
The
usba_hcdi_unregister() function should be called during a driver's
detach(9E) entry point after it has unbound its root hub, but before the
remainder of the device's state is torn down. After calling the
usba_hcdi_unregister() function, the driver will receive no more function
calls to its
usba_hcdi_ops(9S) entry points.
For more information on the initialization and finalization path of a USB
HCD driver, see
usba_hcdi(9E).
CONTEXT
The
usba_hcdi_register() function should only be called from a driver's
attach(9E) entry point.
The
usba_hcdi_unregister() function should only be called frm a driver's
detach(9E) entry point.
RETURN VALUES
Upon successful completion, the
usba_hcdi_register() function returns
USB_SUCCESS. Otherwise
USB_FAILURE is returned to indicate that the device
was not registered.
The
usba_hcdi_unregister() function does not define any return values and
always succeeds.
SEE ALSO
attach(9E),
detach(9E),
usba_hcdi(9E),
usba_hcdi_ops(9S),
usba_hcdi_register_args_t(9S)OmniOS November 26, 2017 OmniOS