1 .\" Copyright 2014 Garrett D'Amore <garrett@damore.org> 2 .\" Copyright (c) 2005, Sun Microsystems, Inc., All Rights Reserved 3 .\" 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. 4 .\" 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. 5 .\" 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] 6 .Dd "Aug 08, 2014" 7 .Dt INTRO 9F 8 .Os 9 .Sh NAME 10 .Nm Intro , 11 .Nm intro 12 .Nd introduction to DDI/DKI functions 13 .Sh DESCRIPTION 14 Section 9F describes the kernel functions available for use by device drivers. 15 See 16 .Xr Intro 9E 17 for an overview of device driver interfaces. 18 .Lp 19 In this section, the information for each driver function is organized under 20 the following headings: 21 .Bl -bullet -offset indent 22 .It 23 .Sy NAME 24 summarizes the function's purpose. 25 .It 26 .Sy SYNOPSIS 27 shows the syntax of the function's entry point in the source 28 code. 29 .Li #include 30 directives are shown for required headers. 31 .It 32 .Sy INTERFACE LEVEL 33 describes any architecture dependencies. 34 .It 35 .Sy ARGUMENTS 36 describes any arguments required to invoke the function. 37 .It 38 .Sy DESCRIPTION 39 describes general information about the function. 40 .It 41 .Sy RETURN VALUES 42 describes the return values and messages that can 43 result from invoking the function. 44 .It 45 .Sy CONTEXT 46 indicates from which driver context (user, kernel, interrupt, or 47 high-level interrupt) the function can be called. 48 .Lp 49 A driver function has 50 .Em user context 51 if it was directly invoked because of 52 a user thread. The 53 .Xr read 9E 54 entry point of the driver, invoked by a 55 .Xr read 2 56 system call, has user context. 57 .Lp 58 A driver function has 59 .Em kernel context 60 if was invoked by some other part of 61 the kernel. In a block device driver, the 62 .Xr strategy 9E 63 entry point may be 64 called by the page daemon to write pages to the device. The page daemon has no 65 relation to the current user thread, so in this case 66 .Xr strategy 9E 67 has kernel context. 68 .Lp 69 .Em Interrupt context 70 is kernel context, but also has an interrupt level 71 associated with it. Driver interrupt routines have interrupt context. 72 .Lp 73 Note that a mutex acquired in user or kernel context that can also be acquired 74 in interrupt context means that the user or kernel context thread holding that 75 mutex is subject to all the restrictions imposed by interrupt context, for the 76 duration of the ownership of that mutex. Please see the 77 .Xr mutex 9F 78 man page for a more complete discussion of proper mutex handling for drivers. 79 .Lp 80 .Em High-level interrupt context 81 is a more restricted form of interrupt 82 context. If a driver interrupt priority returned from 83 .Xr ddi_intr_get_pri 9F 84 is greater than the priority returned from 85 .Xr ddi_intr_get_hilevel_pri 9F 86 this indicates the interrupt handler will 87 run in high-level interrupt context. These interrupt routines are only allowed 88 to call 89 .Xr ddi_intr_trigger_softint 9F , 90 .Xr mutex_enter 9F , 91 and 92 .Xr mutex_exit 9F . 93 Furthermore, 94 .Xr mutex_enter 9F 95 and 96 .Xr mutex_exit 9F 97 may only be called on mutexes initialized with the 98 interrupt priority returned by 99 .Xr ddi_intr_get_pri 9F . 100 .It 101 .Sy SEE ALSO 102 indicates functions that are related by usage and sources, and 103 which can be referred to for further information. 104 .It 105 .Sy EXAMPLES 106 shows how the function can be used in driver code. 107 .El 108 .Lp 109 Every driver MUST include 110 .In sys/ddi.h 111 and 112 .In sys/sunddi.h , 113 in that order, and as the last files the driver includes. 114 .Sh STREAMS KERNEL FUNCTION SUMMARY 115 The following table summarizes the STREAMS functions described in this section. 116 .Bl -column usb_pipe_get_max_bulk_transfer_size 117 .It Sy Routine Sy Type 118 .It Sy adjmsg DDI/DKI 119 .It Sy allocb DDI/DKI 120 .It Sy allocb_tmpl Solaris DDI 121 .It Sy backq DDI/DKI 122 .It Sy bcanput DDI/DKI 123 .It Sy bcanputnext DDI/DKI 124 .It Sy bufcall DDI/DKI 125 .It Sy canput DDI/DKI 126 .It Sy canputnext DDI/DKI 127 .It Sy clrbuf DDI/DKI 128 .It Sy copyb DDI/DKI 129 .It Sy copymsg DDI/DKI 130 .It Sy DB_BASE Solaris DDI 131 .It Sy DB_LIM Solaris DDI 132 .It Sy DB_REF Solaris DDI 133 .It Sy DB_TYPE Solaris DDI 134 .It Sy datamsg DDI/DKI 135 .It Sy dupb DDI/DKI 136 .It Sy dupmsg DDI/DKI 137 .It Sy enableok DDI/DKI 138 .It Sy esballoc DDI/DKI 139 .It Sy esbbcall DDI/DKI 140 .It Sy flushband DDI/DKI 141 .It Sy flushq DDI/DKI 142 .It Sy freeb DDI/DKI 143 .It Sy freemsg DDI/DKI 144 .It Sy freezestr DDI/DKI 145 .It Sy getq DDI/DKI 146 .It Sy IOC_CONVERT_FROM Solaris DDI 147 .It Sy insq DDI/DKI 148 .It Sy linkb DDI/DKI 149 .It Sy MBLKHEAD Solaris DDI 150 .It Sy MBLKIN Solaris DDI 151 .It Sy MBLKL Solaris DDI 152 .It Sy MBLKSIZE Solaris DDI 153 .It Sy MBLKTAIL Solaris DDI 154 .It Sy mcopyin Solaris DDI 155 .It Sy mcopymsg Solaris DDI 156 .It Sy mcopyout Solaris DDI 157 .It Sy merror Solaris DDI 158 .It Sy mexchange Solaris DDI 159 .It Sy mioc2ack Solaris DDI 160 .It Sy miocack Solaris DDI 161 .It Sy mexchange Solaris DDI 162 .It Sy miocpullup Solaris DDI 163 .It Sy mkiocb Solaris DDI 164 .It Sy msgdsize DDI/DKI 165 .It Sy msgpullup DDI/DKI 166 .It Sy msgsize Solaris DDI 167 .It Sy mt-streams Solaris DDI 168 .It Sy noenable DDI/DKI 169 .It Sy OTHERQ DDI/DKI 170 .It Sy pullupmsg DDI/DKI 171 .It Sy put DDI/DKI 172 .It Sy putbq DDI/DKI 173 .It Sy putctl DDI/DKI 174 .It Sy putctl1 DDI/DKI 175 .It Sy putnext DDI/DKI 176 .It Sy putnextctl DDI/DKI 177 .It Sy putq DDI/DKI 178 .It Sy qassociate Solaris DDI 179 .It Sy qbufcall Solaris DDI 180 .It Sy qenable DDI/DKI 181 .It Sy qprocson DDI/DKI 182 .It Sy qprocsoff DDI/DKI 183 .It Sy qreply DDI/DKI 184 .It Sy qsize DDI/DKI 185 .It Sy qtimeout Solaris DDI 186 .It Sy qunbufcall Solaris DDI 187 .It Sy quntimeout Solaris DDI 188 .It Sy qwait Solaris DDI 189 .It Sy qwait_sig Solaris DDI 190 .It Sy qwriter Solaris DDI 191 .It Sy RD DDI/DKI 192 .It Sy rmvb DDI/DKI 193 .It Sy rmvq DDI/DKI 194 .It Sy SAMESTR DDI/DKI 195 .It Sy strlog DDI/DKI 196 .It Sy strqget DDI/DKI 197 .It Sy strqset DDI/DKI 198 .It Sy testb DDI/DKI 199 .It Sy unbufcall DDI/DKI 200 .It Sy unfreezestr DDI/DKI 201 .It Sy unlinkb DDI/DKI 202 .It Sy WR DDI/DKI 203 .El 204 .Lp 205 The following table summarizes the functions not specific to STREAMS. 206 .Bl -column usb_pipe_get_max_bulk_transfer_size 207 .It Sy Routine Sy Type 208 .It Sy ASSERT DDI/DKI 209 .It Sy anocancel Solaris DDI 210 .It Sy aphysio Solaris DDI 211 .It Sy atomic_add DDI/DKI 212 .It Sy atomic_and DDI/DKI 213 .It Sy atomic_bits DDI/DKI 214 .It Sy atomic_cas DDI/DKI 215 .It Sy atomic_dec DDI/DKI 216 .It Sy atomic_inc DDI/DKI 217 .It Sy atomic_ops DDI/DKI 218 .It Sy atomic_or DDI/DKI 219 .It Sy atomic_swap DDI/DKI 220 .It Sy bcmp DDI/DKI 221 .It Sy bcopy DDI/DKI 222 .It Sy bioclone Solaris DDI 223 .It Sy biodone DDI/DKI 224 .It Sy biofini Solaris DDI 225 .It Sy bioinit Solaris DDI 226 .It Sy biomodified Solaris DDI 227 .It Sy biosize Solaris DDI 228 .It Sy bioerror Solaris DDI 229 .It Sy bioreset Solaris DDI 230 .It Sy biowait DDI/DKI 231 .It Sy bp_copyin DDI/DKI 232 .It Sy bp_copyout DDI/DKI 233 .It Sy bp_mapin DDI/DKI 234 .It Sy bp_mapout DDI/DKI 235 .It Sy btop DDI/DKI 236 .It Sy btopr DDI/DKI 237 .It Sy bzero DDI/DKI 238 .It Sy cmn_err DDI/DKI 239 .It Sy condvar Solaris DDI 240 .It Sy copyin DDI/DKI 241 .It Sy copyout DDI/DKI 242 .It Sy cv_broadcast Solaris DDI 243 .It Sy cv_destroy Solaris DDI 244 .It Sy cv_init Solaris DDI 245 .It Sy cv_signal Solaris DDI 246 .It Sy cv_timedwait Solaris DDI 247 .It Sy cv_wait Solaris DDI 248 .It Sy cv_wait_sig Solaris DDI 249 .It Sy ddi_add_event_handler Solaris DDI 250 .It Sy ddi_add_intr Solaris DDI 251 .It Sy ddi_add_softintr Solaris DDI 252 .It Sy ddi_binding_name Solaris DDI 253 .It Sy ddi_btop Solaris DDI 254 .It Sy ddi_btopr Solaris DDI 255 .It Sy ddi_can_receive_sig Solaris DDI 256 .It Sy ddi_check_acc_handle Solaris DDI 257 .It Sy ddi_copyin Solaris DDI 258 .It Sy ddi_copyout Solaris DDI 259 .It Sy ddi_create_minor_node Solaris DDI 260 .It Sy ddi_cred Solaris DDI 261 .It Sy ddi_dev_is_sid Solaris DDI 262 .It Sy ddi_dev_nintrs Solaris DDI 263 .It Sy ddi_dev_nregs Solaris DDI 264 .It Sy ddi_dev_regsize Solaris DDI 265 .It Sy ddi_device_copy Solaris DDI 266 .It Sy ddi_device_zero Solaris DDI 267 .It Sy ddi_devmap_segmap Solaris DDI 268 .It Sy ddi_dma_addr_bind_handle Solaris DDI 269 .It Sy ddi_dma_alloc_handle Solaris DDI 270 .It Sy ddi_dma_buf_bind_handle Solaris DDI 271 .It Sy ddi_dma_burstsizes Solaris DDI 272 .It Sy ddi_dma_free_handle Solaris DDI 273 .It Sy ddi_dma_getwin Solaris DDI 274 .It Sy ddi_dma_mem_alloc Solaris DDI 275 .It Sy ddi_dma_mem_free Solaris DDI 276 .It Sy ddi_dma_nextcookie Solaris DDI 277 .It Sy ddi_dma_numwin Solaris DDI 278 .It Sy ddi_dma_set_sbus64 Solaris DDI 279 .It Sy ddi_dma_sync Solaris DDI 280 .It Sy ddi_dma_unbind_handle Solaris DDI 281 .It Sy ddi_dmae Solaris x86 DDI 282 .It Sy ddi_dmae_1stparty Solaris x86 DDI 283 .It Sy ddi_dmae_alloc Solaris x86 DDI 284 .It Sy ddi_dmae_disable Solaris x86 DDI 285 .It Sy ddi_dmae_enable Solaris x86 DDI 286 .It Sy ddi_dmae_getattr Solaris x86 DDI 287 .It Sy ddi_dmae_getcnt Solaris x86 DDI 288 .It Sy ddi_dmae_getlim Solaris x86 DDI 289 .It Sy ddi_dmae_prog Solaris x86 DDI 290 .It Sy ddi_dmae_release Solaris x86 DDI 291 .It Sy ddi_dmae_stop Solaris x86 DDI 292 .It Sy ddi_driver_major Solaris DDI 293 .It Sy ddi_driver_name Solaris DDI 294 .It Sy ddi_enter_critical Solaris DDI 295 .It Sy ddi_exit_critical Solaris DDI 296 .It Sy ddi_ffs Solaris DDI 297 .It Sy ddi_fls Solaris DDI 298 .It Sy ddi_fm_acc_err_clear Solaris DDI 299 .It Sy ddi_fm_acc_err_get Solaris DDI 300 .It Sy ddi_fm_ereport_post Solaris DDI 301 .It Sy ddi_fm_handler_register Solaris DDI 302 .It Sy ddi_fm_init Solaris DDI 303 .It Sy ddi_fm_service_impact Solaris DDI 304 .It Sy ddi_get16 Solaris DDI 305 .It Sy ddi_get32 Solaris DDI 306 .It Sy ddi_get64 Solaris DDI 307 .It Sy ddi_get8 Solaris DDI 308 .It Sy ddi_get_cred Solaris DDI 309 .It Sy ddi_get_devstate Solaris DDI 310 .It Sy ddi_get_driver_private Solaris DDI 311 .It Sy ddi_get_eventcookie Solaris DDI 312 .It Sy ddi_get_iblock_cookie Solaris DDI 313 .It Sy ddi_get_iminor Solaris DDI 314 .It Sy ddi_get_instance Solaris DDI 315 .It Sy ddi_get_kt_did Solaris DDI 316 .It Sy ddi_get_lbolt Solaris DDI 317 .It Sy ddi_get_name Solaris DDI 318 .It Sy ddi_get_parent Solaris DDI 319 .It Sy ddi_get_pid Solaris DDI 320 .It Sy ddi_get_soft_iblock_cookie Solaris DDI 321 .It Sy ddi_get_soft_state Solaris DDI 322 .It Sy ddi_getb Solaris DDI 323 .It Sy ddi_getl Solaris DDI 324 .It Sy ddi_getll Solaris DDI 325 .It Sy ddi_getlongprop Solaris DDI 326 .It Sy ddi_getlongprop_buf Solaris DDI 327 .It Sy ddi_getprop Solaris DDI 328 .It Sy ddi_getproplen Solaris DDI 329 .It Sy ddi_getw Solaris DDI 330 .It Sy ddi_intr_add_handler Solaris DDI 331 .It Sy ddi_intr_add_softint Solaris DDI 332 .It Sy ddi_intr_alloc Solaris DDI 333 .It Sy ddi_intr_block_disable Solaris DDI 334 .It Sy ddi_intr_block_enable Solaris DDI 335 .It Sy ddi_intr_clr_mask Solaris DDI 336 .It Sy ddi_intr_dup_handler Solaris DDI 337 .It Sy ddi_intr_disable Solaris DDI 338 .It Sy ddi_intr_enable Solaris DDI 339 .It Sy ddi_intr_free Solaris DDI 340 .It Sy ddi_intr_get_cap Solaris DDI 341 .It Sy ddi_intr_get_hilevel_pri Solaris DDI 342 .It Sy ddi_intr_get_navail Solaris DDI 343 .It Sy ddi_intr_get_nintrs Solaris DDI 344 .It Sy ddi_intr_get_pending Solaris DDI 345 .It Sy ddi_intr_get_pri Solaris DDI 346 .It Sy ddi_intr_get_softint_pri Solaris DDI 347 .It Sy ddi_intr_get_supported_types Solaris DDI 348 .It Sy ddi_intr_remove_handler Solaris DDI 349 .It Sy ddi_intr_remove_softint Solaris DDI 350 .It Sy ddi_intr_set_cap Solaris DDI 351 .It Sy ddi_intr_set_mask Solaris DDI 352 .It Sy ddi_intr_set_pri Solaris DDI 353 .It Sy ddi_intr_set_softint_pri Solaris DDI 354 .It Sy ddi_intr_trigger_softint Solaris DDI 355 .It Sy ddi_io_get16 Solaris DDI 356 .It Sy ddi_io_get32 Solaris DDI 357 .It Sy ddi_io_get8 Solaris DDI 358 .It Sy ddi_io_getb Solaris DDI 359 .It Sy ddi_io_getl Solaris DDI 360 .It Sy ddi_io_getw Solaris DDI 361 .It Sy ddi_io_put16 Solaris DDI 362 .It Sy ddi_io_put32 Solaris DDI 363 .It Sy ddi_io_put8 Solaris DDI 364 .It Sy ddi_io_putb Solaris DDI 365 .It Sy ddi_io_putl Solaris DDI 366 .It Sy ddi_io_putw Solaris DDI 367 .It Sy ddi_io_rep_get16 Solaris DDI 368 .It Sy ddi_io_rep_get32 Solaris DDI 369 .It Sy ddi_io_rep_get8 Solaris DDI 370 .It Sy ddi_io_rep_getb Solaris DDI 371 .It Sy ddi_io_rep_getl Solaris DDI 372 .It Sy ddi_io_rep_getw Solaris DDI 373 .It Sy ddi_io_rep_put16 Solaris DDI 374 .It Sy ddi_io_rep_put32 Solaris DDI 375 .It Sy ddi_io_rep_put8 Solaris DDI 376 .It Sy ddi_io_rep_putb Solaris DDI 377 .It Sy ddi_io_rep_putl Solaris DDI 378 .It Sy ddi_io_rep_putw Solaris DDI 379 .It Sy ddi_iomin Solaris DDI 380 .It Sy ddi_log_sysevent Solaris DDI 381 .It Sy ddi_map_regs Solaris DDI 382 .It Sy ddi_mapdev Solaris DDI 383 .It Sy ddi_mapdev_intercept Solaris DDI 384 .It Sy ddi_mapdev_nointercept Solaris DDI 385 .It Sy ddi_mapdev_set_device_acc_attr Solaris DDI 386 .It Sy ddi_mem_get16 Solaris DDI 387 .It Sy ddi_mem_get32 Solaris DDI 388 .It Sy ddi_mem_get64 Solaris DDI 389 .It Sy ddi_mem_get8 Solaris DDI 390 .It Sy ddi_mem_getb Solaris DDI 391 .It Sy ddi_mem_getl Solaris DDI 392 .It Sy ddi_mem_getll Solaris DDI 393 .It Sy ddi_mem_getw Solaris DDI 394 .It Sy ddi_mem_put16 Solaris DDI 395 .It Sy ddi_mem_put32 Solaris DDI 396 .It Sy ddi_mem_put64 Solaris DDI 397 .It Sy ddi_mem_put8 Solaris DDI 398 .It Sy ddi_mem_putb Solaris DDI 399 .It Sy ddi_mem_putl Solaris DDI 400 .It Sy ddi_mem_putll Solaris DDI 401 .It Sy ddi_mem_putw Solaris DDI 402 .It Sy ddi_mem_rep_get16 Solaris DDI 403 .It Sy ddi_mem_rep_get32 Solaris DDI 404 .It Sy ddi_mem_rep_get64 Solaris DDI 405 .It Sy ddi_mem_rep_get8 Solaris DDI 406 .It Sy ddi_mem_rep_getb Solaris DDI 407 .It Sy ddi_mem_rep_getl Solaris DDI 408 .It Sy ddi_mem_rep_getll Solaris DDI 409 .It Sy ddi_mem_rep_getw Solaris DDI 410 .It Sy ddi_mem_rep_put16 Solaris DDI 411 .It Sy ddi_mem_rep_put32 Solaris DDI 412 .It Sy ddi_mem_rep_put64 Solaris DDI 413 .It Sy ddi_mem_rep_put8 Solaris DDI 414 .It Sy ddi_mem_rep_putb Solaris DDI 415 .It Sy ddi_mem_rep_putl Solaris DDI 416 .It Sy ddi_mem_rep_putll Solaris DDI 417 .It Sy ddi_mem_rep_putw Solaris DDI 418 .It Sy ddi_mmap_get_model Solaris DDI 419 .It Sy ddi_model_convert_from Solaris DDI 420 .It Sy ddi_modopen Solaris DDI 421 .It Sy ddi_no_info Solaris DDI 422 .It Sy ddi_node_name Solaris DDI 423 .It Sy ddi_peek16 Solaris DDI 424 .It Sy ddi_peek32 Solaris DDI 425 .It Sy ddi_peek64 Solaris DDI 426 .It Sy ddi_peek8 Solaris DDI 427 .It Sy ddi_peekc Solaris DDI 428 .It Sy ddi_peekd Solaris DDI 429 .It Sy ddi_peekl Solaris DDI 430 .It Sy ddi_peeks Solaris DDI 431 .It Sy ddi_periodic_add Solaris DDI 432 .It Sy ddi_periodic_delete Solaris DDI 433 .It Sy ddi_poke16 Solaris DDI 434 .It Sy ddi_poke32 Solaris DDI 435 .It Sy ddi_poke64 Solaris DDI 436 .It Sy ddi_poke8 Solaris DDI 437 .It Sy ddi_pokec Solaris DDI 438 .It Sy ddi_poked Solaris DDI 439 .It Sy ddi_pokel Solaris DDI 440 .It Sy ddi_pokes Solaris DDI 441 .It Sy ddi_prop_create Solaris DDI 442 .It Sy ddi_prop_exists Solaris DDI 443 .It Sy ddi_prop_free Solaris DDI 444 .It Sy ddi_prop_get_int Solaris DDI 445 .It Sy ddi_prop_lookup Solaris DDI 446 .It Sy ddi_prop_lookup_byte_array Solaris DDI 447 .It Sy ddi_prop_lookup_int_array Solaris DDI 448 .It Sy ddi_prop_lookup_string Solaris DDI 449 .It Sy ddi_prop_lookup_string_array Solaris DDI 450 .It Sy ddi_prop_modify Solaris DDI 451 .It Sy ddi_prop_op Solaris DDI 452 .It Sy ddi_prop_remove Solaris DDI 453 .It Sy ddi_prop_remove_all Solaris DDI 454 .It Sy ddi_prop_undefine Solaris DDI 455 .It Sy ddi_prop_update Solaris DDI 456 .It Sy ddi_prop_update_byte_array Solaris DDI 457 .It Sy ddi_prop_update_int Solaris DDI 458 .It Sy ddi_prop_update_int_array Solaris DDI 459 .It Sy ddi_prop_update_string Solaris DDI 460 .It Sy ddi_prop_update_string_array Solaris DDI 461 .It Sy ddi_ptob Solaris DDI 462 .It Sy ddi_put16 Solaris DDI 463 .It Sy ddi_put32 Solaris DDI 464 .It Sy ddi_put64 Solaris DDI 465 .It Sy ddi_put8 Solaris DDI 466 .It Sy ddi_putb Solaris DDI 467 .It Sy ddi_putl Solaris DDI 468 .It Sy ddi_putll Solaris DDI 469 .It Sy ddi_putw Solaris DDI 470 .It Sy ddi_regs_map_free Solaris DDI 471 .It Sy ddi_regs_map_setup Solaris DDI 472 .It Sy ddi_remove_event_handler Solaris DDI 473 .It Sy ddi_remove_intr Solaris DDI 474 .It Sy ddi_remove_minor_node Solaris DDI 475 .It Sy ddi_remove_softintr Solaris DDI 476 .It Sy ddi_removing_power Solaris DDI 477 .It Sy ddi_rep_get16 Solaris DDI 478 .It Sy ddi_rep_get32 Solaris DDI 479 .It Sy ddi_rep_get64 Solaris DDI 480 .It Sy ddi_rep_get8 Solaris DDI 481 .It Sy ddi_rep_getb Solaris DDI 482 .It Sy ddi_rep_getl Solaris DDI 483 .It Sy ddi_rep_getll Solaris DDI 484 .It Sy ddi_rep_getw Solaris DDI 485 .It Sy ddi_rep_put16 Solaris DDI 486 .It Sy ddi_rep_put32 Solaris DDI 487 .It Sy ddi_rep_put64 Solaris DDI 488 .It Sy ddi_rep_put8 Solaris DDI 489 .It Sy ddi_rep_putb Solaris DDI 490 .It Sy ddi_rep_putl Solaris DDI 491 .It Sy ddi_rep_putll Solaris DDI 492 .It Sy ddi_rep_putw Solaris DDI 493 .It Sy ddi_report_dev Solaris DDI 494 .It Sy ddi_root_node Solaris DDI 495 .It Sy ddi_segmap Solaris DDI 496 .It Sy ddi_segmap_setup Solaris DDI 497 .It Sy ddi_set_driver_private Solaris DDI 498 .It Sy ddi_slaveonly Solaris DDI 499 .It Sy ddi_soft_state Solaris DDI 500 .It Sy ddi_soft_state_fini Solaris DDI 501 .It Sy ddi_soft_state_free Solaris DDI 502 .It Sy ddi_soft_state_init Solaris DDI 503 .It Sy ddi_soft_state_zalloc Solaris DDI 504 .It Sy ddi_strlol Solaris DDI 505 .It Sy ddi_strloul Solaris DDI 506 .It Sy ddi_trigger_softintr Solaris DDI 507 .It Sy ddi_umem_alloc Solaris DDI 508 .It Sy ddi_umem_free Solaris DDI 509 .It Sy ddi_umem_iosetup Solaris DDI 510 .It Sy ddi_umem_lock Solaris DDI 511 .It Sy ddi_unmap_regs Solaris DDI 512 .It Sy delay DDI/DKI 513 .It Sy devmap_default_access Solaris DDI 514 .It Sy devmap_devmem_setup Solaris DDI 515 .It Sy devmap_do_ctxmgt Solaris DDI 516 .It Sy devmap_load Solaris DDI 517 .It Sy devmap_set_ctx_timeout Solaris DDI 518 .It Sy devmap_setup Solaris DDI 519 .It Sy devmap_umem_setup Solaris DDI 520 .It Sy devmap_unload Solaris DDI 521 .It Sy disksort Solaris DDI 522 .It Sy dlbindack Solaris DDI 523 .It Sy drv_getparm DDI/DKI 524 .It Sy drv_hztousec DDI/DKI 525 .It Sy drv_priv DDI/DKI 526 .It Sy drv_usectohz DDI/DKI 527 .It Sy drv_usecwait DDI/DKI 528 .It Sy free_pktiopb Solaris DDI 529 .It Sy freerbuf DDI/DKI 530 .It Sy get_pktiopb Solaris DDI 531 .It Sy geterror DDI/DKI 532 .It Sy gethrtime DDI/DKI 533 .It Sy getmajor DDI/DKI 534 .It Sy getminor DDI/DKI 535 .It Sy getrbuf DDI/DKI 536 .It Sy gld Solaris DDI 537 .It Sy hat_getkpfnum DKI only 538 .It Sy id32_alloc Solaris DDI 539 .It Sy inb Solaris x86 DDI 540 .It Sy inl Solaris x86 DDI 541 .It Sy inw Solaris x86 DDI 542 .It Sy kiconv Solaris DDI 543 .It Sy kiconv_close Solaris DDI 544 .It Sy kiconv_open Solaris DDI 545 .It Sy kiconvstr Solaris DDI 546 .It Sy kmem_alloc DDI/DKI 547 .It Sy kmem_cache_create Solaris DDI 548 .It Sy kmem_free DDI/DKI 549 .It Sy kmem_zalloc DDI/DKI 550 .It Sy kstat_create Solaris DDI 551 .It Sy kstat_delete Solaris DDI 552 .It Sy kstat_install Solaris DDI 553 .It Sy kstat_named_init Solaris DDI 554 .It Sy kstat_queue Solaris DDI 555 .It Sy kstat_runq_back_to_waitq Solaris DDI 556 .It Sy kstat_runq_enter Solaris DDI 557 .It Sy kstat_runq_exit Solaris DDI 558 .It Sy kstat_waitq_enter Solaris DDI 559 .It Sy kstat_waitq_exit Solaris DDI 560 .It Sy kstat_waitq_to_runq Solaris DDI 561 .It Sy ldi_add_event_handler Solaris DDI 562 .It Sy ldi_aread Solaris DDI 563 .It Sy ldi_devmap Solaris DDI 564 .It Sy ldi_dump Solaris DDI 565 .It Sy ldi_ev_finalize Solaris DDI 566 .It Sy ldi_ev_get_cookie Solaris DDI 567 .It Sy ldi_ev_get_type Solaris DDI 568 .It Sy ldi_ev_notify Solaris DDI 569 .It Sy ldi_ev_register_callbacks Solaris DDI 570 .It Sy ldi_ev_remove_callbacks Solaris DDI 571 .It Sy ldi_get_dev Solaris DDI 572 .It Sy ldi_get_eventcookie Solaris DDI 573 .It Sy ldi_get_size Solaris DDI 574 .It Sy ldi_ident_from_dev Solaris DDI 575 .It Sy ldi_ioctl Solaris DDI 576 .It Sy ldi_open_by_dev Solaris DDI 577 .It Sy ldi_poll Solaris DDI 578 .It Sy ldi_prop_exists Solaris DDI 579 .It Sy ldi_prop_get_int Solaris DDI 580 .It Sy ldi_prop_get_lookup_int_array Solaris DDI 581 .It Sy ldi_putmsg Solaris DDI 582 .It Sy ldi_read Solaris DDI 583 .It Sy ldi_remove_event_handler Solaris DDI 584 .It Sy ldi_strategy Solaris DDI 585 .It Sy makecom_g0 Solaris DDI 586 .It Sy makecom_g0_s Solaris DDI 587 .It Sy makecom_g1 Solaris DDI 588 .It Sy makecom_g5 Solaris DDI 589 .It Sy makedevice DDI/DKI 590 .It Sy max DDI/DKI 591 .It Sy membar_ops Solaris DDI 592 .It Sy memchr Solaris DDI 593 .It Sy min DDI/DKI 594 .It Sy minphys Solaris DDI 595 .It Sy mod_info Solaris DDI 596 .It Sy mod_install Solaris DDI 597 .It Sy mod_remove Solaris DDI 598 .It Sy mutex_destroy Solaris DDI 599 .It Sy mutex_enter Solaris DDI 600 .It Sy mutex_exit Solaris DDI 601 .It Sy mutex_init Solaris DDI 602 .It Sy mutex_owned Solaris DDI 603 .It Sy mutex_tryenter Solaris DDI 604 .It Sy nochpoll Solaris DDI 605 .It Sy nodev DDI/DKI 606 .It Sy nulldev DDI/DKI 607 .It Sy numtos Solaris DDI 608 .It Sy nvlist_add_boolean Solaris DDI 609 .It Sy nvlist_alloc Solaris DDI 610 .It Sy nvlist_lookup_boolean Solaris DDI 611 .It Sy nvlist_lookup_nvpair Solaris DDI 612 .It Sy nvlist_next_nvpair Solaris DDI 613 .It Sy nvlist_remove Solaris DDI 614 .It Sy nvlist_value_byte Solaris DDI 615 .It Sy outb Solaris x86 DDI 616 .It Sy outl Solaris x86 DDI 617 .It Sy outw Solaris x86 DDI 618 .It Sy pci_config_get16 Solaris DDI 619 .It Sy pci_config_get32 Solaris DDI 620 .It Sy pci_config_get64 Solaris DDI 621 .It Sy pci_config_get8 Solaris DDI 622 .It Sy pci_config_getb Solaris DDI 623 .It Sy pci_config_getl Solaris DDI 624 .It Sy pci_config_getw Solaris DDI 625 .It Sy pci_config_put16 Solaris DDI 626 .It Sy pci_config_put32 Solaris DDI 627 .It Sy pci_config_put64 Solaris DDI 628 .It Sy pci_config_put8 Solaris DDI 629 .It Sy pci_config_putb Solaris DDI 630 .It Sy pci_config_putl Solaris DDI 631 .It Sy pci_config_putw Solaris DDI 632 .It Sy pci_config_setup Solaris DDI 633 .It Sy pci_config_teardown Solaris DDI 634 .It Sy pci_ereport_setup Solaris DDI 635 .It Sy pci_report_pmcap Solaris DDI 636 .It Sy pci_save_config_regs Solaris DDI 637 .It Sy physio Solaris DDI 638 .It Sy pm_busy_component Solaris DDI 639 .It Sy pm_power_has_changed Solaris DDI 640 .It Sy pm_raise_power Solaris DDI 641 .It Sy pm_trans_check Solaris DDI 642 .It Sy pollwakeup DDI/DKI 643 .It Sy pci_config_teardown Solaris DDI 644 .It Sy pci_config_teardown Solaris DDI 645 .It Sy priv_getbyname Solaris DDI 646 .It Sy priv_policy Solaris DDI 647 .It Sy proc_signal Solaris DDI 648 .It Sy proc_unref Solaris DDI 649 .It Sy ptob DDI/DKI 650 .It Sy repinsb Solaris x86 DDI 651 .It Sy repinsd Solaris x86 DDI 652 .It Sy repinsw Solaris x86 DDI 653 .It Sy repoutsb Solaris x86 DDI 654 .It Sy repoutsd Solaris x86 DDI 655 .It Sy repoutsw Solaris x86 DDI 656 .It Sy rmalloc DDI/DKI 657 .It Sy rmalloc_wait DDI/DKI 658 .It Sy rmallocmap DDI/DKI 659 .It Sy rmallocmap_wait DDI/DKI 660 .It Sy rmfree DDI/DKI 661 .It Sy rmfreemap DDI/DKI 662 .It Sy rw_destroy Solaris DDI 663 .It Sy rw_downgrade Solaris DDI 664 .It Sy rw_enter Solaris DDI 665 .It Sy rw_exit Solaris DDI 666 .It Sy rw_init Solaris DDI 667 .It Sy rw_read_locked Solaris DDI 668 .It Sy rw_tryenter Solaris DDI 669 .It Sy rw_tryupgrade Solaris DDI 670 .It Sy scsi_abort Solaris DDI 671 .It Sy scsi_alloc_consistent_buf Solaris DDI 672 .It Sy scsi_cname Solaris DDI 673 .It Sy scsi_destroy_pkt Solaris DDI 674 .It Sy scsi_dmafree Solaris DDI 675 .It Sy scsi_dmaget Solaris DDI 676 .It Sy scsi_dname Solaris DDI 677 .It Sy scsi_errmsg Solaris DDI 678 .It Sy scsi_ext_sense_fields Solaris DDI 679 .It Sy scsi_find_sense_descr Solaris DDI 680 .It Sy scsi_free_consistent_buf Solaris DDI 681 .It Sy scsi_get_device_type_scsi_options Solaris DDI 682 .It Sy scsi_get_device_type_string Solaris DDI 683 .It Sy scsi_hba_attach_setup Solaris DDI 684 .It Sy scsi_hba_detach Solaris DDI 685 .It Sy scsi_hba_fini Solaris DDI 686 .It Sy scsi_hba_init Solaris DDI 687 .It Sy scsi_hba_lookup_capstr Solaris DDI 688 .It Sy scsi_hba_pkt_alloc Solaris DDI 689 .It Sy scsi_hba_pkt_free Solaris DDI 690 .It Sy scsi_hba_probe Solaris DDI 691 .It Sy scsi_hba_tran_alloc Solaris DDI 692 .It Sy scsi_hba_tran_free Solaris DDI 693 .It Sy scsi_ifgetcap Solaris DDI 694 .It Sy scsi_ifsetcap Solaris DDI 695 .It Sy scsi_init_pkt Solaris DDI 696 .It Sy scsi_log Solaris DDI 697 .It Sy scsi_mname Solaris DDI 698 .It Sy scsi_pktalloc Solaris DDI 699 .It Sy scsi_pktfree Solaris DDI 700 .It Sy scsi_poll Solaris DDI 701 .It Sy scsi_probe Solaris DDI 702 .It Sy scsi_resalloc Solaris DDI 703 .It Sy scsi_reset Solaris DDI 704 .It Sy scsi_reset_notify Solaris DDI 705 .It Sy scsi_resfree Solaris DDI 706 .It Sy scsi_rname Solaris DDI 707 .It Sy scsi_sense_key Solaris DDI 708 .It Sy scsi_setup_cdb Solaris DDI 709 .It Sy scsi_slave Solaris DDI 710 .It Sy scsi_sname Solaris DDI 711 .It Sy scsi_sync_pkt Solaris DDI 712 .It Sy scsi_transport Solaris DDI 713 .It Sy scsi_unprobe Solaris DDI 714 .It Sy scsi_unslave Solaris DDI 715 .It Sy scsi_validate_sense Solaris DDI 716 .It Sy scsi_vu_errmsg Solaris DDI 717 .It Sy sema_destroy Solaris DDI 718 .It Sy sema_init Solaris DDI 719 .It Sy sema_p Solaris DDI 720 .It Sy sema_p_sig Solaris DDI 721 .It Sy sema_tryp Solaris DDI 722 .It Sy sema_v Solaris DDI 723 .It Sy sprintf Solaris DDI 724 .It Sy stoi Solaris DDI 725 .It Sy strchr Solaris DDI 726 .It Sy strcmp Solaris DDI 727 .It Sy strcpy Solaris DDI 728 .It Sy strlen Solaris DDI 729 .It Sy strncmp Solaris DDI 730 .It Sy strncpy Solaris DDI 731 .It Sy STRUCT_DECL Solaris DDI 732 .It Sy swab DDI/DKI 733 .It Sy taskq Solaris DDI 734 .It Sy timeout DDI/DKI 735 .It Sy u8_strcmp Solaris DDI 736 .It Sy u8_textprep_str Solaris DDI 737 .It Sy u8_validate Solaris DDI 738 .It Sy uconv_u16tou32 Solaris DDI 739 .It Sy uiomove DDI/DKI 740 .It Sy untimeout DDI/DKI 741 .It Sy ureadc DDI/DKI 742 .It Sy usb_alloc_request Solaris DDI 743 .It Sy usb_client_attach Solaris DDI 744 .It Sy usb_clr_feature Solaris DDI 745 .It Sy usb_create_pm_components Solaris DDI 746 .It Sy usb_get_addr Solaris DDI 747 .It Sy usb_get_alt_if Solaris DDI 748 .It Sy usb_get_cfg Solaris DDI 749 .It Sy usb_get_current_frame_number Solaris DDI 750 .It Sy usb_get_dev_data Solaris DDI 751 .It Sy usb_get_max_pkts_per_ioc_request Solaris DDI 752 .It Sy usb_get_status Solaris DDI 753 .It Sy usb_get_string_desc Solaris DDI 754 .It Sy usb_handle_remote_wakeup Solaris DDI 755 .It Sy usb_lookup_ep_data Solaris DDI 756 .It Sy usb_parse_data Solaris DDI 757 .It Sy usb_pipe_bulk_xfer Solaris DDI 758 .It Sy usb_pipe_close Solaris DDI 759 .It Sy usb_pipe_ctrl_xfer Solaris DDI 760 .It Sy usb_pipe_drain_reqs Solaris DDI 761 .It Sy usb_pipe_get_max_bulk_transfer_size Solaris DDI 762 .It Sy usb_pipe_get_state Solaris DDI 763 .It Sy usb_pipe_intr_xfer Solaris DDI 764 .It Sy usb_pipe_isoc_xfer Solaris DDI 765 .It Sy usb_pipe_open Solaris DDI 766 .It Sy usb_pipe_reset Solaris DDI 767 .It Sy usb_pipe_set_private Solaris DDI 768 .It Sy usb_register_hotplug_cbs Solaris DDI 769 .It Sy usb_reset_device Solaris DDI 770 .It Sy uwritec DDI/DKI 771 .It Sy va_arg Solaris DDI 772 .It Sy va_end Solaris DDI 773 .It Sy va_start Solaris DDI 774 .It Sy vcmn_err DDI/DKI 775 .It Sy vsprintf Solaris DDI 776 .El 777 .Sh SEE ALSO 778 .Xr Intro 9E , 779 .Xr mutex 9F