8354 sync regcomp(3C) with upstream (fix make catalog)
[unleashed/tickless.git] / usr / src / man / man9f / usba_hcdi_register.9f
blob45bbba86de951412226d08ed394c731513e62186
1 .\"
2 .\" This file and its contents are supplied under the terms of the
3 .\" Common Development and Distribution License ("CDDL"), version 1.0.
4 .\" You may only use this file in accordance with the terms of version
5 .\" 1.0 of the CDDL.
6 .\"
7 .\" A full copy of the text of the CDDL should have accompanied this
8 .\" source.  A copy of the CDDL is also available via the Internet at
9 .\" http://www.illumos.org/license/CDDL.
10 .\"
11 .\"
12 .\" Copyright 2016 Joyent, Inc.
13 .\"
14 .Dd Sep 16, 2016
15 .Dt USBA_HCDI_REGISTER 9F
16 .Os
17 .Sh NAME
18 .Nm usba_hcdi_register ,
19 .Nm usba_hcdi_unregister
20 .Nd register and unregister HCD driver
21 .Sh SYNOPSIS
22 .In sys/usb/usba/hcdi.h
23 .Ft int
24 .Fo usba_hcdi_register
25 .Fa "usba_hcdi_register_args_t *args"
26 .Fa "uint_t flags"
27 .Fc
28 .Ft void
29 .Fo usba_hcdi_unregister
30 .Fa "dev_info_t *dip"
31 .Fc
32 .Sh INTERFACE LEVEL
33 .Sy Volatile -
34 illumos USB HCD private function
35 .Pp
36 This is a private function that is not part of the stable DDI.
37 It may be removed or changed at any time.
38 .Sh PARAMETERS
39 .Bl -tag -width Fa
40 .It Fa args
41 A pointer to a filled out registration structure.
42 See
43 .Xr usba_hcdi_register_args_t 9S
44 for the members to fill in.
45 .It Fa flags
46 Should be set to
47 .Sy 0 .
48 .It Fa dip
49 Pointer to the device's
50 .Sy dev_info
51 structure.
52 .El
53 .Sh DESCRIPTION
54 The
55 .Fn usba_hcdi_register
56 and
57 .Fn usba_hcdi_unregister
58 functions are used to register and unregister a USB HCDI driver from the
59 USBA framework.
60 .Pp
61 The
62 .Fn usba_hcdi_register
63 function is called during a device driver's
64 .Xr attach 9E
65 entry point after it has finished initializing the device.
66 After this function successfuly returns, device drivers should assume that the
67 .Xr usba_hcdi_ops 9S
68 functions may be called at any time.
69 .Pp
70 The
71 .Fn usba_hcdi_unregister
72 function should be called during a driver's
73 .Xr detach 9E
74 entry point after it has unbound its root hub, but before the remainder
75 of the device's state is torn down.
76 After calling the
77 .Fn usba_hcdi_unregister
78 function, the driver will receive no more function calls to its
79 .Xr usba_hcdi_ops 9S
80 entry points.
81 .Pp
82 For more information on the initialization and finalization path of a
83 USB HCD driver, see
84 .Xr usba_hcdi 9E .
85 .Sh CONTEXT
86 The
87 .Fn usba_hcdi_register
88 function should only be called from a driver's
89 .Xr attach 9E
90 entry point.
91 .Pp
92 The
93 .Fn usba_hcdi_unregister
94 function should only be called frm a driver's
95 .Xr detach 9E
96 entry point.
97 .Sh RETURN VALUES
98 Upon successful completion, the
99 .Fn usba_hcdi_register
100 function returns
101 .Sy USB_SUCCESS .
102 Otherwise
103 .Sy USB_FAILURE
104 is returned to indicate that the device was not registered.
107 .Fn usba_hcdi_unregister
108 function does not define any return values and always succeeds.
109 .Sh SEE ALSO
110 .Xr attach 9E ,
111 .Xr detach 9E ,
112 .Xr usba_hcdi 9E ,
113 .Xr usba_hcdi_ops 9S ,
114 .Xr usba_hcdi_register_args_t 9S