Manual section D3oddi

add_intr_handler - dynamically add interrupt routine handler
add_nmi_handler - register an NMI handler function
all_io - determine if all processors can do device I/O
archtobus - extract bus type from architecture
ASSERT - verify assertion
atomic - quick atomic locks
BatteriesCritical - indicate that battery life is nearly expired
bcopy - copy bytes in kernel space
bdistributed - indicate block driver can have multiprocessor access
brelse - release a block buffer
btoc - convert bytes to memory pages
btoc, ctob - convert between bytes and clicks (memory pages)
bzero - set memory locations to zero
calldebug - invoke current kernel debugger
can_doio - determine if current processor can do device I/O
cdistributed - indicate character driver can have multiprocessor access
clockb - conditionally lock critical section
clockb, cunlockb - conditionally lock and unlock critical sections
clrbuf - zero a block I/O buffer
cmn_err - log and display informational driver messages
copyin - copy bytes from user space to kernel space
copyin, copyout - copy bytes between user and kernel space
copyio - copy bytes between a physical and a virtual address
copyout - copy bytes from kernel space to user space
cpass - returns a character in user write request
cpass, passc - pass a character between user space and the kernel
ctob - convert memory pages to bytes
cunlockb - unlock critical section locked with clockb
db_alloc - allocate contiguous memory for DMA transfer
db_alloc, db_free - allocate and free physically contiguous memory
db_free - releases memory allocated by db_alloc
db_read - transfer data from physical memory to a user address
db_write - transfer data from a user address to contiguous memory
delay - delay process execution for specified time
deverr - print a device error message on the console
disksort - add a block I/O request to a device's queue
DISPLAYED - checks if screen is displayed
dma_alloc - allocate a DMA channel
dma_breakup - size DMA request into 512-byte blocks
dma_enable - begin DMA transfer
dma_param - set up a DMA controller chip for DMA transfer
dma_relse - release previously allocated DMA channel
dma_resid - return the number of bytes not transferred during a DMA request
dma_start - queue DMA request
emajor - extract external major device number
emajor, eminor - extract extended major/minor device numbers
emdupmap - duplicate channel mapping
eminor - extract external minor device number
emunmap - disable mapping on a channel
flushtlb - flush the translation lookaside buffer
freecpages - free memory allocated with getcpages()
fubyte - get a character from user data space
fuword - get one 32-bit word from user data space
get_intr_arg - get value of argument passed to the interrupt routine
getablk - calls geteblk (for backwards compatibility)
getbsflag - test for bootstring value
getbsvalue - get bootstring value
getbsvalue: getbsflag, getbsvalue, getbsword - get configuration information from the bootstring
getbsword - get bootstring words
getc - remove and return a character from a buffer
getc, getcb, getcbp, getcf - read clist buffers
getcb - remove and return a cblock from a buffer
getcbp - remove characters and transfer them to a buffer
getcf - return a pointer to a cblock
getchar - get one character of input during debug
getcpages - allocate physically contiguous memory for DMA operations
getcpages, freecpages - allocate and free physically contiguous memory
geteblk - get a free buffer from the block buffer pool
geteblk, getablk - get a buffer from the block buffer pool
idistributed - dynamically register an interrupt handler
ilockb - short lock on critical code section
ilockb, iunlockb - lock and unlock critical code section and disable interrupts directly
inb - read a byte from a physical I/O address
inb, outb - read a byte from or write a byte to a physical I/O address
ind - read word from physical I/O
ind, outd - read or write a 32-bit word to a physical I/O address
intralloc - get handle for later call to startio(D3oddi)
intralloc, intrallocs - get handle for later call to startio(D3oddi)
intrallocs - get handle for later call to startio(D3oddi)
Intro - introduction to OpenServer kernel functions
inw - read a word from physical I/O address
inw, outw - read or write a 16-bit word from or to a physical I/O address
iodone - signal I/O completion
iomove - move data to/from the user/kernel area
iopolldistributed - register an xxpoll routine as distributed
iowait - wait for I/O completion
ismpx - determine whether this is a multiprocessor configuration
iunlockb - unlock resource locked by ilockb
kmem_alloc - allocate kernel memory
kmem_alloc, kmem_zalloc - allocate kernel memory
kmem_free - free kernel memory
kmem_zalloc - allocate and zero kernel memory
ktop - convert kernel virtual address to physical address (XENIX)
kvtophys - convert kernel virtual address to physical address
ldistributed - register a line discipline as multithreaded
LinePowerFailed - indicate that AC power is interrupted
LinePowerOK - indicate that AC power is okay
lockb - lock critical code section
lockb, unlockb - lock and unlock critical code section for single processor access
lockb5 - lock critical code at spl 5
major - get major device number
major, makedev, minor - return base major, new device number, or extended minor device number
makedev - get major and extended minor device number
memget - allocate contiguous memory at initialization
minor - get extended minor device number
nano_timeout - schedule a routine for future execution (nanosecond precision)
outb - write a byte to a physical I/O address
outd - write value to physical I/O
outw - write a word from to physical I/O address
passc - pass a character to user read request
pci_buspresent - determine the presence of a PCI bus
pci_findclass - find a PCI device given its class code
pci_finddevice - find a PCI device given its vendor and device IDs
pci_read: pci_readbyte, pci_readword, pci_readdword - read data from PCI configuration space
pci_readbyte - read a byte from PCI configuration space
pci_readdword - read a 32-bit (double) word from PCI configuration space
pci_readword - read a word from PCI configuration space
pci_search - search PCI buses for a device matching specified fields
pci_specialcycle - generate a PCI special cycle
pci_transbase - remap I/O base address to a bus specific address
pci_write: pci_writebyte, pci_writeword, pci_writedword - write data to PCI configuration space
pci_writebyte - write a byte to PCI configuration space
pci_writedword - write a 32-bit (double) word to PCI configuration space
pci_writeword - write a word to PCI configuration space
physck - raw I/O for block drivers
physio - raw I/O for block drivers
physio, physck - direct (raw) I/O for block drivers
phystokv - convert kernel virtual address to physical address
phystokv, kvtophys - convert virtual and physical addresses
pio_breakup - break up programmed I/O requests
pr_intr_adderr - output an error message if add_intr_handler(D3oddi) fails
pr_intr_rmerr - output an error message if remove_intr_handler(D3oddi) fails
printcfg - display driver initialization message
printf - print a message on the console
psignal - send signal to a process
ptok - convert physical address to kernel virtual address (XENIX)
putbc - add block to clist
putc - add character to clist
putc, putcb, putcbp, putcf - write to clists
putcb - add characters to clist
putcf - add block to freelist
putchar - print a character on the console
qaddb - quick lock
qaddi - quick lock
qaddl - quick lock
qaddub - quick lock
qaddui - quick lock
qaddul - quick lock
qadduw - quick lock
qaddw - quick lock
qandb - quick lock
qandi - quick lock
qandl - quick lock
qandub - quick lock
qandui - quick lock
qandul - quick lock
qanduw - quick lock
qandw - quick lock
qbtsi - bit test and set
qbtsl - bit test and set
qbtsui - bit test and set
qbtsul - bit test and set
qdecb - quick lock
qdeci - quick lock
qdecl - quick lock
qdecub - quick lock
qdecui - quick lock
qdecul - quick lock
qdecuw - quick lock
qdecw - quick lock
qincb - quick lock
qinci - quick lock
qincl - quick lock
qincub - quick lock
qincui - quick lock
qincul - quick lock
qincuw - quick lock
qincw - quick lock
qorb - quick lock
qori - quick lock
qorl - quick lock
qorub - quick lock
qorui - quick lock
qorul - quick lock
qoruw - quick lock
qorw - quick lock
qsubb - quick lock
qsubi - quick lock
qsubl - quick lock
qsubub - quick lock
qsubui - quick lock
qsubul - quick lock
qsubuw - quick lock
qsubw - quick lock
qxchgb - quick lock
qxchgi - quick lock
qxchgl - quick lock
qxchgub - quick lock
qxchgui - quick lock
qxchgul - quick lock
qxchguw - quick lock
qxchgw - quick lock
qzerob - quick lock
qzeroi - quick lock
qzerol - quick lock
qzeroub - quick lock
qzeroui - quick lock
qzeroul - quick lock
qzerouw - quick lock
qzerow - quick lock
remap_driver_cpu - bind an interrupt service routine to a CPU
remove_intr_handler - dynamically remove interrupt routine handler
remove_nmi_handler - remove an NMI handler function
repins: repinsb, repinsw, repinsd, repoutsb, repoutsw, repoutsd - read and write streams of device data
repinsb - read a stream of bytes
repinsd - read a stream of 32-bit words
repinsw - write a stream of words
repout - write streams of data
repoutsb - write a stream of bytes
repoutsd - write a stream of 32-bit words
repoutsw - write a stream of 16-bit words
run_ld - call line discipline from multithreaded driver
sdistributed - indicate that a STREAMS driver can have multiprocessor access
select: selsuccess, selfailure, selwakeup - kernel routines supporting select(S)
selfailure - support select(S) - process should block
selsuccess - support select(S) - process should not block
selwakeup - support select(S) - awaken process
seterror - set error code in u.u_error
signal - send a signal to a process group
sleep - suspend execution pending occurrence of an event
spl0 - permit all interrupts
spl1 - prevent priority level 1 interrupts
spl2 - prevent priority level 2 interrupts
spl3 - prevent priority level 3 interrupts
spl4 - prevent priority level 4 interrupts
spl5 - prevent interrupts from character devices
spl6 - prevent interrupts from the clock
spl7 - prevent all interrupts
spl: spl0, spl1, spl2, spl3, spl4, spl5, spl6, spl7, splbuf, splcli, splhi, splni, splpp, splstr, spltty, splx - block or permit interrupts
splbuf - prevent interrupts from block device
splcli - prevent interrupts from character list processing
splhi - prevent all interrupts
splni - prevent interrupts from network devices
splpp - prevent interrupts from character parallel ports
splstr - spl5 for use in STREAMS modules
spltty - prevent interrupts from character parallel ports
splx - restore a former interrupt
sptalloc - allocate temporary memory or map a device's memory
sptfree - release memory previously allocated with sptalloc(D3oddi)
startio - run start(D2oddi) routine from another processor
subyte - store a character in user data space
surf: SURFHOOK, SURF_ACTIVE, SURF_ENQUEUE - SURF event logging monitor functions
SURF_ACTIVE - check that a particular SURF module is active
SURF_ENQUEUE - add event_record to SURF modules event list
SURFHOOK - hook SURF monitoring to kernel code
suser - determine if current user is the superuser
suspend - delay running processes
suword - store a 32-bit word in user data space
tc_ctlock - conditionally lock tty structure
tc_ctunlock - release conditional lock on tty structure
tc_tlock - lock tty structure
tc_tlock, tc_tunlock, tc_ctlock, tc_ctunlock - lock and unlock portions of a tty structure
tc_tunlock - unlock tty structure
TICKS - macros for lbolt values
TICKS_BETWEEN - return time interval in ticks between two lbolt times
TICKS_SINCE - return time interval in ticks since an lbolt time
timeout - schedule a routine for future execution (millisecond precision)
timeout, nano_timeout, untimeout - schedule a time to execute a routine
timevalnow - convert system representation of time to timeval format
ttclose - remove access to TTY device
ttin - process characters
ttinit - initialize tty structure for line discipline zero
ttiocom - interpret TTY driver I/O control commands
ttioctl - manipulates contents of terminal buffers
ttopen - open a serial routine
ttout - move data to the output buffer
ttrdchk - check if there are characters to be read from the input queue
ttread - read data from a device
ttselect - ensure that one-byte read can be done without blocking
ttwrite - write data to a device
tty: ttclose, ttin, ttinit, ttopen, ttout, ttread, ttrdchk, ttselect, ttwrite, ttyflush, ttywait, ttioctl - TTY driver routines
ttyflush - release character blocks to the freelist
ttywait - wait for UART to empty of all data
unlockb - unlock critical code section
untimeout - cancel a timeout(D3oddi) request
ups - generic Uninterruptable Power Supply (UPS) driver
UPS - support for third-party Uninterruptable Power Supply drivers
ups_get_pwrdwn - return address of routine to be called at every system shutdown
ups_set_pwrdwn - return address of UPS callback routine
upsstate - global variable for the current state of the UPS
upssw - UPS generic function switch table
vas: vasbind, vasmalloc, vasmapped, vasunbind - virtual address space memory function
vasbind - bind a virtual address to a physical address
vasmalloc - allocate virtual memory
vasmapped - determines if mapping is in place
vasunbind - undo mapping
viddoio - support I/O management for adapter driver
video: DISPLAYED, viddoio, vidinitscreen, vidmap, vidresscreen, vidsavscreen, vidumapinit, vidunmap - support video adapter driver development
vidinitscreen - initialise a multiscreen
vidmap - get a pointer to virtual memory
vidresscreen - restore a multiscreen
vidsavscreen - save a multiscreen
vidumapinit - return a kernel data pointer
vidunmap - unbind virtual memory got by vidumapinit
VM_SLEEP - set sleep priority when waiting for virtual memory allocation
vtop - convert a virtual address to a physical address
wakeup, wakeupn - wake up a sleeping process
wakeupn - wake up a specified number of processes