35#define SND_EMU10KX_MINVER 1
36#define SND_EMU10KX_PREFVER 1
37#define SND_EMU10KX_MAXVER 1
41#define EMUPAGESIZE 4096
44#define EMU_PLAY_BUFSZ EMUPAGESIZE
46#define EMU_REC_BUFSZ EMUPAGESIZE*16
47#define EMU_MAX_BUFSZ EMUPAGESIZE*16
48#define EMU_MAXPAGES 8192
51#define EMU_VAR_ROUTE 1
52#define EMU_VAR_ISEMU10K1 2
53#define EMU_VAR_MCH_DISABLED 3
54#define EMU_VAR_MCH_REC 4
56#define EMU_A_IOCFG_DISABLE_ANALOG 0x0040
57#define EMU_A_IOCFG_GPOUT2 0x0001
58#define EMU_AC97SLOT_REAR_RIGHT 0x01
59#define EMU_AC97SLOT_REAR_LEFT 0x02
60#define EMU_HCFG_GPOUT0 0x00001000
61#define EMU_HCFG_GPOUT1 0x00000800
62#define EMU_HCFG_GPOUT2 0x00000400
74#define M_FX0_FRONT_L 0
75#define M_FX1_FRONT_R 1
79#define M_FX5_SUBWOOFER 5
86#define M_IN0_FRONT_L 10
87#define M_IN0_FRONT_R 11
88#define M_IN1_FRONT_L 12
89#define M_IN1_FRONT_R 13
90#define M_IN2_FRONT_L 14
91#define M_IN2_FRONT_R 15
92#define M_IN3_FRONT_L 16
93#define M_IN3_FRONT_R 17
94#define M_IN4_FRONT_L 18
95#define M_IN4_FRONT_R 19
96#define M_IN5_FRONT_L 20
97#define M_IN5_FRONT_R 21
98#define M_IN6_FRONT_L 22
99#define M_IN6_FRONT_R 23
100#define M_IN7_FRONT_L 24
101#define M_IN7_FRONT_R 25
103#define M_IN0_REC_L 26
104#define M_IN0_REC_R 27
105#define M_IN1_REC_L 28
106#define M_IN1_REC_R 29
107#define M_IN2_REC_L 30
108#define M_IN2_REC_R 31
109#define M_IN3_REC_L 32
110#define M_IN3_REC_R 33
111#define M_IN4_REC_L 34
112#define M_IN4_REC_R 35
113#define M_IN5_REC_L 36
114#define M_IN5_REC_R 37
115#define M_IN6_REC_L 38
116#define M_IN6_REC_R 39
117#define M_IN7_REC_L 40
118#define M_IN7_REC_R 41
120#define M_MASTER_FRONT_L 42
121#define M_MASTER_FRONT_R 43
122#define M_MASTER_REAR_L 44
123#define M_MASTER_REAR_R 45
124#define M_MASTER_CENTER 46
125#define M_MASTER_SUBWOOFER 47
126#define M_MASTER_SIDE_L 48
127#define M_MASTER_SIDE_R 49
129#define M_MASTER_REC_L 50
130#define M_MASTER_REC_R 51
struct pcmchan_matrix * m
uint32_t emu_rd(struct emu_sc_info *sc, unsigned int regno, unsigned int size)
int emu_timer_clear(struct emu_sc_info *sc, int timer)
void emu_vroute(struct emu_sc_info *sc, struct emu_route *rt, struct emu_voice *v)
int emu_timer_set(struct emu_sc_info *sc, int timer, int delay)
int emu_vinit(struct emu_sc_info *sc, struct emu_voice *m, struct emu_voice *s, uint32_t sz, struct snd_dbuf *b)
void emumix_set_volume(struct emu_sc_info *sc, int mixer_idx, int volume)
void emu_vsetup(struct emu_voice *v, int fmt, int spd)
void emu_vwrite(struct emu_sc_info *sc, struct emu_voice *v)
uint32_t emu_rdptr(struct emu_sc_info *sc, unsigned int chn, unsigned int reg)
void emu_wr_p16vptr(struct emu_sc_info *sc, uint16_t chn, uint16_t reg, uint32_t data)
struct emu_voice * emu_valloc(struct emu_sc_info *sc)
int emu_intr_register(struct emu_sc_info *sc, uint32_t inte_mask, uint32_t intr_mask, uint32_t(*func)(void *softc, uint32_t irq), void *isc)
void emu_vfree(struct emu_sc_info *sc, struct emu_voice *v)
int emu_timer_enable(struct emu_sc_info *sc, int timer, int go)
int emumix_get_volume(struct emu_sc_info *sc, int mixer_idx)
void emu_wr(struct emu_sc_info *sc, unsigned int regno, uint32_t data, unsigned int size)
void emu_enable_ir(struct emu_sc_info *sc)
bus_dma_tag_t emu_gettag(struct emu_sc_info *sc)
void emu_wrptr(struct emu_sc_info *sc, unsigned int chn, unsigned int reg, uint32_t data)
int emu_intr_unregister(struct emu_sc_info *sc, int ihandle)
uint32_t emu_rd_p16vptr(struct emu_sc_info *sc, uint16_t chn, uint16_t reg)
void emu_vtrigger(struct emu_sc_info *sc, struct emu_voice *v, int go)
int emu_timer_create(struct emu_sc_info *sc)
int emu_vpos(struct emu_sc_info *sc, struct emu_voice *v)
struct emu_sc_info * card
struct emu_sc_info * card
int timer[EMU_MAX_IRQ_CONSUMERS]