Print this page
5075 EOF cardbus & pcmcia
2398 pcs driver should be removed
Reviewed by: TBD
Approved by: TBD
*** 1,867 ****
- '\" te
.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
.\" Copyright (c) 2005, Sun Microsystems, Inc., All Rights Reserved
.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
! .TH INTRO 9F "Feb 06, 2012"
! .SH NAME
! Intro, intro \- introduction to DDI/DKI functions
! .SH DESCRIPTION
! .sp
! .LP
Section 9F describes the kernel functions available for use by device drivers.
! See \fBIntro\fR(9E) for an overview of device driver interfaces.
! .sp
! .LP
In this section, the information for each driver function is organized under
the following headings:
! .RS +4
! .TP
! .ie t \(bu
! .el o
! \fBNAME\fR summarizes the function's purpose.
! .RE
! .RS +4
! .TP
! .ie t \(bu
! .el o
! \fBSYNOPSIS\fR shows the syntax of the function's entry point in the source
! code. \fB#include\fR directives are shown for required headers.
! .RE
! .RS +4
! .TP
! .ie t \(bu
! .el o
! \fBINTERFACE\fR \fBLEVEL\fR describes any architecture dependencies.
! .RE
! .RS +4
! .TP
! .ie t \(bu
! .el o
! \fBARGUMENTS\fR describes any arguments required to invoke the function.
! .RE
! .RS +4
! .TP
! .ie t \(bu
! .el o
! \fBDESCRIPTION\fR describes general information about the function.
! .RE
! .RS +4
! .TP
! .ie t \(bu
! .el o
! \fBRETURN\fR \fBVALUES\fR describes the return values and messages that can
result from invoking the function.
! .RE
! .RS +4
! .TP
! .ie t \(bu
! .el o
! \fBCONTEXT\fR indicates from which driver context (user, kernel, interrupt, or
high-level interrupt) the function can be called.
! .RE
! .RS +4
! .TP
! .ie t \(bu
! .el o
! A driver function has \fIuser context\fR if it was directly invoked because of
! a user thread. The \fBread\fR(9E) entry point of the driver, invoked by a
! \fBread\fR(2) system call, has user context.
! .RE
! .RS +4
! .TP
! .ie t \(bu
! .el o
! A driver function has \fIkernel context\fR if was invoked by some other part of
! the kernel. In a block device driver, the \fBstrategy\fR(9E) entry point may be
called by the page daemon to write pages to the device. The page daemon has no
! relation to the current user thread, so in this case \fBstrategy\fR(9E) has
! kernel context.
! .RE
! .RS +4
! .TP
! .ie t \(bu
! .el o
! \fIInterrupt context\fR is kernel context, but also has an interrupt level
associated with it. Driver interrupt routines have interrupt context.
! .sp
Note that a mutex acquired in user or kernel context that can also be acquired
in interrupt context means that the user or kernel context thread holding that
mutex is subject to all the restrictions imposed by interrupt context, for the
! duration of the ownership of that mutex. Please see the \fBmutex\fR(9F) man
! page for a more complete discussion of proper mutex handling for drivers.
! .RE
! .RS +4
! .TP
! .ie t \(bu
! .el o
! \fIHigh-level interrupt context\fR is a more restricted form of interrupt
context. If a driver interrupt priority returned from
! \fBddi_intr_get_pri\fR(9F) is greater than the priority returned from
! \fBddi_intr_get_hilevel_pri\fR(9F) this indicates the interrupt handler will
run in high-level interrupt context. These interrupt routines are only allowed
! to call \fBddi_intr_trigger_softint\fR(9F), \fBmutex_enter\fR(9F), and
! \fBmutex_exit\fR(9F). Furthermore, \fBmutex_enter\fR(9F) and
! \fBmutex_exit\fR(9F) may only be called on mutexes initialized with the
! interrupt priority returned by \fBddi_intr_get_pri\fR(9F).
! .RE
! .RS +4
! .TP
! .ie t \(bu
! .el o
! \fBSEE ALSO\fR indicates functions that are related by usage and sources, and
which can be referred to for further information.
! .RE
! .RS +4
! .TP
! .ie t \(bu
! .el o
! \fBEXAMPLES\fR shows how the function can be used in driver code.
! .RE
! .sp
! .LP
! Every driver MUST include <\fBsys/ddi.h\fR> and <\fBsys/sunddi.h\fR>, in that
! order, and as the last files the driver includes.
! .SH STREAMS KERNEL FUNCTION SUMMARY
! .sp
! .LP
The following table summarizes the STREAMS functions described in this section.
! .sp
!
! .sp
! .TS
! c c
! l l .
! Routine Type
! _
! \fBadjmsg\fR DDI/DKI
! \fBallocb\fR DDI/DKI
! \fBallocb_tmpl\fR Solaris DDI
! \fBbackq\fR DDI/DKI
! \fBbcanput\fR DDI/DKI
! \fBbcanputnext\fR DDI/DKI
! \fBbufcall\fR DDI/DKI
! \fBcanput\fR DDI/DKI
! \fBcanputnext\fR DDI/DKI
! \fBclrbuf\fR DDI/DKI
! \fBcopyb\fR DDI/DKI
! \fBcopymsg\fR DDI/DKI
! \fBDB_BASE\fR Solaris DDI
! \fBDB_LIM\fR Solaris DDI
! \fBDB_REF\fR Solaris DDI
! \fBDB_TYPE\fR Solaris DDI
! \fBdatamsg\fR DDI/DKI
! \fBdupb\fR DDI/DKI
! \fBdupmsg\fR DDI/DKI
! \fBenableok\fR DDI/DKI
! \fBesballoc\fR DDI/DKI
! \fBesbbcall\fR DDI/DKI
! \fBflushband\fR DDI/DKI
! \fBflushq\fR DDI/DKI
! \fBfreeb\fR DDI/DKI
! \fBfreemsg\fR DDI/DKI
! \fBfreezestr\fR DDI/DKI
! \fBgetq\fR DDI/DKI
! \fBIOC_CONVER_FROM\fR Solaris DDI
! \fBinsq\fR DDI/DKI
! \fBlinkb\fR DDI/DKI
! \fBMBLKHEAD\fR Solaris DDI
! \fBMBLKIN\fR Solaris DDI
! \fBMBLKL\fR Solaris DDI
! \fBMBLKSIZE\fR Solaris DDI
! \fBMBLKTAIL\fR Solaris DDI
! \fBmcopyin\fR Solaris DDI
! \fBmcopymsg\fR Solaris DDI
! \fBmcopyout\fR Solaris DDI
! \fBmerror\fR Solaris DDI
! \fBmexchange\fR Solaris DDI
! \fBmioc2ack\fR Solaris DDI
! \fBmiocack\fR Solaris DDI
! \fBmexchange\fR Solaris DDI
! \fBmiocpullup\fR Solaris DDI
! \fBmkiocb\fR Solaris DDI
! \fBmsgdsize\fR DDI/DKI
! \fBmsgpullup\fR DDI/DKI
! \fBmsgsize\fR Solaris DDI
! \fBmt-streams\fR Solaris DDI
! \fBnoenable\fR DDI/DKI
! \fBOTHERQ\fR DDI/DKI
! \fBpullupmsg\fR DDI/DKI
! \fBput\fR DDI/DKI
! \fBputbq\fR DDI/DKI
! \fBputctl\fR DDI/DKI
! \fBputctl1\fR DDI/DKI
! \fBputnext\fR DDI/DKI
! \fBputnextctl\fR DDI/DKI
! \fBputq\fR DDI/DKI
! \fBqassociate\fR Solaris DDI
! \fBqbufcall\fR Solaris DDI
! \fBqenable\fR DDI/DKI
! \fBqprocson\fR DDI/DKI
! \fBqprocsoff\fR DDI/DKI
! \fBqreply\fR DDI/DKI
! \fBqsize\fR DDI/DKI
! \fBqtimeout\fR Solaris DDI
! \fBqunbufcall\fR Solaris DDI
! \fBquntimeout\fR Solaris DDI
! \fBqwait\fR Solaris DDI
! \fBqwait_sig\fR Solaris DDI
! \fBqwriter\fR Solaris DDI
! \fBRD\fR DDI/DKI
! \fBrmvb\fR DDI/DKI
! \fBrmvq\fR DDI/DKI
! \fBSAMESTR\fR DDI/DKI
! \fBstrlog\fR DDI/DKI
! \fBstrqget\fR DDI/DKI
! \fBstrqset\fR DDI/DKI
! \fBtestb\fR DDI/DKI
! \fBunbufcall\fR DDI/DKI
! \fBunfreezestr\fR DDI/DKI
! \fBunlinkb\fR DDI/DKI
! \fBWR\fR DDI/DKI
! .TE
!
! .sp
! .LP
The following table summarizes the functions not specific to STREAMS.
! .sp
!
! .sp
! .TS
! c c
! l l .
! Routine Type
! _
! \fBASSERT\fR DDI/DKI
! \fBanocancel\fR Solaris DDI
! \fBaphysio\fR Solaris DDI
! \fBatomic_add\fR DDI/DKI
! \fBatomic_and\fR DDI/DKI
! \fBatomic_bits\fR DDI/DKI
! \fBatomic_cas\fR DDI/DKI
! \fBatomic_dec\fR DDI/DKI
! \fBatomic_inc\fR DDI/DKI
! \fBatomic_ops\fR DDI/DKI
! \fBatomic_or\fR DDI/DKI
! \fBatomic_swap\fR DDI/DKI
! \fBbcmp\fR DDI/DKI
! \fBbcopy\fR DDI/DKI
! \fBbioclone\fR Solaris DDI
! \fBbiodone\fR DDI/DKI
! \fBbiofini\fR Solaris DDI
! \fBbioinit\fR Solaris DDI
! \fBbiomodified\fR Solaris DDI
! \fBbiosize\fR Solaris DDI
! \fBbioerror\fR Solaris DDI
! \fBbioreset\fR Solaris DDI
! \fBbiowait\fR DDI/DKI
! \fBbp_copyin\fR DDI/DKI
! \fBbp_copyout\fR DDI/DKI
! \fBbp_mapin\fR DDI/DKI
! \fBbp_mapout\fR DDI/DKI
! \fBbtop\fR DDI/DKI
! \fBbtopr\fR DDI/DKI
! \fBbzero\fR DDI/DKI
! \fBcmn_err\fR DDI/DKI
! \fBcondvar\fR Solaris DDI
! \fBcopyin\fR DDI/DKI
! \fBcopyout\fR DDI/DKI
! \fBcsx_AccessConfigurationRegister\fR Solaris DDI
! \fBcsx_ConvertSize\fR Solaris DDI
! \fBcsx_ConvertSpeed\fR Solaris DDI
! \fBcsx_CS_DDI_Info\fR Solaris DDI
! \fBcsx_DeregisterClient\fR Solaris DDI
! \fBcsx_DupHandle\fR Solaris DDI
! \fBcsx_Error2Text\fR Solaris DDI
! \fBcsx_Event2Text\fR Solaris DDI
! \fBcsx_FreeHandle\fR Solaris DDI
! \fBcsx_Get8\fR Solaris DDI
! \fBcsx_GetFirstClient\fR Solaris DDI
! \fBcsx_GetFirstTuple\fR Solaris DDI
! \fBcsx_GetHandleOffset\fR Solaris DDI
! \fBcsx_GetMappedAddr\fR Solaris DDI
! \fBcsx_GetStatus\fR Solaris DDI
! \fBcsx_GetTupleData\fR Solaris DDI
! \fBcsx_MakeDeviceNode\fR Solaris DDI
! \fBcsx_MapLogSocket\fR Solaris DDI
! \fBcsx_MapMemPage\fR Solaris DDI
! \fBcsx_ModifyConfiguration\fR Solaris DDI
! \fBcsx_ModifyWindow\fR Solaris DDI
! \fBcsx_Parse_CISTPL_BATTERY\fR Solaris DDI
! \fBcsx_Parse_CISTPL_BYTEORDER\fR Solaris DDI
! \fBcsx_Parse_CISTPL_CFTABLE_ENTRY\fR Solaris DDI
! \fBcsx_Parse_CISTPL_CONFIG\fR Solaris DDI
! \fBcsx_Parse_CISTPL_DATE\fR Solaris DDI
! \fBcsx_Parse_CISTPL_DEVICE\fR Solaris DDI
! \fBcsx_Parse_CISTPL_DEVICEGEO\fR Solaris DDI
! \fBcsx_Parse_CISTPL_DEVICEGEO_A\fR Solaris DDI
! \fBcsx_Parse_CISTPL_FORMAT\fR Solaris DDI
! \fBcsx_Parse_CISTPL_FUNCE\fR Solaris DDI
! \fBcsx_Parse_CISTPL_FUNCID\fR Solaris DDI
! \fBcsx_Parse_CISTPL_GEOMETRY\fR Solaris DDI
! \fBcsx_Parse_CISTPL_JEDEC_C\fR Solaris DDI
! \fBcsx_Parse_CISTPL_LINKTARGET\fR Solaris DDI
! \fBcsx_Parse_CISTPL_LONGLINK_A\fR Solaris DDI
! \fBcsx_Parse_CISTPL_LONGLINK_MFC\fR Solaris DDI
! \fBcsx_Parse_CISTPL_MANFID\fR Solaris DDI
! \fBcsx_Parse_CISTPL_ORG\fR Solaris DDI
! \fBcsx_Parse_CISTPL_SPCL\fR Solaris DDI
! \fBcsx_Parse_CISTPL_SWIL\fR Solaris DDI
! \fBcsx_Parse_CISTPL_VERS_1\fR Solaris DDI
! \fBcsx_Parse_CISTPL_VERS_2\fR Solaris DDI
! \fBcsx_ParseTuple\fR Solaris DDI
! \fBcsx_Put8\fR Solaris DDI
! \fBcsx_RegisterClient\fR Solaris DDI
! \fBcsx_ReleaseConfiguration\fR Solaris DDI
! \fBcsx_RepGet8\fR Solaris DDI
! \fBcsx_RepPut8\fR Solaris DDI
! \fBcsx_RequestConfiguration\fR Solaris DDI
! \fBcsx_RequestIO\fR Solaris DDI
! \fBcsx_RequestIRQ\fR Solaris DDI
! \fBcsx_RequestSocketMask\fR Solaris DDI
! \fBcsx_RequestWindow\fR Solaris DDI
! \fBcsx_ResetFunction\fR Solaris DDI
! \fBcsx_SetEventMask\fR Solaris DDI
! \fBcsx_SetHandleOffset\fR Solaris DDI
! \fBcsx_ValidateCIS\fR Solaris DDI
! \fBcv_broadcast\fR Solaris DDI
! \fBcv_destroy\fR Solaris DDI
! \fBcv_init\fR Solaris DDI
! \fBcv_signal\fR Solaris DDI
! \fBcv_timedwait\fR Solaris DDI
! \fBcv_wait\fR Solaris DDI
! \fBcv_wait_sig\fR Solaris DDI
! \fBddi_add_event_handler\fR Solaris DDI
! \fBddi_add_intr\fR Solaris DDI
! \fBddi_add_softintr\fR Solaris DDI
! \fBddi_binding_name\fR Solaris DDI
! \fBddi_btop\fR Solaris DDI
! \fBddi_btopr\fR Solaris DDI
! \fBddi_can_receive_sig\fR Solaris DDI
! \fBddi_check_acc_handle\fR Solaris DDI
! \fBddi_copyin\fR Solaris DDI
! \fBddi_copyout\fR Solaris DDI
! \fBddi_create_minor_node\fR Solaris DDI
! \fBddi_cred\fR Solaris DDI
! \fBddi_dev_is_sid\fR Solaris DDI
! \fBddi_dev_nintrs\fR Solaris DDI
! \fBddi_dev_nregs\fR Solaris DDI
! \fBddi_dev_regsize\fR Solaris DDI
! \fBddi_device_copy\fR Solaris DDI
! \fBddi_device_zero\fR Solaris DDI
! \fBddi_devmap_segmap\fR Solaris DDI
! \fBddi_dma_addr_bind_handle\fR Solaris DDI
! \fBddi_dma_alloc_handle\fR Solaris DDI
! \fBddi_dma_buf_bind_handle\fR Solaris DDI
! \fBddi_dma_burstsizes\fR Solaris DDI
! \fBddi_dma_free_handle\fR Solaris DDI
! \fBddi_dma_getwin\fR Solaris DDI
! \fBddi_dma_mem_alloc\fR Solaris DDI
! \fBddi_dma_mem_free\fR Solaris DDI
! \fBddi_dma_nextcookie\fR Solaris DDI
! \fBddi_dma_numwin\fR Solaris DDI
! \fBddi_dma_set_sbus64\fR Solaris DDI
! \fBddi_dma_sync\fR Solaris DDI
! \fBddi_dma_unbind_handle\fR Solaris DDI
! \fBddi_dmae\fR Solaris x86 DDI
! \fBddi_dmae_1stparty\fR Solaris x86 DDI
! \fBddi_dmae_alloc\fR Solaris x86 DDI
! \fBddi_dmae_disable\fR Solaris x86 DDI
! \fBddi_dmae_enable\fR Solaris x86 DDI
! \fBddi_dmae_getattr\fR Solaris x86 DDI
! \fBddi_dmae_getcnt\fR Solaris x86 DDI
! \fBddi_dmae_getlim\fR Solaris x86 DDI
! \fBddi_dmae_prog\fR Solaris x86 DDI
! \fBddi_dmae_release\fR Solaris x86 DDI
! \fBddi_dmae_stop\fR Solaris x86 DDI
! \fBddi_driver_major\fR Solaris DDI
! \fBddi_driver_name\fR Solaris DDI
! \fBddi_enter_critical\fR Solaris DDI
! \fBddi_exit_critical\fR Solaris DDI
! \fBddi_ffs\fR Solaris DDI
! \fBddi_fls\fR Solaris DDI
! \fBddi_fm_acc_err_clear\fR Solaris DDI
! \fBddi_fm_acc_err_get\fR Solaris DDI
! \fBddi_fm_ereport_post\fR Solaris DDI
! \fBddi_fm_handler_register\fR Solaris DDI
! \fBddi_fm_init\fR Solaris DDI
! \fBddi_fm_service_impact\fR Solaris DDI
! \fBddi_get16\fR Solaris DDI
! \fBddi_get32\fR Solaris DDI
! \fBddi_get64\fR Solaris DDI
! \fBddi_get8\fR Solaris DDI
! \fBddi_get_cred\fR Solaris DDI
! \fBddi_get_devstate\fR Solaris DDI
! \fBddi_get_driver_private\fR Solaris DDI
! \fBddi_get_eventcookie\fR Solaris DDI
! \fBddi_get_iblock_cookie\fR Solaris DDI
! \fBddi_get_iminor\fR Solaris DDI
! \fBddi_get_instance\fR Solaris DDI
! \fBddi_get_kt_did\fR Solaris DDI
! \fBddi_get_lbolt\fR Solaris DDI
! \fBddi_get_name\fR Solaris DDI
! \fBddi_get_parent\fR Solaris DDI
! \fBddi_get_pid\fR Solaris DDI
! \fBddi_get_soft_iblock_cookie\fR Solaris DDI
! \fBddi_get_soft_state\fR Solaris DDI
! \fBddi_getb\fR Solaris DDI
! \fBddi_getl\fR Solaris DDI
! \fBddi_getll\fR Solaris DDI
! \fBddi_getlongprop\fR Solaris DDI
! \fBddi_getlongprop_buf\fR Solaris DDI
! \fBddi_getprop\fR Solaris DDI
! \fBddi_getproplen\fR Solaris DDI
! \fBddi_getw\fR Solaris DDI
! \fBddi_intr_add_handler\fR Solaris DDI
! \fBddi_intr_add_softint\fR Solaris DDI
! \fBddi_intr_alloc\fR Solaris DDI
! \fBddi_intr_block_disable\fR Solaris DDI
! \fBddi_intr_block_enable\fR Solaris DDI
! \fBddi_intr_clr_mask\fR Solaris DDI
! \fBddi_intr_dup_handler\fR Solaris DDI
! \fBddi_intr_disable\fR Solaris DDI
! \fBddi_intr_enable\fR Solaris DDI
! \fBddi_intr_free\fR Solaris DDI
! \fBddi_intr_get_cap\fR Solaris DDI
! \fBddi_intr_get_hilevel_pri\fR Solaris DDI
! \fBddi_intr_get_navail\fR Solaris DDI
! \fBddi_intr_get_nintrs\fR Solaris DDI
! \fBddi_intr_get_pending\fR Solaris DDI
! \fBddi_intr_get_pri\fR Solaris DDI
! \fBddi_intr_get_softint_pri\fR Solaris DDI
! \fBddi_intr_get_supported_types\fR Solaris DDI
! \fBddi_intr_remove_handler\fR Solaris DDI
! \fBddi_intr_remove_softint\fR Solaris DDI
! \fBddi_intr_set_cap\fR Solaris DDI
! \fBddi_intr_set_mask\fR Solaris DDI
! \fBddi_intr_set_pri\fR Solaris DDI
! \fBddi_intr_set_softint_pri\fR Solaris DDI
! \fBddi_intr_trigger_softint\fR Solaris DDI
! \fBddi_io_get16\fR Solaris DDI
! \fBddi_io_get32\fR Solaris DDI
! \fBddi_io_get8\fR Solaris DDI
! \fBddi_io_getb\fR Solaris DDI
! \fBddi_io_getl\fR Solaris DDI
! \fBddi_io_getw\fR Solaris DDI
! \fBddi_io_put16\fR Solaris DDI
! \fBddi_io_put32\fR Solaris DDI
! \fBddi_io_put8\fR Solaris DDI
! \fBddi_io_putb\fR Solaris DDI
! \fBddi_io_putl\fR Solaris DDI
! \fBddi_io_putw\fR Solaris DDI
! \fBddi_io_rep_get16\fR Solaris DDI
! \fBddi_io_rep_get32\fR Solaris DDI
! \fBddi_io_rep_get8\fR Solaris DDI
! \fBddi_io_rep_getb\fR Solaris DDI
! \fBddi_io_rep_getl\fR Solaris DDI
! \fBddi_io_rep_getw\fR Solaris DDI
! \fBddi_io_rep_put16\fR Solaris DDI
! \fBddi_io_rep_put32\fR Solaris DDI
! \fBddi_io_rep_put8\fR Solaris DDI
! \fBddi_io_rep_putb\fR Solaris DDI
! \fBddi_io_rep_putl\fR Solaris DDI
! \fBddi_io_rep_putw\fR Solaris DDI
! \fBddi_iomin\fR Solaris DDI
! \fBddi_log_sysevent\fR Solaris DDI
! \fBddi_map_regs\fR Solaris DDI
! \fBddi_mapdev\fR Solaris DDI
! \fBddi_mapdev_intercept\fR Solaris DDI
! \fBddi_mapdev_nointercept\fR Solaris DDI
! \fBddi_mapdev_set_device_acc_attr\fR Solaris DDI
! \fBddi_mem_get16\fR Solaris DDI
! \fBddi_mem_get32\fR Solaris DDI
! \fBddi_mem_get64\fR Solaris DDI
! \fBddi_mem_get8\fR Solaris DDI
! \fBddi_mem_getb\fR Solaris DDI
! \fBddi_mem_getl\fR Solaris DDI
! \fBddi_mem_getll\fR Solaris DDI
! \fBddi_mem_getw\fR Solaris DDI
! \fBddi_mem_put16\fR Solaris DDI
! \fBddi_mem_put32\fR Solaris DDI
! \fBddi_mem_put64\fR Solaris DDI
! \fBddi_mem_put8\fR Solaris DDI
! \fBddi_mem_putb\fR Solaris DDI
! \fBddi_mem_putl\fR Solaris DDI
! \fBddi_mem_putll\fR Solaris DDI
! \fBddi_mem_putw\fR Solaris DDI
! \fBddi_mem_rep_get16\fR Solaris DDI
! \fBddi_mem_rep_get32\fR Solaris DDI
! \fBddi_mem_rep_get64\fR Solaris DDI
! \fBddi_mem_rep_get8\fR Solaris DDI
! \fBddi_mem_rep_getb\fR Solaris DDI
! \fBddi_mem_rep_getl\fR Solaris DDI
! \fBddi_mem_rep_getll\fR Solaris DDI
! \fBddi_mem_rep_getw\fR Solaris DDI
! \fBddi_mem_rep_put16\fR Solaris DDI
! \fBddi_mem_rep_put32\fR Solaris DDI
! \fBddi_mem_rep_put64\fR Solaris DDI
! \fBddi_mem_rep_put8\fR Solaris DDI
! \fBddi_mem_rep_putb\fR Solaris DDI
! \fBddi_mem_rep_putl\fR Solaris DDI
! \fBddi_mem_rep_putll\fR Solaris DDI
! \fBddi_mem_rep_putw\fR Solaris DDI
! \fBddi_mmap_get_model\fR Solaris DDI
! \fBddi_model_convert_from\fR Solaris DDI
! \fBddi_modopen\fR Solaris DDI
! \fBddi_no_info\fR Solaris DDI
! \fBddi_node_name\fR Solaris DDI
! \fBddi_peek16\fR Solaris DDI
! \fBddi_peek32\fR Solaris DDI
! \fBddi_peek64\fR Solaris DDI
! \fBddi_peek8\fR Solaris DDI
! \fBddi_peekc\fR Solaris DDI
! \fBddi_peekd\fR Solaris DDI
! \fBddi_peekl\fR Solaris DDI
! \fBddi_peeks\fR Solaris DDI
! \fBddi_periodic_add\fR Solaris DDI
! \fBddi_periodic_delete\fR Solaris DDI
! \fBddi_poke16\fR Solaris DDI
! \fBddi_poke32\fR Solaris DDI
! \fBddi_poke64\fR Solaris DDI
! \fBddi_poke8\fR Solaris DDI
! \fBddi_pokec\fR Solaris DDI
! \fBddi_poked\fR Solaris DDI
! \fBddi_pokel\fR Solaris DDI
! \fBddi_pokes\fR Solaris DDI
! \fBddi_prop_create\fR Solaris DDI
! \fBddi_prop_exists\fR Solaris DDI
! \fBddi_prop_free\fR Solaris DDI
! \fBddi_prop_get_int\fR Solaris DDI
! \fBddi_prop_lookup\fR Solaris DDI
! \fBddi_prop_lookup_byte_array\fR Solaris DDI
! \fBddi_prop_lookup_int_array\fR Solaris DDI
! \fBddi_prop_lookup_string\fR Solaris DDI
! \fBddi_prop_lookup_string_array\fR Solaris DDI
! \fBddi_prop_modify\fR Solaris DDI
! \fBddi_prop_op\fR Solaris DDI
! \fBddi_prop_remove\fR Solaris DDI
! \fBddi_prop_remove_all\fR Solaris DDI
! \fBddi_prop_undefine\fR Solaris DDI
! \fBddi_prop_update\fR Solaris DDI
! \fBddi_prop_update_byte_array\fR Solaris DDI
! \fBddi_prop_update_int\fR Solaris DDI
! \fBddi_prop_update_int_array\fR Solaris DDI
! \fBddi_prop_update_string\fR Solaris DDI
! \fBddi_prop_update_string_array\fR Solaris DDI
! \fBddi_ptob\fR Solaris DDI
! \fBddi_put16\fR Solaris DDI
! \fBddi_put32\fR Solaris DDI
! \fBddi_put64\fR Solaris DDI
! \fBddi_put8\fR Solaris DDI
! \fBddi_putb\fR Solaris DDI
! \fBddi_putl\fR Solaris DDI
! \fBddi_putll\fR Solaris DDI
! \fBddi_putw\fR Solaris DDI
! \fBddi_regs_map_free\fR Solaris DDI
! \fBddi_regs_map_setup\fR Solaris DDI
! \fBddi_remove_event_handler\fR Solaris DDI
! \fBddi_remove_intr\fR Solaris DDI
! \fBddi_remove_minor_node\fR Solaris DDI
! \fBddi_remove_softintr\fR Solaris DDI
! \fBddi_removing_power\fR Solaris DDI
! \fBddi_rep_get16\fR Solaris DDI
! \fBddi_rep_get32\fR Solaris DDI
! \fBddi_rep_get64\fR Solaris DDI
! \fBddi_rep_get8\fR Solaris DDI
! \fBddi_rep_getb\fR Solaris DDI
! \fBddi_rep_getl\fR Solaris DDI
! \fBddi_rep_getll\fR Solaris DDI
! \fBddi_rep_getw\fR Solaris DDI
! \fBddi_rep_put16\fR Solaris DDI
! \fBddi_rep_put32\fR Solaris DDI
! \fBddi_rep_put64\fR Solaris DDI
! \fBddi_rep_put8\fR Solaris DDI
! \fBddi_rep_putb\fR Solaris DDI
! \fBddi_rep_putl\fR Solaris DDI
! \fBddi_rep_putll\fR Solaris DDI
! \fBddi_rep_putw\fR Solaris DDI
! \fBddi_report_dev\fR Solaris DDI
! \fBddi_root_node\fR Solaris DDI
! \fBddi_segmap\fR Solaris DDI
! \fBddi_segmap_setup\fR Solaris DDI
! \fBddi_set_driver_private\fR Solaris DDI
! \fBddi_slaveonly\fR Solaris DDI
! \fBddi_soft_state\fR Solaris DDI
! \fBddi_soft_state_fini\fR Solaris DDI
! \fBddi_soft_state_free\fR Solaris DDI
! \fBddi_soft_state_init\fR Solaris DDI
! \fBddi_soft_state_zalloc\fR Solaris DDI
! \fBddi_strlol\fR Solaris DDI
! \fBddi_strloul\fR Solaris DDI
! \fBddi_trigger_softintr\fR Solaris DDI
! \fBddi_umem_alloc\fR Solaris DDI
! \fBddi_umem_free\fR Solaris DDI
! \fBddi_umem_iosetup\fR Solaris DDI
! \fBddi_umem_lock\fR Solaris DDI
! \fBddi_unmap_regs\fR Solaris DDI
! \fBdelay\fR DDI/DKI
! \fBdevmap_default_access\fR Solaris DDI
! \fBdevmap_devmem_setup\fR Solaris DDI
! \fBdevmap_do_ctxmgt\fR Solaris DDI
! \fBdevmap_load\fR Solaris DDI
! \fBdevmap_set_ctx_timeout\fR Solaris DDI
! \fBdevmap_setup\fR Solaris DDI
! \fBdevmap_umem_setup\fR Solaris DDI
! \fBdevmap_unload\fR Solaris DDI
! \fBdisksort\fR Solaris DDI
! \fBdlbindack\fR Solaris DDI
! \fBdrv_getparm\fR DDI/DKI
! \fBdrv_hztousec\fR DDI/DKI
! \fBdrv_priv\fR DDI/DKI
! \fBdrv_usectohz\fR DDI/DKI
! \fBdrv_usecwait\fR DDI/DKI
! \fBfree_pktiopb\fR Solaris DDI
! \fBfreerbuf\fR DDI/DKI
! \fBget_pktiopb\fR Solaris DDI
! \fBgeterror\fR DDI/DKI
! \fBgethrtime\fR DDI/DKI
! \fBgetmajor\fR DDI/DKI
! \fBgetminor\fR DDI/DKI
! \fBgetrbuf\fR DDI/DKI
! \fBgld\fR Solaris DDI
! \fBhat_getkpfnum\fR DKI only
! \fBid32_alloc\fR Solaris DDI
! \fBinb\fR Solaris x86 DDI
! \fBinl\fR Solaris x86 DDI
! \fBinw\fR Solaris x86 DDI
! \fBkiconv\fR Solaris DDI
! \fBkiconv_close\fR Solaris DDI
! \fBkiconv_open\fR Solaris DDI
! \fBkiconvstr\fR Solaris DDI
! \fBkmem_alloc\fR DDI/DKI
! \fBkmem_cache_create\fR Solaris DDI
! \fBkmem_free\fR DDI/DKI
! \fBkmem_zalloc\fR DDI/DKI
! \fBkstat_create\fR Solaris DDI
! \fBkstat_delete\fR Solaris DDI
! \fBkstat_install\fR Solaris DDI
! \fBkstat_named_init\fR Solaris DDI
! \fBkstat_queue\fR Solaris DDI
! \fBkstat_runq_back_to_waitq\fR Solaris DDI
! \fBkstat_runq_enter\fR Solaris DDI
! \fBkstat_runq_exit\fR Solaris DDI
! \fBkstat_waitq_enter\fR Solaris DDI
! \fBkstat_waitq_exit\fR Solaris DDI
! \fBkstat_waitq_to_runq\fR Solaris DDI
! \fBldi_add_event_handler\fR Solaris DDI
! \fBldi_aread\fR Solaris DDI
! \fBldi_devmap\fR Solaris DDI
! \fBldi_dump\fR Solaris DDI
! \fBldi_ev_finalize\fR Solaris DDI
! \fBldi_ev_get_cookie\fR Solaris DDI
! \fBldi_ev_get_type\fR Solaris DDI
! \fBldi_ev_notify\fR Solaris DDI
! \fBldi_ev_register_callbacks\fR Solaris DDI
! \fBldi_ev_remove_callbacks\fR Solaris DDI
! \fBldi_get_dev\fR Solaris DDI
! \fBldi_get_eventcookie\fR Solaris DDI
! \fBldi_get_size\fR Solaris DDI
! \fBldi_ident_from_dev\fR Solaris DDI
! \fBldi_ioctl\fR Solaris DDI
! \fBldi_open_by_dev\fR Solaris DDI
! \fBldi_poll\fR Solaris DDI
! \fBldi_prop_exists\fR Solaris DDI
! \fBldi_prop_get_int\fR Solaris DDI
! \fBldi_prop_get_lookup_int_array\fR Solaris DDI
! \fBldi_putmsg\fR Solaris DDI
! \fBldi_read\fR Solaris DDI
! \fBldi_remove_event_handler\fR Solaris DDI
! \fBldi_strategy\fR Solaris DDI
! \fBmakecom_g0\fR Solaris DDI
! \fBmakecom_g0_s\fR Solaris DDI
! \fBmakecom_g1\fR Solaris DDI
! \fBmakecom_g5\fR Solaris DDI
! \fBmakedevice\fR DDI/DKI
! \fBmax\fR DDI/DKI
! \fBmax\fR DDI/DKI
! \fBmembar_ops\fR Solaris DDI
! \fBmemchr\fR Solaris DDI
! \fBminphys\fR Solaris DDI
! \fBmod_info\fR Solaris DDI
! \fBmod_install\fR Solaris DDI
! \fBmod_remove\fR Solaris DDI
! \fBmutex_destroy\fR Solaris DDI
! \fBmutex_enter\fR Solaris DDI
! \fBmutex_exit\fR Solaris DDI
! \fBmutex_init\fR Solaris DDI
! \fBmutex_owned\fR Solaris DDI
! \fBmutex_tryenter\fR Solaris DDI
! \fBnochpoll\fR Solaris DDI
! \fBnodev\fR DDI/DKI
! \fBnulldev\fR DDI/DKI
! \fBnumtos\fR Solaris DDI
! \fBnvlist_add_boolean\fR Solaris DDI
! \fBnvlist_alloc\fR Solaris DDI
! \fBnvlist_lookup_boolean\fR Solaris DDI
! \fBnvlist_lookup_nvpair\fR Solaris DDI
! \fBnvlist_next_nvpair\fR Solaris DDI
! \fBnvlist_remove\fR Solaris DDI
! \fBnvlist_value_byte\fR Solaris DDI
! \fBoutb\fR Solaris x86 DDI
! \fBoutl\fR Solaris x86 DDI
! \fBoutw\fR Solaris x86 DDI
! \fBpci_config_get16\fR Solaris DDI
! \fBpci_config_get32\fR Solaris DDI
! \fBpci_config_get64\fR Solaris DDI
! \fBpci_config_get8\fR Solaris DDI
! \fBpci_config_getb\fR Solaris DDI
! \fBpci_config_getl\fR Solaris DDI
! \fBpci_config_getw\fR Solaris DDI
! \fBpci_config_put16\fR Solaris DDI
! \fBpci_config_put32\fR Solaris DDI
! \fBpci_config_put64\fR Solaris DDI
! \fBpci_config_put8\fR Solaris DDI
! \fBpci_config_putb\fR Solaris DDI
! \fBpci_config_putl\fR Solaris DDI
! \fBpci_config_putw\fR Solaris DDI
! \fBpci_config_setup\fR Solaris DDI
! \fBpci_config_teardown\fR Solaris DDI
! \fBpci_ereport_setup\fR Solaris DDI
! \fBpci_report_pmcap\fR Solaris DDI
! \fBpci_save_config_regs\fR Solaris DDI
! \fBphysio\fR Solaris DDI
! \fBpm_busy_component\fR Solaris DDI
! \fBpm_power_has_changed\fR Solaris DDI
! \fBpm_raise_power\fR Solaris DDI
! \fBpm_trans_check\fR Solaris DDI
! \fBpollwakeup\fR DDI/DKI
! \fBpci_config_teardown\fR Solaris DDI
! \fBpci_config_teardown\fR Solaris DDI
! \fBpriv_getbyname\fR Solaris DDI
! \fBpriv_policy\fR Solaris DDI
! \fBproc_signal\fR Solaris DDI
! \fBproc_unref\fR Solaris DDI
! \fBptob\fR DDI/DKI
! \fBrepinsb\fR Solaris x86 DDI
! \fBrepinsd\fR Solaris x86 DDI
! \fBrepinsw\fR Solaris x86 DDI
! \fBrepoutsb\fR Solaris x86 DDI
! \fBrepoutsd\fR Solaris x86 DDI
! \fBrepoutsw\fR Solaris x86 DDI
! \fBrmalloc\fR DDI/DKI
! \fBrmalloc_wait\fR DDI/DKI
! \fBrmallocmap\fR DDI/DKI
! \fBrmallocmap_wait\fR DDI/DKI
! \fBrmfree\fR DDI/DKI
! \fBrmfreemap\fR DDI/DKI
! \fBrw_destroy\fR Solaris DDI
! \fBrw_downgrade\fR Solaris DDI
! \fBrw_enter\fR Solaris DDI
! \fBrw_exit\fR Solaris DDI
! \fBrw_init\fR Solaris DDI
! \fBrw_read_locked\fR Solaris DDI
! \fBrw_tryenter\fR Solaris DDI
! \fBrw_tryupgrade\fR Solaris DDI
! \fBscsi_abort\fR Solaris DDI
! \fBscsi_alloc_consistent_buf\fR Solaris DDI
! \fBscsi_cname\fR Solaris DDI
! \fBscsi_destroy_pkt\fR Solaris DDI
! \fBscsi_dmafree\fR Solaris DDI
! \fBscsi_dmaget\fR Solaris DDI
! \fBscsi_dname\fR Solaris DDI
! \fBscsi_errmsg\fR Solaris DDI
! \fBscsi_ext_sense_fields\fR Solaris DDI
! \fBscsi_find_sense_descr\fR Solaris DDI
! \fBscsi_free_consistent_buf\fR Solaris DDI
! \fBscsi_get_device_type_scsi_options\fR Solaris DDI
! \fBscsi_get_device_type_string\fR Solaris DDI
! \fBscsi_hba_attach_setup\fR Solaris DDI
! \fBscsi_hba_detach\fR Solaris DDI
! \fBscsi_hba_fini\fR Solaris DDI
! \fBscsi_hba_init\fR Solaris DDI
! \fBscsi_hba_lookup_capstr\fR Solaris DDI
! \fBscsi_hba_pkt_alloc\fR Solaris DDI
! \fBscsi_hba_pkt_free\fR Solaris DDI
! \fBscsi_hba_probe\fR Solaris DDI
! \fBscsi_hba_tran_alloc\fR Solaris DDI
! \fBscsi_hba_tran_free\fR Solaris DDI
! \fBscsi_ifgetcap\fR Solaris DDI
! \fBscsi_ifsetcap\fR Solaris DDI
! \fBscsi_init_pkt\fR Solaris DDI
! \fBscsi_log\fR Solaris DDI
! \fBscsi_mname\fR Solaris DDI
! \fBscsi_pktalloc\fR Solaris DDI
! \fBscsi_pktfree\fR Solaris DDI
! \fBscsi_poll\fR Solaris DDI
! \fBscsi_probe\fR Solaris DDI
! \fBscsi_resalloc\fR Solaris DDI
! \fBscsi_reset\fR Solaris DDI
! \fBscsi_reset_notify\fR Solaris DDI
! \fBscsi_resfree\fR Solaris DDI
! \fBscsi_rname\fR Solaris DDI
! \fBscsi_sense_key\fR Solaris DDI
! \fBscsi_setup_cdb\fR Solaris DDI
! \fBscsi_slave\fR Solaris DDI
! \fBscsi_sname\fR Solaris DDI
! \fBscsi_sync_pkt\fR Solaris DDI
! \fBscsi_transport\fR Solaris DDI
! \fBscsi_unprobe\fR Solaris DDI
! \fBscsi_unslave\fR Solaris DDI
! \fBscsi_validate_sense\fR Solaris DDI
! \fBscsi_vu_errmsg\fR Solaris DDI
! \fBsema_destroy\fR Solaris DDI
! \fBsema_init\fR Solaris DDI
! \fBsema_p\fR Solaris DDI
! \fBsema_p_sig\fR Solaris DDI
! \fBsema_tryp\fR Solaris DDI
! \fBsema_v\fR Solaris DDI
! \fBsprintf\fR Solaris DDI
! \fBstoi\fR Solaris DDI
! \fBstrchr\fR Solaris DDI
! \fBstrcmp\fR Solaris DDI
! \fBstrcpy\fR Solaris DDI
! \fBstrlen\fR Solaris DDI
! \fBstrncmp\fR Solaris DDI
! \fBstrncpy\fR Solaris DDI
! \fBSTRUCT_DECL\fR Solaris DDI
! \fBswab\fR DDI/DKI
! \fBtaskq\fR Solaris DDI
! \fBtimeout\fR DDI/DKI
! \fBu8_strcmp\fR Solaris DDI
! \fBu8_textprep_str\fR Solaris DDI
! \fBu8_validate\fR Solaris DDI
! \fBuconv_u16tou32\fR Solaris DDI
! \fBuiomove\fR DDI/DKI
! \fBuntimeout\fR DDI/DKI
! \fBureadc\fR DDI/DKI
! \fBusb_alloc_request\fR Solaris DDI
! \fBusb_client_attach\fR Solaris DDI
! \fBusb_clr_feature\fR Solaris DDI
! \fBusb_create_pm_components\fR Solaris DDI
! \fBusb_get_addr\fR Solaris DDI
! \fBusb_get_alt_if\fR Solaris DDI
! \fBusb_get_cfg\fR Solaris DDI
! \fBusb_get_current_frame_number\fR Solaris DDI
! \fBusb_get_dev_data\fR Solaris DDI
! \fBusb_get_max_pkts_per_ioc_request\fR Solaris DDI
! \fBusb_get_status\fR Solaris DDI
! \fBusb_get_string_desc\fR Solaris DDI
! \fBusb_handle_remote_wakeup\fR Solaris DDI
! \fBusb_lookup_ep_data\fR Solaris DDI
! \fBusb_parse_data\fR Solaris DDI
! \fBusb_pipe_bulk_xfer\fR Solaris DDI
! \fBusb_pipe_close\fR Solaris DDI
! \fBusb_pipe_ctrl_xfer\fR Solaris DDI
! \fBusb_pipe_drain_reqs\fR Solaris DDI
! \fBusb_pipe_get_max_bulk_transfer_size\fR Solaris DDI
! \fBusb_pipe_get_state\fR Solaris DDI
! \fBusb_pipe_intr_xfer\fR Solaris DDI
! \fBusb_pipe_isoc_xfer\fR Solaris DDI
! \fBusb_pipe_open\fR Solaris DDI
! \fBusb_pipe_reset\fR Solaris DDI
! \fBusb_pipe_set_private\fR Solaris DDI
! \fBusb_register_hotplug_cbs\fR Solaris DDI
! \fBusb_reset_device\fR Solaris DDI
! \fBuwritec\fR DDI/DKI
! \fBva_arg\fR Solaris DDI
! \fBva_end\fR Solaris DDI
! \fBva_start\fR Solaris DDI
! \fBvcmn_err\fR DDI/DKI
! \fBvsprintf\fR Solaris DDI
! .TE
!
! .SH SEE ALSO
! .sp
! .LP
! \fBIntro\fR(9E), \fBmutex\fR(9F)
--- 1,779 ----
.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
.\" Copyright (c) 2005, Sun Microsystems, Inc., All Rights Reserved
.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
! .Dd "Aug 08, 2014"
! .Dt INTRO 9F
! .Os
! .Sh NAME
! .Nm Intro ,
! .Nm intro
! .Nd introduction to DDI/DKI functions
! .Sh DESCRIPTION
Section 9F describes the kernel functions available for use by device drivers.
! See
! .Xr Intro 9E
! for an overview of device driver interfaces.
! .Lp
In this section, the information for each driver function is organized under
the following headings:
! .Bl -bullet -offset indent
! .It
! .Sy NAME
! summarizes the function's purpose.
! .It
! .Sy SYNOPSIS
! shows the syntax of the function's entry point in the source
! code.
! .Li #include
! directives are shown for required headers.
! .It
! .Sy INTERFACE LEVEL
! describes any architecture dependencies.
! .It
! .Sy ARGUMENTS
! describes any arguments required to invoke the function.
! .It
! .Sy DESCRIPTION
! describes general information about the function.
! .It
! .Sy RETURN VALUES
! describes the return values and messages that can
result from invoking the function.
! .It
! .Sy CONTEXT
! indicates from which driver context (user, kernel, interrupt, or
high-level interrupt) the function can be called.
! .Lp
! A driver function has
! .Em user context
! if it was directly invoked because of
! a user thread. The
! .Xr read 9E
! entry point of the driver, invoked by a
! .Xr read 2
! system call, has user context.
! .Lp
! A driver function has
! .Em kernel context
! if was invoked by some other part of
! the kernel. In a block device driver, the
! .Xr strategy 9E
! entry point may be
called by the page daemon to write pages to the device. The page daemon has no
! relation to the current user thread, so in this case
! .Xr strategy 9E
! has kernel context.
! .Lp
! .Em Interrupt context
! is kernel context, but also has an interrupt level
associated with it. Driver interrupt routines have interrupt context.
! .Lp
Note that a mutex acquired in user or kernel context that can also be acquired
in interrupt context means that the user or kernel context thread holding that
mutex is subject to all the restrictions imposed by interrupt context, for the
! duration of the ownership of that mutex. Please see the
! .Xr mutex 9F
! man page for a more complete discussion of proper mutex handling for drivers.
! .Lp
! .Em High-level interrupt context
! is a more restricted form of interrupt
context. If a driver interrupt priority returned from
! .Xr ddi_intr_get_pri 9F
! is greater than the priority returned from
! .Xr ddi_intr_get_hilevel_pri 9F
! this indicates the interrupt handler will
run in high-level interrupt context. These interrupt routines are only allowed
! to call
! .Xr ddi_intr_trigger_softint 9F ,
! .Xr mutex_enter 9F ,
! and
! .Xr mutex_exit 9F .
! Furthermore,
! .Xr mutex_enter 9F
! and
! .Xr mutex_exit 9F
! may only be called on mutexes initialized with the
! interrupt priority returned by
! .Xr ddi_intr_get_pri 9F .
! .It
! .Sy SEE ALSO
! indicates functions that are related by usage and sources, and
which can be referred to for further information.
! .It
! .Sy EXAMPLES
! shows how the function can be used in driver code.
! .El
! .Lp
! Every driver MUST include
! .In sys/ddi.h
! and
! .In sys/sunddi.h ,
! in that order, and as the last files the driver includes.
! .Sh STREAMS KERNEL FUNCTION SUMMARY
The following table summarizes the STREAMS functions described in this section.
! .Bl -column usb_pipe_get_max_bulk_transfer_size
! .It Sy Routine Sy Type
! .It Sy adjmsg DDI/DKI
! .It Sy allocb DDI/DKI
! .It Sy allocb_tmpl Solaris DDI
! .It Sy backq DDI/DKI
! .It Sy bcanput DDI/DKI
! .It Sy bcanputnext DDI/DKI
! .It Sy bufcall DDI/DKI
! .It Sy canput DDI/DKI
! .It Sy canputnext DDI/DKI
! .It Sy clrbuf DDI/DKI
! .It Sy copyb DDI/DKI
! .It Sy copymsg DDI/DKI
! .It Sy DB_BASE Solaris DDI
! .It Sy DB_LIM Solaris DDI
! .It Sy DB_REF Solaris DDI
! .It Sy DB_TYPE Solaris DDI
! .It Sy datamsg DDI/DKI
! .It Sy dupb DDI/DKI
! .It Sy dupmsg DDI/DKI
! .It Sy enableok DDI/DKI
! .It Sy esballoc DDI/DKI
! .It Sy esbbcall DDI/DKI
! .It Sy flushband DDI/DKI
! .It Sy flushq DDI/DKI
! .It Sy freeb DDI/DKI
! .It Sy freemsg DDI/DKI
! .It Sy freezestr DDI/DKI
! .It Sy getq DDI/DKI
! .It Sy IOC_CONVERT_FROM Solaris DDI
! .It Sy insq DDI/DKI
! .It Sy linkb DDI/DKI
! .It Sy MBLKHEAD Solaris DDI
! .It Sy MBLKIN Solaris DDI
! .It Sy MBLKL Solaris DDI
! .It Sy MBLKSIZE Solaris DDI
! .It Sy MBLKTAIL Solaris DDI
! .It Sy mcopyin Solaris DDI
! .It Sy mcopymsg Solaris DDI
! .It Sy mcopyout Solaris DDI
! .It Sy merror Solaris DDI
! .It Sy mexchange Solaris DDI
! .It Sy mioc2ack Solaris DDI
! .It Sy miocack Solaris DDI
! .It Sy mexchange Solaris DDI
! .It Sy miocpullup Solaris DDI
! .It Sy mkiocb Solaris DDI
! .It Sy msgdsize DDI/DKI
! .It Sy msgpullup DDI/DKI
! .It Sy msgsize Solaris DDI
! .It Sy mt-streams Solaris DDI
! .It Sy noenable DDI/DKI
! .It Sy OTHERQ DDI/DKI
! .It Sy pullupmsg DDI/DKI
! .It Sy put DDI/DKI
! .It Sy putbq DDI/DKI
! .It Sy putctl DDI/DKI
! .It Sy putctl1 DDI/DKI
! .It Sy putnext DDI/DKI
! .It Sy putnextctl DDI/DKI
! .It Sy putq DDI/DKI
! .It Sy qassociate Solaris DDI
! .It Sy qbufcall Solaris DDI
! .It Sy qenable DDI/DKI
! .It Sy qprocson DDI/DKI
! .It Sy qprocsoff DDI/DKI
! .It Sy qreply DDI/DKI
! .It Sy qsize DDI/DKI
! .It Sy qtimeout Solaris DDI
! .It Sy qunbufcall Solaris DDI
! .It Sy quntimeout Solaris DDI
! .It Sy qwait Solaris DDI
! .It Sy qwait_sig Solaris DDI
! .It Sy qwriter Solaris DDI
! .It Sy RD DDI/DKI
! .It Sy rmvb DDI/DKI
! .It Sy rmvq DDI/DKI
! .It Sy SAMESTR DDI/DKI
! .It Sy strlog DDI/DKI
! .It Sy strqget DDI/DKI
! .It Sy strqset DDI/DKI
! .It Sy testb DDI/DKI
! .It Sy unbufcall DDI/DKI
! .It Sy unfreezestr DDI/DKI
! .It Sy unlinkb DDI/DKI
! .It Sy WR DDI/DKI
! .El
! .Lp
The following table summarizes the functions not specific to STREAMS.
! .Bl -column usb_pipe_get_max_bulk_transfer_size
! .It Sy Routine Sy Type
! .It Sy ASSERT DDI/DKI
! .It Sy anocancel Solaris DDI
! .It Sy aphysio Solaris DDI
! .It Sy atomic_add DDI/DKI
! .It Sy atomic_and DDI/DKI
! .It Sy atomic_bits DDI/DKI
! .It Sy atomic_cas DDI/DKI
! .It Sy atomic_dec DDI/DKI
! .It Sy atomic_inc DDI/DKI
! .It Sy atomic_ops DDI/DKI
! .It Sy atomic_or DDI/DKI
! .It Sy atomic_swap DDI/DKI
! .It Sy bcmp DDI/DKI
! .It Sy bcopy DDI/DKI
! .It Sy bioclone Solaris DDI
! .It Sy biodone DDI/DKI
! .It Sy biofini Solaris DDI
! .It Sy bioinit Solaris DDI
! .It Sy biomodified Solaris DDI
! .It Sy biosize Solaris DDI
! .It Sy bioerror Solaris DDI
! .It Sy bioreset Solaris DDI
! .It Sy biowait DDI/DKI
! .It Sy bp_copyin DDI/DKI
! .It Sy bp_copyout DDI/DKI
! .It Sy bp_mapin DDI/DKI
! .It Sy bp_mapout DDI/DKI
! .It Sy btop DDI/DKI
! .It Sy btopr DDI/DKI
! .It Sy bzero DDI/DKI
! .It Sy cmn_err DDI/DKI
! .It Sy condvar Solaris DDI
! .It Sy copyin DDI/DKI
! .It Sy copyout DDI/DKI
! .It Sy cv_broadcast Solaris DDI
! .It Sy cv_destroy Solaris DDI
! .It Sy cv_init Solaris DDI
! .It Sy cv_signal Solaris DDI
! .It Sy cv_timedwait Solaris DDI
! .It Sy cv_wait Solaris DDI
! .It Sy cv_wait_sig Solaris DDI
! .It Sy ddi_add_event_handler Solaris DDI
! .It Sy ddi_add_intr Solaris DDI
! .It Sy ddi_add_softintr Solaris DDI
! .It Sy ddi_binding_name Solaris DDI
! .It Sy ddi_btop Solaris DDI
! .It Sy ddi_btopr Solaris DDI
! .It Sy ddi_can_receive_sig Solaris DDI
! .It Sy ddi_check_acc_handle Solaris DDI
! .It Sy ddi_copyin Solaris DDI
! .It Sy ddi_copyout Solaris DDI
! .It Sy ddi_create_minor_node Solaris DDI
! .It Sy ddi_cred Solaris DDI
! .It Sy ddi_dev_is_sid Solaris DDI
! .It Sy ddi_dev_nintrs Solaris DDI
! .It Sy ddi_dev_nregs Solaris DDI
! .It Sy ddi_dev_regsize Solaris DDI
! .It Sy ddi_device_copy Solaris DDI
! .It Sy ddi_device_zero Solaris DDI
! .It Sy ddi_devmap_segmap Solaris DDI
! .It Sy ddi_dma_addr_bind_handle Solaris DDI
! .It Sy ddi_dma_alloc_handle Solaris DDI
! .It Sy ddi_dma_buf_bind_handle Solaris DDI
! .It Sy ddi_dma_burstsizes Solaris DDI
! .It Sy ddi_dma_free_handle Solaris DDI
! .It Sy ddi_dma_getwin Solaris DDI
! .It Sy ddi_dma_mem_alloc Solaris DDI
! .It Sy ddi_dma_mem_free Solaris DDI
! .It Sy ddi_dma_nextcookie Solaris DDI
! .It Sy ddi_dma_numwin Solaris DDI
! .It Sy ddi_dma_set_sbus64 Solaris DDI
! .It Sy ddi_dma_sync Solaris DDI
! .It Sy ddi_dma_unbind_handle Solaris DDI
! .It Sy ddi_dmae Solaris x86 DDI
! .It Sy ddi_dmae_1stparty Solaris x86 DDI
! .It Sy ddi_dmae_alloc Solaris x86 DDI
! .It Sy ddi_dmae_disable Solaris x86 DDI
! .It Sy ddi_dmae_enable Solaris x86 DDI
! .It Sy ddi_dmae_getattr Solaris x86 DDI
! .It Sy ddi_dmae_getcnt Solaris x86 DDI
! .It Sy ddi_dmae_getlim Solaris x86 DDI
! .It Sy ddi_dmae_prog Solaris x86 DDI
! .It Sy ddi_dmae_release Solaris x86 DDI
! .It Sy ddi_dmae_stop Solaris x86 DDI
! .It Sy ddi_driver_major Solaris DDI
! .It Sy ddi_driver_name Solaris DDI
! .It Sy ddi_enter_critical Solaris DDI
! .It Sy ddi_exit_critical Solaris DDI
! .It Sy ddi_ffs Solaris DDI
! .It Sy ddi_fls Solaris DDI
! .It Sy ddi_fm_acc_err_clear Solaris DDI
! .It Sy ddi_fm_acc_err_get Solaris DDI
! .It Sy ddi_fm_ereport_post Solaris DDI
! .It Sy ddi_fm_handler_register Solaris DDI
! .It Sy ddi_fm_init Solaris DDI
! .It Sy ddi_fm_service_impact Solaris DDI
! .It Sy ddi_get16 Solaris DDI
! .It Sy ddi_get32 Solaris DDI
! .It Sy ddi_get64 Solaris DDI
! .It Sy ddi_get8 Solaris DDI
! .It Sy ddi_get_cred Solaris DDI
! .It Sy ddi_get_devstate Solaris DDI
! .It Sy ddi_get_driver_private Solaris DDI
! .It Sy ddi_get_eventcookie Solaris DDI
! .It Sy ddi_get_iblock_cookie Solaris DDI
! .It Sy ddi_get_iminor Solaris DDI
! .It Sy ddi_get_instance Solaris DDI
! .It Sy ddi_get_kt_did Solaris DDI
! .It Sy ddi_get_lbolt Solaris DDI
! .It Sy ddi_get_name Solaris DDI
! .It Sy ddi_get_parent Solaris DDI
! .It Sy ddi_get_pid Solaris DDI
! .It Sy ddi_get_soft_iblock_cookie Solaris DDI
! .It Sy ddi_get_soft_state Solaris DDI
! .It Sy ddi_getb Solaris DDI
! .It Sy ddi_getl Solaris DDI
! .It Sy ddi_getll Solaris DDI
! .It Sy ddi_getlongprop Solaris DDI
! .It Sy ddi_getlongprop_buf Solaris DDI
! .It Sy ddi_getprop Solaris DDI
! .It Sy ddi_getproplen Solaris DDI
! .It Sy ddi_getw Solaris DDI
! .It Sy ddi_intr_add_handler Solaris DDI
! .It Sy ddi_intr_add_softint Solaris DDI
! .It Sy ddi_intr_alloc Solaris DDI
! .It Sy ddi_intr_block_disable Solaris DDI
! .It Sy ddi_intr_block_enable Solaris DDI
! .It Sy ddi_intr_clr_mask Solaris DDI
! .It Sy ddi_intr_dup_handler Solaris DDI
! .It Sy ddi_intr_disable Solaris DDI
! .It Sy ddi_intr_enable Solaris DDI
! .It Sy ddi_intr_free Solaris DDI
! .It Sy ddi_intr_get_cap Solaris DDI
! .It Sy ddi_intr_get_hilevel_pri Solaris DDI
! .It Sy ddi_intr_get_navail Solaris DDI
! .It Sy ddi_intr_get_nintrs Solaris DDI
! .It Sy ddi_intr_get_pending Solaris DDI
! .It Sy ddi_intr_get_pri Solaris DDI
! .It Sy ddi_intr_get_softint_pri Solaris DDI
! .It Sy ddi_intr_get_supported_types Solaris DDI
! .It Sy ddi_intr_remove_handler Solaris DDI
! .It Sy ddi_intr_remove_softint Solaris DDI
! .It Sy ddi_intr_set_cap Solaris DDI
! .It Sy ddi_intr_set_mask Solaris DDI
! .It Sy ddi_intr_set_pri Solaris DDI
! .It Sy ddi_intr_set_softint_pri Solaris DDI
! .It Sy ddi_intr_trigger_softint Solaris DDI
! .It Sy ddi_io_get16 Solaris DDI
! .It Sy ddi_io_get32 Solaris DDI
! .It Sy ddi_io_get8 Solaris DDI
! .It Sy ddi_io_getb Solaris DDI
! .It Sy ddi_io_getl Solaris DDI
! .It Sy ddi_io_getw Solaris DDI
! .It Sy ddi_io_put16 Solaris DDI
! .It Sy ddi_io_put32 Solaris DDI
! .It Sy ddi_io_put8 Solaris DDI
! .It Sy ddi_io_putb Solaris DDI
! .It Sy ddi_io_putl Solaris DDI
! .It Sy ddi_io_putw Solaris DDI
! .It Sy ddi_io_rep_get16 Solaris DDI
! .It Sy ddi_io_rep_get32 Solaris DDI
! .It Sy ddi_io_rep_get8 Solaris DDI
! .It Sy ddi_io_rep_getb Solaris DDI
! .It Sy ddi_io_rep_getl Solaris DDI
! .It Sy ddi_io_rep_getw Solaris DDI
! .It Sy ddi_io_rep_put16 Solaris DDI
! .It Sy ddi_io_rep_put32 Solaris DDI
! .It Sy ddi_io_rep_put8 Solaris DDI
! .It Sy ddi_io_rep_putb Solaris DDI
! .It Sy ddi_io_rep_putl Solaris DDI
! .It Sy ddi_io_rep_putw Solaris DDI
! .It Sy ddi_iomin Solaris DDI
! .It Sy ddi_log_sysevent Solaris DDI
! .It Sy ddi_map_regs Solaris DDI
! .It Sy ddi_mapdev Solaris DDI
! .It Sy ddi_mapdev_intercept Solaris DDI
! .It Sy ddi_mapdev_nointercept Solaris DDI
! .It Sy ddi_mapdev_set_device_acc_attr Solaris DDI
! .It Sy ddi_mem_get16 Solaris DDI
! .It Sy ddi_mem_get32 Solaris DDI
! .It Sy ddi_mem_get64 Solaris DDI
! .It Sy ddi_mem_get8 Solaris DDI
! .It Sy ddi_mem_getb Solaris DDI
! .It Sy ddi_mem_getl Solaris DDI
! .It Sy ddi_mem_getll Solaris DDI
! .It Sy ddi_mem_getw Solaris DDI
! .It Sy ddi_mem_put16 Solaris DDI
! .It Sy ddi_mem_put32 Solaris DDI
! .It Sy ddi_mem_put64 Solaris DDI
! .It Sy ddi_mem_put8 Solaris DDI
! .It Sy ddi_mem_putb Solaris DDI
! .It Sy ddi_mem_putl Solaris DDI
! .It Sy ddi_mem_putll Solaris DDI
! .It Sy ddi_mem_putw Solaris DDI
! .It Sy ddi_mem_rep_get16 Solaris DDI
! .It Sy ddi_mem_rep_get32 Solaris DDI
! .It Sy ddi_mem_rep_get64 Solaris DDI
! .It Sy ddi_mem_rep_get8 Solaris DDI
! .It Sy ddi_mem_rep_getb Solaris DDI
! .It Sy ddi_mem_rep_getl Solaris DDI
! .It Sy ddi_mem_rep_getll Solaris DDI
! .It Sy ddi_mem_rep_getw Solaris DDI
! .It Sy ddi_mem_rep_put16 Solaris DDI
! .It Sy ddi_mem_rep_put32 Solaris DDI
! .It Sy ddi_mem_rep_put64 Solaris DDI
! .It Sy ddi_mem_rep_put8 Solaris DDI
! .It Sy ddi_mem_rep_putb Solaris DDI
! .It Sy ddi_mem_rep_putl Solaris DDI
! .It Sy ddi_mem_rep_putll Solaris DDI
! .It Sy ddi_mem_rep_putw Solaris DDI
! .It Sy ddi_mmap_get_model Solaris DDI
! .It Sy ddi_model_convert_from Solaris DDI
! .It Sy ddi_modopen Solaris DDI
! .It Sy ddi_no_info Solaris DDI
! .It Sy ddi_node_name Solaris DDI
! .It Sy ddi_peek16 Solaris DDI
! .It Sy ddi_peek32 Solaris DDI
! .It Sy ddi_peek64 Solaris DDI
! .It Sy ddi_peek8 Solaris DDI
! .It Sy ddi_peekc Solaris DDI
! .It Sy ddi_peekd Solaris DDI
! .It Sy ddi_peekl Solaris DDI
! .It Sy ddi_peeks Solaris DDI
! .It Sy ddi_periodic_add Solaris DDI
! .It Sy ddi_periodic_delete Solaris DDI
! .It Sy ddi_poke16 Solaris DDI
! .It Sy ddi_poke32 Solaris DDI
! .It Sy ddi_poke64 Solaris DDI
! .It Sy ddi_poke8 Solaris DDI
! .It Sy ddi_pokec Solaris DDI
! .It Sy ddi_poked Solaris DDI
! .It Sy ddi_pokel Solaris DDI
! .It Sy ddi_pokes Solaris DDI
! .It Sy ddi_prop_create Solaris DDI
! .It Sy ddi_prop_exists Solaris DDI
! .It Sy ddi_prop_free Solaris DDI
! .It Sy ddi_prop_get_int Solaris DDI
! .It Sy ddi_prop_lookup Solaris DDI
! .It Sy ddi_prop_lookup_byte_array Solaris DDI
! .It Sy ddi_prop_lookup_int_array Solaris DDI
! .It Sy ddi_prop_lookup_string Solaris DDI
! .It Sy ddi_prop_lookup_string_array Solaris DDI
! .It Sy ddi_prop_modify Solaris DDI
! .It Sy ddi_prop_op Solaris DDI
! .It Sy ddi_prop_remove Solaris DDI
! .It Sy ddi_prop_remove_all Solaris DDI
! .It Sy ddi_prop_undefine Solaris DDI
! .It Sy ddi_prop_update Solaris DDI
! .It Sy ddi_prop_update_byte_array Solaris DDI
! .It Sy ddi_prop_update_int Solaris DDI
! .It Sy ddi_prop_update_int_array Solaris DDI
! .It Sy ddi_prop_update_string Solaris DDI
! .It Sy ddi_prop_update_string_array Solaris DDI
! .It Sy ddi_ptob Solaris DDI
! .It Sy ddi_put16 Solaris DDI
! .It Sy ddi_put32 Solaris DDI
! .It Sy ddi_put64 Solaris DDI
! .It Sy ddi_put8 Solaris DDI
! .It Sy ddi_putb Solaris DDI
! .It Sy ddi_putl Solaris DDI
! .It Sy ddi_putll Solaris DDI
! .It Sy ddi_putw Solaris DDI
! .It Sy ddi_regs_map_free Solaris DDI
! .It Sy ddi_regs_map_setup Solaris DDI
! .It Sy ddi_remove_event_handler Solaris DDI
! .It Sy ddi_remove_intr Solaris DDI
! .It Sy ddi_remove_minor_node Solaris DDI
! .It Sy ddi_remove_softintr Solaris DDI
! .It Sy ddi_removing_power Solaris DDI
! .It Sy ddi_rep_get16 Solaris DDI
! .It Sy ddi_rep_get32 Solaris DDI
! .It Sy ddi_rep_get64 Solaris DDI
! .It Sy ddi_rep_get8 Solaris DDI
! .It Sy ddi_rep_getb Solaris DDI
! .It Sy ddi_rep_getl Solaris DDI
! .It Sy ddi_rep_getll Solaris DDI
! .It Sy ddi_rep_getw Solaris DDI
! .It Sy ddi_rep_put16 Solaris DDI
! .It Sy ddi_rep_put32 Solaris DDI
! .It Sy ddi_rep_put64 Solaris DDI
! .It Sy ddi_rep_put8 Solaris DDI
! .It Sy ddi_rep_putb Solaris DDI
! .It Sy ddi_rep_putl Solaris DDI
! .It Sy ddi_rep_putll Solaris DDI
! .It Sy ddi_rep_putw Solaris DDI
! .It Sy ddi_report_dev Solaris DDI
! .It Sy ddi_root_node Solaris DDI
! .It Sy ddi_segmap Solaris DDI
! .It Sy ddi_segmap_setup Solaris DDI
! .It Sy ddi_set_driver_private Solaris DDI
! .It Sy ddi_slaveonly Solaris DDI
! .It Sy ddi_soft_state Solaris DDI
! .It Sy ddi_soft_state_fini Solaris DDI
! .It Sy ddi_soft_state_free Solaris DDI
! .It Sy ddi_soft_state_init Solaris DDI
! .It Sy ddi_soft_state_zalloc Solaris DDI
! .It Sy ddi_strlol Solaris DDI
! .It Sy ddi_strloul Solaris DDI
! .It Sy ddi_trigger_softintr Solaris DDI
! .It Sy ddi_umem_alloc Solaris DDI
! .It Sy ddi_umem_free Solaris DDI
! .It Sy ddi_umem_iosetup Solaris DDI
! .It Sy ddi_umem_lock Solaris DDI
! .It Sy ddi_unmap_regs Solaris DDI
! .It Sy delay DDI/DKI
! .It Sy devmap_default_access Solaris DDI
! .It Sy devmap_devmem_setup Solaris DDI
! .It Sy devmap_do_ctxmgt Solaris DDI
! .It Sy devmap_load Solaris DDI
! .It Sy devmap_set_ctx_timeout Solaris DDI
! .It Sy devmap_setup Solaris DDI
! .It Sy devmap_umem_setup Solaris DDI
! .It Sy devmap_unload Solaris DDI
! .It Sy disksort Solaris DDI
! .It Sy dlbindack Solaris DDI
! .It Sy drv_getparm DDI/DKI
! .It Sy drv_hztousec DDI/DKI
! .It Sy drv_priv DDI/DKI
! .It Sy drv_usectohz DDI/DKI
! .It Sy drv_usecwait DDI/DKI
! .It Sy free_pktiopb Solaris DDI
! .It Sy freerbuf DDI/DKI
! .It Sy get_pktiopb Solaris DDI
! .It Sy geterror DDI/DKI
! .It Sy gethrtime DDI/DKI
! .It Sy getmajor DDI/DKI
! .It Sy getminor DDI/DKI
! .It Sy getrbuf DDI/DKI
! .It Sy gld Solaris DDI
! .It Sy hat_getkpfnum DKI only
! .It Sy id32_alloc Solaris DDI
! .It Sy inb Solaris x86 DDI
! .It Sy inl Solaris x86 DDI
! .It Sy inw Solaris x86 DDI
! .It Sy kiconv Solaris DDI
! .It Sy kiconv_close Solaris DDI
! .It Sy kiconv_open Solaris DDI
! .It Sy kiconvstr Solaris DDI
! .It Sy kmem_alloc DDI/DKI
! .It Sy kmem_cache_create Solaris DDI
! .It Sy kmem_free DDI/DKI
! .It Sy kmem_zalloc DDI/DKI
! .It Sy kstat_create Solaris DDI
! .It Sy kstat_delete Solaris DDI
! .It Sy kstat_install Solaris DDI
! .It Sy kstat_named_init Solaris DDI
! .It Sy kstat_queue Solaris DDI
! .It Sy kstat_runq_back_to_waitq Solaris DDI
! .It Sy kstat_runq_enter Solaris DDI
! .It Sy kstat_runq_exit Solaris DDI
! .It Sy kstat_waitq_enter Solaris DDI
! .It Sy kstat_waitq_exit Solaris DDI
! .It Sy kstat_waitq_to_runq Solaris DDI
! .It Sy ldi_add_event_handler Solaris DDI
! .It Sy ldi_aread Solaris DDI
! .It Sy ldi_devmap Solaris DDI
! .It Sy ldi_dump Solaris DDI
! .It Sy ldi_ev_finalize Solaris DDI
! .It Sy ldi_ev_get_cookie Solaris DDI
! .It Sy ldi_ev_get_type Solaris DDI
! .It Sy ldi_ev_notify Solaris DDI
! .It Sy ldi_ev_register_callbacks Solaris DDI
! .It Sy ldi_ev_remove_callbacks Solaris DDI
! .It Sy ldi_get_dev Solaris DDI
! .It Sy ldi_get_eventcookie Solaris DDI
! .It Sy ldi_get_size Solaris DDI
! .It Sy ldi_ident_from_dev Solaris DDI
! .It Sy ldi_ioctl Solaris DDI
! .It Sy ldi_open_by_dev Solaris DDI
! .It Sy ldi_poll Solaris DDI
! .It Sy ldi_prop_exists Solaris DDI
! .It Sy ldi_prop_get_int Solaris DDI
! .It Sy ldi_prop_get_lookup_int_array Solaris DDI
! .It Sy ldi_putmsg Solaris DDI
! .It Sy ldi_read Solaris DDI
! .It Sy ldi_remove_event_handler Solaris DDI
! .It Sy ldi_strategy Solaris DDI
! .It Sy makecom_g0 Solaris DDI
! .It Sy makecom_g0_s Solaris DDI
! .It Sy makecom_g1 Solaris DDI
! .It Sy makecom_g5 Solaris DDI
! .It Sy makedevice DDI/DKI
! .It Sy max DDI/DKI
! .It Sy membar_ops Solaris DDI
! .It Sy memchr Solaris DDI
! .It Sy min DDI/DKI
! .It Sy minphys Solaris DDI
! .It Sy mod_info Solaris DDI
! .It Sy mod_install Solaris DDI
! .It Sy mod_remove Solaris DDI
! .It Sy mutex_destroy Solaris DDI
! .It Sy mutex_enter Solaris DDI
! .It Sy mutex_exit Solaris DDI
! .It Sy mutex_init Solaris DDI
! .It Sy mutex_owned Solaris DDI
! .It Sy mutex_tryenter Solaris DDI
! .It Sy nochpoll Solaris DDI
! .It Sy nodev DDI/DKI
! .It Sy nulldev DDI/DKI
! .It Sy numtos Solaris DDI
! .It Sy nvlist_add_boolean Solaris DDI
! .It Sy nvlist_alloc Solaris DDI
! .It Sy nvlist_lookup_boolean Solaris DDI
! .It Sy nvlist_lookup_nvpair Solaris DDI
! .It Sy nvlist_next_nvpair Solaris DDI
! .It Sy nvlist_remove Solaris DDI
! .It Sy nvlist_value_byte Solaris DDI
! .It Sy outb Solaris x86 DDI
! .It Sy outl Solaris x86 DDI
! .It Sy outw Solaris x86 DDI
! .It Sy pci_config_get16 Solaris DDI
! .It Sy pci_config_get32 Solaris DDI
! .It Sy pci_config_get64 Solaris DDI
! .It Sy pci_config_get8 Solaris DDI
! .It Sy pci_config_getb Solaris DDI
! .It Sy pci_config_getl Solaris DDI
! .It Sy pci_config_getw Solaris DDI
! .It Sy pci_config_put16 Solaris DDI
! .It Sy pci_config_put32 Solaris DDI
! .It Sy pci_config_put64 Solaris DDI
! .It Sy pci_config_put8 Solaris DDI
! .It Sy pci_config_putb Solaris DDI
! .It Sy pci_config_putl Solaris DDI
! .It Sy pci_config_putw Solaris DDI
! .It Sy pci_config_setup Solaris DDI
! .It Sy pci_config_teardown Solaris DDI
! .It Sy pci_ereport_setup Solaris DDI
! .It Sy pci_report_pmcap Solaris DDI
! .It Sy pci_save_config_regs Solaris DDI
! .It Sy physio Solaris DDI
! .It Sy pm_busy_component Solaris DDI
! .It Sy pm_power_has_changed Solaris DDI
! .It Sy pm_raise_power Solaris DDI
! .It Sy pm_trans_check Solaris DDI
! .It Sy pollwakeup DDI/DKI
! .It Sy pci_config_teardown Solaris DDI
! .It Sy pci_config_teardown Solaris DDI
! .It Sy priv_getbyname Solaris DDI
! .It Sy priv_policy Solaris DDI
! .It Sy proc_signal Solaris DDI
! .It Sy proc_unref Solaris DDI
! .It Sy ptob DDI/DKI
! .It Sy repinsb Solaris x86 DDI
! .It Sy repinsd Solaris x86 DDI
! .It Sy repinsw Solaris x86 DDI
! .It Sy repoutsb Solaris x86 DDI
! .It Sy repoutsd Solaris x86 DDI
! .It Sy repoutsw Solaris x86 DDI
! .It Sy rmalloc DDI/DKI
! .It Sy rmalloc_wait DDI/DKI
! .It Sy rmallocmap DDI/DKI
! .It Sy rmallocmap_wait DDI/DKI
! .It Sy rmfree DDI/DKI
! .It Sy rmfreemap DDI/DKI
! .It Sy rw_destroy Solaris DDI
! .It Sy rw_downgrade Solaris DDI
! .It Sy rw_enter Solaris DDI
! .It Sy rw_exit Solaris DDI
! .It Sy rw_init Solaris DDI
! .It Sy rw_read_locked Solaris DDI
! .It Sy rw_tryenter Solaris DDI
! .It Sy rw_tryupgrade Solaris DDI
! .It Sy scsi_abort Solaris DDI
! .It Sy scsi_alloc_consistent_buf Solaris DDI
! .It Sy scsi_cname Solaris DDI
! .It Sy scsi_destroy_pkt Solaris DDI
! .It Sy scsi_dmafree Solaris DDI
! .It Sy scsi_dmaget Solaris DDI
! .It Sy scsi_dname Solaris DDI
! .It Sy scsi_errmsg Solaris DDI
! .It Sy scsi_ext_sense_fields Solaris DDI
! .It Sy scsi_find_sense_descr Solaris DDI
! .It Sy scsi_free_consistent_buf Solaris DDI
! .It Sy scsi_get_device_type_scsi_options Solaris DDI
! .It Sy scsi_get_device_type_string Solaris DDI
! .It Sy scsi_hba_attach_setup Solaris DDI
! .It Sy scsi_hba_detach Solaris DDI
! .It Sy scsi_hba_fini Solaris DDI
! .It Sy scsi_hba_init Solaris DDI
! .It Sy scsi_hba_lookup_capstr Solaris DDI
! .It Sy scsi_hba_pkt_alloc Solaris DDI
! .It Sy scsi_hba_pkt_free Solaris DDI
! .It Sy scsi_hba_probe Solaris DDI
! .It Sy scsi_hba_tran_alloc Solaris DDI
! .It Sy scsi_hba_tran_free Solaris DDI
! .It Sy scsi_ifgetcap Solaris DDI
! .It Sy scsi_ifsetcap Solaris DDI
! .It Sy scsi_init_pkt Solaris DDI
! .It Sy scsi_log Solaris DDI
! .It Sy scsi_mname Solaris DDI
! .It Sy scsi_pktalloc Solaris DDI
! .It Sy scsi_pktfree Solaris DDI
! .It Sy scsi_poll Solaris DDI
! .It Sy scsi_probe Solaris DDI
! .It Sy scsi_resalloc Solaris DDI
! .It Sy scsi_reset Solaris DDI
! .It Sy scsi_reset_notify Solaris DDI
! .It Sy scsi_resfree Solaris DDI
! .It Sy scsi_rname Solaris DDI
! .It Sy scsi_sense_key Solaris DDI
! .It Sy scsi_setup_cdb Solaris DDI
! .It Sy scsi_slave Solaris DDI
! .It Sy scsi_sname Solaris DDI
! .It Sy scsi_sync_pkt Solaris DDI
! .It Sy scsi_transport Solaris DDI
! .It Sy scsi_unprobe Solaris DDI
! .It Sy scsi_unslave Solaris DDI
! .It Sy scsi_validate_sense Solaris DDI
! .It Sy scsi_vu_errmsg Solaris DDI
! .It Sy sema_destroy Solaris DDI
! .It Sy sema_init Solaris DDI
! .It Sy sema_p Solaris DDI
! .It Sy sema_p_sig Solaris DDI
! .It Sy sema_tryp Solaris DDI
! .It Sy sema_v Solaris DDI
! .It Sy sprintf Solaris DDI
! .It Sy stoi Solaris DDI
! .It Sy strchr Solaris DDI
! .It Sy strcmp Solaris DDI
! .It Sy strcpy Solaris DDI
! .It Sy strlen Solaris DDI
! .It Sy strncmp Solaris DDI
! .It Sy strncpy Solaris DDI
! .It Sy STRUCT_DECL Solaris DDI
! .It Sy swab DDI/DKI
! .It Sy taskq Solaris DDI
! .It Sy timeout DDI/DKI
! .It Sy u8_strcmp Solaris DDI
! .It Sy u8_textprep_str Solaris DDI
! .It Sy u8_validate Solaris DDI
! .It Sy uconv_u16tou32 Solaris DDI
! .It Sy uiomove DDI/DKI
! .It Sy untimeout DDI/DKI
! .It Sy ureadc DDI/DKI
! .It Sy usb_alloc_request Solaris DDI
! .It Sy usb_client_attach Solaris DDI
! .It Sy usb_clr_feature Solaris DDI
! .It Sy usb_create_pm_components Solaris DDI
! .It Sy usb_get_addr Solaris DDI
! .It Sy usb_get_alt_if Solaris DDI
! .It Sy usb_get_cfg Solaris DDI
! .It Sy usb_get_current_frame_number Solaris DDI
! .It Sy usb_get_dev_data Solaris DDI
! .It Sy usb_get_max_pkts_per_ioc_request Solaris DDI
! .It Sy usb_get_status Solaris DDI
! .It Sy usb_get_string_desc Solaris DDI
! .It Sy usb_handle_remote_wakeup Solaris DDI
! .It Sy usb_lookup_ep_data Solaris DDI
! .It Sy usb_parse_data Solaris DDI
! .It Sy usb_pipe_bulk_xfer Solaris DDI
! .It Sy usb_pipe_close Solaris DDI
! .It Sy usb_pipe_ctrl_xfer Solaris DDI
! .It Sy usb_pipe_drain_reqs Solaris DDI
! .It Sy usb_pipe_get_max_bulk_transfer_size Solaris DDI
! .It Sy usb_pipe_get_state Solaris DDI
! .It Sy usb_pipe_intr_xfer Solaris DDI
! .It Sy usb_pipe_isoc_xfer Solaris DDI
! .It Sy usb_pipe_open Solaris DDI
! .It Sy usb_pipe_reset Solaris DDI
! .It Sy usb_pipe_set_private Solaris DDI
! .It Sy usb_register_hotplug_cbs Solaris DDI
! .It Sy usb_reset_device Solaris DDI
! .It Sy uwritec DDI/DKI
! .It Sy va_arg Solaris DDI
! .It Sy va_end Solaris DDI
! .It Sy va_start Solaris DDI
! .It Sy vcmn_err DDI/DKI
! .It Sy vsprintf Solaris DDI
! .El
! .Sh SEE ALSO
! .Xr Intro 9E ,
! .Xr mutex 9F