Exemple #1
0
	struct resource *reg, *irq;
	int regid, irqid;
	void *ih;
	struct ac97_info *codec;

	unsigned int bufsz;

	struct via_chinfo pch, rch;
	struct via_dma_op *sgd_table;
	u_int16_t codec_caps;
	struct mtx *lock;
};

static u_int32_t via_fmt[] = {
	SND_FORMAT(AFMT_U8, 1, 0),
	SND_FORMAT(AFMT_U8, 2, 0),
	SND_FORMAT(AFMT_S16_LE, 1, 0),
	SND_FORMAT(AFMT_S16_LE, 2, 0),
	0
};
static struct pcmchan_caps via_vracaps = {4000, 48000, via_fmt, 0};
static struct pcmchan_caps via_caps = {48000, 48000, via_fmt, 0};

static __inline u_int32_t
via_rd(struct via_info *via, int regno, int size)
{

	switch (size) {
	case 1:
		return bus_space_read_1(via->st, via->sh, regno);
Exemple #2
0
	struct sc_chinfo ch[3];
	int ac97rate;
	struct ich_desc *dtbl;
	unsigned int dtbl_size;
	bus_addr_t desc_addr;
	struct intr_config_hook	intrhook;
	uint16_t vendor;
	uint16_t devid;
	uint32_t flags;
	struct mtx *ich_lock;
};

/* -------------------------------------------------------------------- */

static uint32_t ich_fmt[] = {
	SND_FORMAT(AFMT_S16_LE, 2, 0),
	0
};
static struct pcmchan_caps ich_vrcaps = {8000, 48000, ich_fmt, 0};
static struct pcmchan_caps ich_caps = {48000, 48000, ich_fmt, 0};

/* -------------------------------------------------------------------- */
/* Hardware */
static __inline uint32_t
ich_rd(struct sc_info *sc, int regno, int size)
{
	switch (size) {
	case 1:
		return (bus_space_read_1(sc->nabmbart, sc->nabmbarh, regno));
	case 2:
		return (bus_space_read_2(sc->nabmbart, sc->nabmbarh, regno));