JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
man pages section 9: DDI and DKI Properties and Data Structures     Oracle Solaris 11 Information Library
search filter icon
search icon

Document Information

Preface

Introduction

Data Structures for Drivers

aio_req(9S)

audio_engine_ops(9S)

blksize(9P)

buf(9S)

cb_ops(9S)

copyreq(9S)

copyresp(9S)

datab(9S)

dblk(9S)

ddi_device_acc_attr(9S)

ddi_dma_attr(9S)

ddi_dma_cookie(9S)

ddi_dmae_req(9S)

ddi_dma_lim(9S)

ddi_dma_lim_sparc(9S)

ddi_dma_lim_x86(9S)

ddi_dma_req(9S)

ddi_fm_error(9S)

ddi-forceattach(9P)

ddi_idevice_cookie(9S)

ddi-no-autodetach(9P)

device-blksize(9P)

device-nblocks(9P)

devmap_callback_ctl(9S)

dev_ops(9S)

fmodsw(9S)

free_rtn(9S)

gld_mac_info(9S)

gld_stats(9S)

hook_nic_event(9S)

hook_pkt_event(9S)

hook_t(9S)

inquiry-device-type(9P)

inquiry-product-id(9P)

inquiry-revision-id(9P)

inquiry-serial-no(9P)

inquiry-vendor-id(9P)

iocblk(9S)

iovec(9S)

kstat(9S)

kstat_intr(9S)

kstat_io(9S)

kstat_named(9S)

linkblk(9S)

lso_basic_tcp_ipv4(9S)

mac_callbacks(9S)

mac_capab_lso(9S)

mac_capab_rings(9S)

mac_group_info(9S)

mac_register(9S)

mac_ring_info(9S)

mblk(9S)

modldrv(9S)

modlinkage(9S)

modlmisc(9S)

modlstrmod(9S)

module_info(9S)

msgb(9S)

Nblock(9P)

net_inject_t(9S)

net_instance_t(9S)

no-involuntary-power-cycles(9P)

pm(9P)

pm-components(9P)

qband(9S)

qinit(9S)

queclass(9S)

queue(9S)

removable-media(9P)

scsi_address(9S)

scsi_arq_status(9S)

scsi_asc_key_strings(9S)

scsi_device(9S)

scsi_extended_sense(9S)

scsi_hba_tran(9S)

scsi_inquiry(9S)

scsi_pkt(9S)

scsi_status(9S)

size(9P)

streamtab(9S)

stroptions(9S)

tuple(9S)

uio(9S)

usb_bulk_request(9S)

usb_callback_flags(9S)

usb_cfg_descr(9S)

usb_client_dev_data(9S)

usb_completion_reason(9S)

usb_ctrl_request(9S)

usb_dev_descr(9S)

usb_dev_qlf_descr(9S)

usb_ep_descr(9S)

usb_if_descr(9S)

usb_intr_request(9S)

usb_isoc_request(9S)

usb_other_speed_cfg_descr(9S)

usb_request_attributes(9S)

usb_string_descr(9S)

audio_engine_ops

- audio engine operations vector

Synopsis

#include <sys/audio/audio_driver.h>

Interface Level

Solaris DDI specific (Solaris DDI)

Description

An audio_engine_ops structure defines vectors that an audio driver exports to the Sun audio framework.

One such vector is used for each DMA or PIO engine (sometimes referred to as a “stream”) supported on the device.

The audio framework provides the following synchronization guarantees for audio engines:

Each entry point receives as its first argument the driver private state that was registered with audio_engine_set_private(9F).

Structure Members

int         audio_engine_version;        /* version number */
int         (*audio_engine_open)();      /* open engine */
void        (*audio_engine_close)();     /* close engine */
int         (*audio_engine_start)();     /* start engine */
void        (*audio_engine_stop)();      /* stop engine */
uint64_t    (*audio_engine_count)();     /* get frame count */
int         (*audio_engine_format)();    /* get format */
int         (*audio_engine_channels)();  /* get num channels */
int         (*audio_engine_rate)();      /* get sample rate */
void        (*audio_engine_sync)();      /* dma cache sync */
uint_t      (*audio_engine_qlen)();      /* get hw fifo len */
void        (*audio_engine_chinfo)();    /* channel cfg info */
uint_t      (*audio_engine_playahead)(); /* play ahead frames */
audio_engine_version

The version of the engine interface. Drivers must supply AUDIO_ENGINE_VERSION.

audio_engine_open

Function entry that opens the engine and initializes hardware and resources.

audio_engine_close

Function entry that closes the engine and possibly releases any resources.

audio_engine_start

Function entry to start audio data transfer.

audio_engine_stop

Function entry to stop audio data transfer.

audio_engine_count

Function entry to return engine's frame count.

audio_engine_format

Function entry to get the format of the engine.

audio_engine_channels

Function entry to get the number of channels of the engine.

audio_engine_rate

Function entry to get the sample rate of the engine.

audio_engine_sync

Function entry to synchronize the DMA cache for the buffer associated with the engine.

audio_engine_qlen

Function entry to determine the on-device FIFO len for the engine.

audio_engine_chinfo

Function entry to determine number and layout channels for device.

audio_engine_playahead

Function entry to determine minimum number of frames that should be queued to the engine.

Attributes

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Interface Stability
Committed

See Also

attributes(5), audio(7D), audio_engine_channels(9E), audio_engine_chinfo(9E), audio_engine_count(9E), audio_engine_format(9E), audio_engine_open(9E), audio_engine_playahead(9E), audio_engine_qlen(9E), audio_engine_rate(9E), audio_engine_start(9E), audio_engine_sync(9E), audio_dev_add_engine(9F), audio_dev_suspend(9F), audio_engine_alloc(9F), audio_engine_set_private(9F)