man pages section 9: DDI and DKI Kernel Functions

Exit Print View

Updated: July 2014
 
 

audio_dev_resume(9F)

Name

audio_dev_suspend, audio_dev_resume - suspend or resume an audio device

Synopsis

#include <sys/audio/audio_driver.h>

void audio_dev_suspend(audio_dev_t *adev);
void audio_dev_resume(audio_dev_t *adev);

Parameters

adev

pointer to an audio device allocated with audio_dev_alloc(9F)

Interface Level

Solaris DDI specific (Solaris DDI)

Description

The audio_dev_suspend() function suspends all functions associated with an audio device. The intention is for the audio driver to call this as the first part of its handling for DDI_SUSPEND in detach(9E).

The audio_dev_resume() function resumes functionality associated with the audio device. This function will generally be the last thing executed during the handling for DDI_RESUME in attach(9E).

The framework ensures no entry points associated with the audio device are executing while the device is suspended. Furthermore, the framework guarantees that any engines that may have been running are stopped with audio_engine_stop(9E) before returning from audio_dev_suspend(). Those engines will be restarted using audio_engine_start(9E) by audio_dev_resume().

Any control settings are retrieved during suspend and restored as during resume.

The driver must not hold any locks while calling either of these functions.

Context

These functions may be called from user or kernel context only.

Attributes

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

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Interface Stability
Committed

See also

attributes(5), audio(7D) , attach(9E), audio_engine_start (9E), audio_engine_stop(9E), detach(9E), audio_dev_add_control(9F), audio_dev_alloc(9F)

Writing Device Drivers for Oracle Solaris 11.2