.\" This manpage has been automatically generated by docbook2man
.\" from a DocBook document. This tool can be found at:
.\"
.\" Please send any bug reports, improvements, comments, patches,
.\" etc. to Steve Cheng .
.TH "SND_AC97_MODEM" "" "06 October 2005" "" ""
.SH NAME
snd_ac97_modem \- create an MC97 codec component
.SH SYNOPSIS
"SYNOPSIS"
.sp
\fB
.sp
int snd_ac97_modem (snd_card_t * \fIcard\fB, ac97_t * \fI_ac97\fB, ac97_t ** \fIrac97\fB);
\fR
.SH "ARGUMENTS"
.TP
\fB\fIcard\fB\fR
the card instance
.TP
\fB\fI_ac97\fB\fR
the template of ac97, including index, callbacks and
the private data.
.TP
\fB\fIrac97\fB\fR
the pointer to store the new ac97 instance.
.SH "DESCRIPTION"
.PP
Creates an MC97 codec component. An ac97_t instance is newly
allocated and initialized from the template (_ac97). The codec
is then initialized by the standard procedure.
.PP
The template must include the valid callbacks (at least read and
write), the codec number (num) and address (addr), and the private
data (private_data). The other callbacks, wait and reset, are not
mandatory.
.PP
The clock is set to 48000. If another clock is needed, reset
ac97->clock manually afterwards.
.PP
The ac97 instance is registered as a low-level device, so you don't
have to release it manually.
.PP
The ACs (Audio Codecs only) are only detected but valid. The PCM driver
have to check for ACs using the !\fBac97_is_modem\fR function.
.PP
Returns zero if successful, or a negative error code on failure.