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_HCDI_CB_OPS 9F 169b0e7716SRobert Mustacchi.Os 179b0e7716SRobert Mustacchi.Sh NAME 189b0e7716SRobert Mustacchi.Nm usba_hubdi_cb_ops , 199b0e7716SRobert Mustacchi.Nm usba_hubdi_open , 209b0e7716SRobert Mustacchi.Nm usba_hubdi_ioctl , 219b0e7716SRobert Mustacchi.Nm usba_hubdi_close 229b0e7716SRobert Mustacchi.Nd character device utility functions for HCD drivers 239b0e7716SRobert Mustacchi.Sh SYNOPSIS 249b0e7716SRobert Mustacchi.In sys/usb/usba/hubdi.h 259b0e7716SRobert Mustacchi.Ft int 269b0e7716SRobert Mustacchi.Fo usba_hubdi_open 279b0e7716SRobert Mustacchi.Fa "dev_info_t *dip" 289b0e7716SRobert Mustacchi.Fa "dev_t *devp" 299b0e7716SRobert Mustacchi.Fa "int flag" 309b0e7716SRobert Mustacchi.Fa "int otyp" 319b0e7716SRobert Mustacchi.Fa "cred_t *cred_p" 329b0e7716SRobert Mustacchi.Fc 339b0e7716SRobert Mustacchi.Ft int 349b0e7716SRobert Mustacchi.Fo usba_hubdi_ioctl 359b0e7716SRobert Mustacchi.Fa "dev_info_t *dip" 369b0e7716SRobert Mustacchi.Fa "dev_t dev" 379b0e7716SRobert Mustacchi.Fa "int flag" 389b0e7716SRobert Mustacchi.Fa "intptr_t arg" 399b0e7716SRobert Mustacchi.Fa "int mode" 409b0e7716SRobert Mustacchi.Fa "cred_t *cred_pp" 419b0e7716SRobert Mustacchi.Fa "int *rval_p" 429b0e7716SRobert Mustacchi.Fc 439b0e7716SRobert Mustacchi.Ft int 449b0e7716SRobert Mustacchi.Fo usba_hubdi_close 459b0e7716SRobert Mustacchi.Fa "dev_info_t *dip" 469b0e7716SRobert Mustacchi.Fa "dev_t dev" 479b0e7716SRobert Mustacchi.Fa "int flag" 489b0e7716SRobert Mustacchi.Fa "int otyp" 499b0e7716SRobert Mustacchi.Fa "cred_t *cred_p" 509b0e7716SRobert Mustacchi.Fc 519b0e7716SRobert Mustacchi.Sh INTERFACE LEVEL 529b0e7716SRobert Mustacchi.Sy Volatile - 539b0e7716SRobert Mustacchiillumos USB HCD private function 549b0e7716SRobert Mustacchi.Pp 5572d3dbb9SYuri PankovThis is a private function that is not part of the stable DDI. 5672d3dbb9SYuri PankovIt may be removed or changed at any time. 57*c5bab702SPeter Tribble.Sh PARAMETERS 589b0e7716SRobert Mustacchi.Bl -tag -width Fa 599b0e7716SRobert Mustacchi.It Fa dip 609b0e7716SRobert MustacchiPointer to the device's 619b0e7716SRobert Mustacchi.Sy dev_info 629b0e7716SRobert Mustacchistructure. 639b0e7716SRobert Mustacchi.El 649b0e7716SRobert Mustacchi.Pp 659b0e7716SRobert MustacchiAll other parameters are the same as the ones described and discussed in 669b0e7716SRobert Mustacchi.Xr open 9E , 679b0e7716SRobert Mustacchi.Xr ioctl 9E , 689b0e7716SRobert Mustacchiand 699b0e7716SRobert Mustacchi.Xr close 9E . 709b0e7716SRobert Mustacchi.Sh DESCRIPTION 719b0e7716SRobert MustacchiThe 729b0e7716SRobert Mustacchi.Fn usba_hubdi_open , 739b0e7716SRobert Mustacchi.Fn usba_hubdi_ioctl , 749b0e7716SRobert Mustacchiand 759b0e7716SRobert Mustacchi.Fn usba_hubdi_close 769b0e7716SRobert Mustacchifunctions are functions provided for the implementation of USB HCD 7772d3dbb9SYuri Pankovdrivers. 7872d3dbb9SYuri PankovUSB HCD drivers are required to implemnt the 799b0e7716SRobert Mustacchi.Xr open 9E , 809b0e7716SRobert Mustacchi.Xr ioctl 9E , 819b0e7716SRobert Mustacchiand 829b0e7716SRobert Mustacchi.Xr close 9E 839b0e7716SRobert Mustacchi.Xr cb_ops 9S 8472d3dbb9SYuri Pankovfunctions. 8572d3dbb9SYuri PankovIn each of those functions, they should use the device number to determine 8672d3dbb9SYuri Pankovnumber in 879b0e7716SRobert Mustacchi.Fa devp 889b0e7716SRobert Mustacchior 899b0e7716SRobert Mustacchi.Fa dev 909b0e7716SRobert Mustacchito determine the device's corresponding 919b0e7716SRobert Mustacchi.Sy dev_info_t . 929b0e7716SRobert MustacchiThe USB HCD driver's entry points should then call the corresponding 939b0e7716SRobert Mustacchifunction described above, passing all the arguments they received 949b0e7716SRobert Mustacchiunmodified. 959b0e7716SRobert Mustacchi.Pp 969b0e7716SRobert MustacchiThe USB HCD driver's entry points should return the value returned by 979b0e7716SRobert Mustacchithe call to the corresponding USBA function. 989b0e7716SRobert Mustacchi.Sh CONTEXT 999b0e7716SRobert MustacchiThese functions should only be called from the context of a USB HCD 1009b0e7716SRobert Mustacchidriver's 1019b0e7716SRobert Mustacchi.Xr open 9E , 1029b0e7716SRobert Mustacchi.Xr ioctl 9E , 1039b0e7716SRobert Mustacchiand 1049b0e7716SRobert Mustacchi.Xr close 9E 1059b0e7716SRobert Mustacchientry points. 1069b0e7716SRobert Mustacchi.Sh SEE ALSO 1079b0e7716SRobert Mustacchi.Xr close 9E , 1089b0e7716SRobert Mustacchi.Xr ioctl 9E , 1099b0e7716SRobert Mustacchi.Xr open 9E , 110b31ca922SChris Fraire.Xr usba_hcdi 9E , 1119b0e7716SRobert Mustacchi.Xr cb_ops 9S 112