FreeBSD kernel sound device code
uaudio.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

int uaudio_attach_sub (device_t dev, kobj_class_t mixer_class, kobj_class_t chan_class)
 
int uaudio_detach_sub (device_t dev)
 
void * uaudio_chan_init (struct uaudio_chan *ch, struct snd_dbuf *b, struct pcm_channel *c, int dir)
 
int uaudio_chan_free (struct uaudio_chan *ch)
 
int uaudio_chan_set_param_blocksize (struct uaudio_chan *ch, uint32_t blocksize)
 
int uaudio_chan_set_param_fragments (struct uaudio_chan *ch, uint32_t blocksize, uint32_t blockcount)
 
int uaudio_chan_set_param_speed (struct uaudio_chan *ch, uint32_t speed)
 
int uaudio_chan_getptr (struct uaudio_chan *ch)
 
struct pcmchan_capsuaudio_chan_getcaps (struct uaudio_chan *ch)
 
struct pcmchan_matrixuaudio_chan_getmatrix (struct uaudio_chan *ch, uint32_t format)
 
int uaudio_chan_set_param_format (struct uaudio_chan *ch, uint32_t format)
 
void uaudio_chan_start (struct uaudio_chan *ch)
 
void uaudio_chan_stop (struct uaudio_chan *ch)
 
int uaudio_mixer_init_sub (struct uaudio_softc *, struct snd_mixer *)
 
int uaudio_mixer_uninit_sub (struct uaudio_softc *, struct snd_mixer *)
 
void uaudio_mixer_set (struct uaudio_softc *, struct snd_mixer *, unsigned type, unsigned left, unsigned right)
 
uint32_t uaudio_mixer_setrecsrc (struct uaudio_softc *, struct snd_mixer *, uint32_t src)
 
int uaudio_get_vendor (device_t dev)
 
int uaudio_get_product (device_t dev)
 
int uaudio_get_release (device_t dev)
 

Function Documentation

◆ uaudio_attach_sub()

◆ uaudio_chan_free()

int uaudio_chan_free ( struct uaudio_chan ch)

Definition at line 2663 of file uaudio.c.

References uaudio_chan::buf, free, uaudio_chan::num_alt, UAUDIO_NCHANBUFS, usbd_transfer_unsetup(), and uaudio_chan::xfer.

Referenced by ua_chan_free(), and uaudio_chan_init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ uaudio_chan_getcaps()

struct pcmchan_caps * uaudio_chan_getcaps ( struct uaudio_chan ch)

Definition at line 2725 of file uaudio.c.

References uaudio_chan::pcm_cap.

Referenced by ua_chan_getcaps().

Here is the caller graph for this function:

◆ uaudio_chan_getmatrix()

struct pcmchan_matrix * uaudio_chan_getmatrix ( struct uaudio_chan ch,
uint32_t  format 
)

Definition at line 2762 of file uaudio.c.

References AFMT_CHANNEL, feeder_matrix_format_map(), format, uaudio_chan::priv_sc, uaudio_softc::sc_uq_audio_swap_lr, and uaudio_chan_matrix_swap_2_0.

Referenced by ua_chan_getmatrix().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ uaudio_chan_getptr()

int uaudio_chan_getptr ( struct uaudio_chan ch)

Definition at line 2719 of file uaudio.c.

References uaudio_chan::cur, and uaudio_chan::start.

Referenced by ua_chan_getptr().

Here is the caller graph for this function:

◆ uaudio_chan_init()

void * uaudio_chan_init ( struct uaudio_chan ch,
struct snd_dbuf b,
struct pcm_channel c,
int  dir 
)

◆ uaudio_chan_set_param_blocksize()

int uaudio_chan_set_param_blocksize ( struct uaudio_chan ch,
uint32_t  blocksize 
)

Definition at line 2677 of file uaudio.c.

References uaudio_chan::buf, uaudio_chan::pcm_buf, uaudio_chan::set_alt, sndbuf_setup(), and uaudio_get_buffer_size().

Referenced by ua_chan_setblocksize().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ uaudio_chan_set_param_format()

int uaudio_chan_set_param_format ( struct uaudio_chan ch,
uint32_t  format 
)

Definition at line 2776 of file uaudio.c.

References DPRINTF, and format.

Referenced by ua_chan_setformat().

Here is the caller graph for this function:

◆ uaudio_chan_set_param_fragments()

int uaudio_chan_set_param_fragments ( struct uaudio_chan ch,
uint32_t  blocksize,
uint32_t  blockcount 
)

Definition at line 2685 of file uaudio.c.

Referenced by ua_chan_setfragments().

Here is the caller graph for this function:

◆ uaudio_chan_set_param_speed()

int uaudio_chan_set_param_speed ( struct uaudio_chan ch,
uint32_t  speed 
)

Definition at line 2692 of file uaudio.c.

References DPRINTF, uaudio_chan::num_alt, uaudio_chan::priv_sc, uaudio_chan_alt::sample_rate, uaudio_softc::sc_udev, uaudio_chan::set_alt, speed, uaudio_chan::usb_alt, usb_proc_explore_lock(), and usb_proc_explore_unlock().

Referenced by ua_chan_setspeed().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ uaudio_chan_start()

◆ uaudio_chan_stop()

void uaudio_chan_stop ( struct uaudio_chan ch)

◆ uaudio_detach_sub()

int uaudio_detach_sub ( device_t  dev)

Definition at line 1246 of file uaudio.c.

References dev, error, uaudio_softc_child::mixer_init, mixer_uninit(), uaudio_softc_child::pcm_registered, pcm_unregister(), uaudio_softc::sc_child, uaudio_get_child_index_by_dev(), and usb_pause_mtx().

Referenced by ua_detach(), and uaudio_attach_sub().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ uaudio_get_product()

int uaudio_get_product ( device_t  dev)

◆ uaudio_get_release()

int uaudio_get_release ( device_t  dev)

◆ uaudio_get_vendor()

int uaudio_get_vendor ( device_t  dev)

◆ uaudio_mixer_init_sub()

◆ uaudio_mixer_set()

void uaudio_mixer_set ( struct uaudio_softc sc,
struct snd_mixer m,
unsigned  type,
unsigned  left,
unsigned  right 
)

Definition at line 5445 of file uaudio.c.

References chan, uaudio_mixer_node::ctl, index, left, m, mix_get_dev(), uaudio_mixer_node::nchan, uaudio_mixer_node::next, right, uaudio_softc::sc_mixer_root, type, uaudio_get_child_index_by_dev(), and uaudio_mixer_ctl_set().

Referenced by ua_mixer_set().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ uaudio_mixer_setrecsrc()

uint32_t uaudio_mixer_setrecsrc ( struct uaudio_softc sc,
struct snd_mixer m,
uint32_t  src 
)

◆ uaudio_mixer_uninit_sub()

int uaudio_mixer_uninit_sub ( struct uaudio_softc sc,
struct snd_mixer m 
)

Definition at line 5430 of file uaudio.c.

References DPRINTF, index, m, mix_get_dev(), uaudio_softc_child::mixer_lock, uaudio_softc::sc_child, uaudio_softc::sc_mixer_xfer, uaudio_get_child_index_by_dev(), and usbd_transfer_unsetup().

Referenced by ua_mixer_uninit().

Here is the call graph for this function:
Here is the caller graph for this function: