FreeBSD kernel sound device code
|
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/conf.h>
#include <sys/kernel.h>
#include <sys/malloc.h>
#include <sys/proc.h>
#include <dev/sound/clone.h>
Go to the source code of this file.
Data Structures | |
struct | snd_clone_entry |
struct | snd_clone |
Macros | |
#define | SND_CLONE_ASSERT(...) KASSERT(__VA_ARGS__) |
#define | SND_CLONE_ELAPSED(x, y) |
#define | SND_CLONE_EXPIRED(x, y, z) |
Functions | |
struct snd_clone * | snd_clone_create (int typemask, int maxunit, int deadline, uint32_t flags) |
int | snd_clone_busy (struct snd_clone *c) |
int | snd_clone_enable (struct snd_clone *c) |
int | snd_clone_disable (struct snd_clone *c) |
int | snd_clone_getsize (struct snd_clone *c) |
int | snd_clone_getmaxunit (struct snd_clone *c) |
int | snd_clone_setmaxunit (struct snd_clone *c, int maxunit) |
int | snd_clone_getdeadline (struct snd_clone *c) |
int | snd_clone_setdeadline (struct snd_clone *c, int deadline) |
uint32_t | snd_clone_getflags (struct snd_clone *c) |
uint32_t | snd_clone_setflags (struct snd_clone *c, uint32_t flags) |
uint32_t | snd_clone_getdevflags (struct cdev *dev) |
uint32_t | snd_clone_setdevflags (struct cdev *dev, uint32_t flags) |
int | snd_clone_gc (struct snd_clone *c) |
void | snd_clone_destroy (struct snd_clone *c) |
int | snd_clone_acquire (struct cdev *dev) |
int | snd_clone_release (struct cdev *dev) |
int | snd_clone_ref (struct cdev *dev) |
int | snd_clone_unref (struct cdev *dev) |
void | snd_clone_register (struct snd_clone_entry *ce, struct cdev *dev) |
struct snd_clone_entry * | snd_clone_alloc (struct snd_clone *c, struct cdev **dev, int *unit, int tmask) |
#define SND_CLONE_ELAPSED | ( | x, | |
y | |||
) |
#define SND_CLONE_EXPIRED | ( | x, | |
y, | |||
z | |||
) |
int snd_clone_acquire | ( | struct cdev * | dev | ) |
Definition at line 385 of file clone.c.
References dev, SND_CLONE_ASSERT, and SND_CLONE_BUSY.
Referenced by dsp_open().
struct snd_clone_entry * snd_clone_alloc | ( | struct snd_clone * | c, |
struct cdev ** | dev, | ||
int * | unit, | ||
int | tmask | ||
) |
Definition at line 519 of file clone.c.
References c, dev, pcm_channel::flags, SND_CLONE_ALLOC, SND_CLONE_ASSERT, SND_CLONE_BUSY, SND_CLONE_ENABLE, SND_CLONE_INVOKE, and SND_CLONE_WAITOK.
Referenced by dsp_clone().
int snd_clone_busy | ( | struct snd_clone * | c | ) |
Definition at line 134 of file clone.c.
References c, SND_CLONE_ASSERT, and SND_CLONE_BUSY.
Referenced by pcm_unregister().
struct snd_clone * snd_clone_create | ( | int | typemask, |
int | maxunit, | ||
int | deadline, | ||
uint32_t | flags | ||
) |
Definition at line 106 of file clone.c.
References c, pcm_channel::flags, pcm_channel::refcount, SND_CLONE_ASSERT, SND_CLONE_MASK, and SND_CLONE_MAXUNIT.
Referenced by pcm_register().
void snd_clone_destroy | ( | struct snd_clone * | c | ) |
Definition at line 360 of file clone.c.
References c, free, and SND_CLONE_ASSERT.
Referenced by pcm_unregister().
int snd_clone_disable | ( | struct snd_clone * | c | ) |
Definition at line 170 of file clone.c.
References c, pcm_channel::flags, SND_CLONE_ASSERT, and SND_CLONE_ENABLE.
Referenced by pcm_unregister().
int snd_clone_enable | ( | struct snd_clone * | c | ) |
Definition at line 157 of file clone.c.
References c, pcm_channel::flags, SND_CLONE_ASSERT, and SND_CLONE_ENABLE.
Referenced by pcm_setstatus(), and pcm_unregister().
int snd_clone_gc | ( | struct snd_clone * | c | ) |
Definition at line 308 of file clone.c.
References c, pcm_channel::flags, free, SND_CLONE_ASSERT, SND_CLONE_BUSY, SND_CLONE_EXPIRED, SND_CLONE_GC_ENABLE, SND_CLONE_GC_EXPIRED, SND_CLONE_GC_REVOKE, and SND_CLONE_INVOKE.
Referenced by pcm_clonereset(), and snd_clone_unref().
int snd_clone_getdeadline | ( | struct snd_clone * | c | ) |
Definition at line 217 of file clone.c.
References c, and SND_CLONE_ASSERT.
uint32_t snd_clone_getdevflags | ( | struct cdev * | dev | ) |
Definition at line 255 of file clone.c.
References dev, and SND_CLONE_ASSERT.
uint32_t snd_clone_getflags | ( | struct snd_clone * | c | ) |
Definition at line 235 of file clone.c.
References c, pcm_channel::flags, and SND_CLONE_ASSERT.
int snd_clone_getmaxunit | ( | struct snd_clone * | c | ) |
Definition at line 194 of file clone.c.
References c, and SND_CLONE_ASSERT.
Referenced by dsp_clone().
int snd_clone_getsize | ( | struct snd_clone * | c | ) |
Definition at line 186 of file clone.c.
References c, and SND_CLONE_ASSERT.
int snd_clone_ref | ( | struct cdev * | dev | ) |
Definition at line 450 of file clone.c.
References c, dev, pcm_channel::refcount, and SND_CLONE_ASSERT.
Referenced by dsp_open().
void snd_clone_register | ( | struct snd_clone_entry * | ce, |
struct cdev * | dev | ||
) |
Definition at line 498 of file clone.c.
References dev, SND_CLONE_ALLOC, SND_CLONE_ASSERT, and SND_CLONE_INVOKE.
Referenced by dsp_clone().
int snd_clone_release | ( | struct cdev * | dev | ) |
Definition at line 412 of file clone.c.
References dev, SND_CLONE_ASSERT, and SND_CLONE_BUSY.
Referenced by dsp_close(), and dsp_open().
int snd_clone_setdeadline | ( | struct snd_clone * | c, |
int | deadline | ||
) |
Definition at line 225 of file clone.c.
References c, and SND_CLONE_ASSERT.
uint32_t snd_clone_setdevflags | ( | struct cdev * | dev, |
uint32_t | flags | ||
) |
Definition at line 271 of file clone.c.
References dev, SND_CLONE_ASSERT, and SND_CLONE_DEVMASK.
uint32_t snd_clone_setflags | ( | struct snd_clone * | c, |
uint32_t | flags | ||
) |
Definition at line 243 of file clone.c.
References c, pcm_channel::flags, SND_CLONE_ASSERT, and SND_CLONE_MASK.
int snd_clone_setmaxunit | ( | struct snd_clone * | c, |
int | maxunit | ||
) |
Definition at line 202 of file clone.c.
References c, SND_CLONE_ASSERT, and SND_CLONE_MAXUNIT.
Referenced by dsp_clone(), and pcm_clonereset().
int snd_clone_unref | ( | struct cdev * | dev | ) |
Definition at line 469 of file clone.c.
References c, dev, pcm_channel::flags, pcm_channel::refcount, SND_CLONE_ASSERT, snd_clone_gc(), SND_CLONE_GC_LASTREF, and SND_CLONE_GC_UNREF.
Referenced by dsp_close().