xref: /illumos-gate/usr/src/man/man9f/usba_alloc_hcdi_ops.9f (revision c5bab7026b8e0ac44b25ee08507ea360f177d844)
19b0e7716SRobert Mustacchi.\"
29b0e7716SRobert Mustacchi.\" This file and its contents are supplied under the terms of the
39b0e7716SRobert Mustacchi.\" Common Development and Distribution License ("CDDL"), version 1.0.
49b0e7716SRobert Mustacchi.\" You may only use this file in accordance with the terms of version
59b0e7716SRobert Mustacchi.\" 1.0 of the CDDL.
69b0e7716SRobert Mustacchi.\"
79b0e7716SRobert Mustacchi.\" A full copy of the text of the CDDL should have accompanied this
89b0e7716SRobert Mustacchi.\" source.  A copy of the CDDL is also available via the Internet at
99b0e7716SRobert Mustacchi.\" http://www.illumos.org/license/CDDL.
109b0e7716SRobert Mustacchi.\"
119b0e7716SRobert Mustacchi.\"
129b0e7716SRobert Mustacchi.\" Copyright 2016 Joyent, Inc.
139b0e7716SRobert Mustacchi.\"
14*c5bab702SPeter Tribble.Dd Nov 26, 2017
159b0e7716SRobert Mustacchi.Dt USBA_ALLOC_HCDI_OPS 9F
169b0e7716SRobert Mustacchi.Os
179b0e7716SRobert Mustacchi.Sh NAME
189b0e7716SRobert Mustacchi.Nm usba_alloc_hcdi_ops ,
199b0e7716SRobert Mustacchi.Nm usba_free_hcdi_ops
209b0e7716SRobert Mustacchi.Nd allocate and free USB HCD interface operations structure
219b0e7716SRobert Mustacchi.Sh SYNOPSIS
229b0e7716SRobert Mustacchi.In sys/usb/usba/hcdi.h
239b0e7716SRobert Mustacchi.Ft "usba_hcdi_ops_t *"
249b0e7716SRobert Mustacchi.Fo usba_alloc_hcdi_ops
259b0e7716SRobert Mustacchi.Fa void
269b0e7716SRobert Mustacchi.Fc
279b0e7716SRobert Mustacchi.Ft void
289b0e7716SRobert Mustacchi.Fo usba_free_hcdi_ops
299b0e7716SRobert Mustacchi.Fa "usba_hcdi_ops_t *ops"
309b0e7716SRobert Mustacchi.Fc
319b0e7716SRobert Mustacchi.Sh INTERFACE LEVEL
329b0e7716SRobert Mustacchi.Sy Volatile -
339b0e7716SRobert Mustacchiillumos USB HCD private function
349b0e7716SRobert Mustacchi.Pp
3572d3dbb9SYuri PankovThis is a private function that is not part of the stable DDI.
3672d3dbb9SYuri PankovIt may be removed or changed at any time.
37*c5bab702SPeter Tribble.Sh PARAMETERS
389b0e7716SRobert Mustacchi.Bl -tag -width Fa
399b0e7716SRobert Mustacchi.It Fa ops
409b0e7716SRobert MustacchiPointer to an allocated HCD interface operations structure.
419b0e7716SRobert Mustacchi.El
429b0e7716SRobert Mustacchi.Sh DESCRIPTION
439b0e7716SRobert MustacchiThe
449b0e7716SRobert Mustacchi.Fn usba_alloc_hcdi_ops
459b0e7716SRobert Mustacchifunction allocates a
469b0e7716SRobert Mustacchi.Xr usba_hcdi_ops_t 9S
4772d3dbb9SYuri Pankovstructure for use for a USB HCD driver.
4872d3dbb9SYuri PankovAs part of initialization, a USB HCD driver will allocate this and fill it in.
4972d3dbb9SYuri PankovFor more information on the full lifetime of the object and when a USB HCD
5072d3dbb9SYuri Pankovdriver should release the structure, see
519b0e7716SRobert Mustacchi.Xr usba_hcdi 9E .
529b0e7716SRobert Mustacchi.Pp
539b0e7716SRobert MustacchiThe
549b0e7716SRobert Mustacchi.Fn usba_free_hcdi_ops
559b0e7716SRobert Mustacchifunction release the memory associated with the
569b0e7716SRobert Mustacchi.Xr usba_hcdi_ops_t 9S
579b0e7716SRobert Mustacchistructure pointed to by
589b0e7716SRobert Mustacchi.Fa ops .
599b0e7716SRobert MustacchiOnly pointers received from a call to the
609b0e7716SRobert Mustacchi.Fn usba_alloc_hcdi_ops
619b0e7716SRobert Mustacchifunction should be passed to this function.
629b0e7716SRobert Mustacchi.Sh CONTEXT
639b0e7716SRobert MustacchiThese functions are generally called from kernel context during a USB
649b0e7716SRobert MustacchiHCD driver's
659b0e7716SRobert Mustacchi.Xr attach 9E
669b0e7716SRobert Mustacchiand
679b0e7716SRobert Mustacchi.Xr detach 9E
6872d3dbb9SYuri Pankoventry points.
6972d3dbb9SYuri PankovWhile it is safe to call this function from user context, it would be quite
7072d3dbb9SYuri Pankovunusal to do so.
719b0e7716SRobert Mustacchi.Sh RETURN VALUES
729b0e7716SRobert MustacchiThe
739b0e7716SRobert Mustacchi.Fn usba_alloc_hcdi_ops
749b0e7716SRobert Mustacchifunction always succeeds and returns a pointer to an allocation
759b0e7716SRobert Mustacchioperations structure.
769b0e7716SRobert Mustacchi.Sh SEE ALSO
779b0e7716SRobert Mustacchi.Xr usba_hcdi 9E ,
789b0e7716SRobert Mustacchi.Xr usba_hcdi_ops_t 9S
79