• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/sound/isa/gus/

Lines Matching defs:gus

25 #include <sound/gus.h>
27 void snd_gf1_delay(struct snd_gus_card * gus)
33 inb(GUSP(gus, DRAM));
46 static inline void __snd_gf1_ctrl_stop(struct snd_gus_card * gus, unsigned char reg)
50 outb(reg | 0x80, gus->gf1.reg_regsel);
52 value = inb(gus->gf1.reg_data8);
54 outb(reg, gus->gf1.reg_regsel);
56 outb((value | 0x03) & ~(0x80 | 0x20), gus->gf1.reg_data8);
60 static inline void __snd_gf1_write8(struct snd_gus_card * gus,
64 outb(reg, gus->gf1.reg_regsel);
66 outb(data, gus->gf1.reg_data8);
70 static inline unsigned char __snd_gf1_look8(struct snd_gus_card * gus,
73 outb(reg, gus->gf1.reg_regsel);
75 return inb(gus->gf1.reg_data8);
78 static inline void __snd_gf1_write16(struct snd_gus_card * gus,
81 outb(reg, gus->gf1.reg_regsel);
83 outw((unsigned short) data, gus->gf1.reg_data16);
87 static inline unsigned short __snd_gf1_look16(struct snd_gus_card * gus,
90 outb(reg, gus->gf1.reg_regsel);
92 return inw(gus->gf1.reg_data16);
95 static inline void __snd_gf1_adlib_write(struct snd_gus_card * gus,
98 outb(reg, gus->gf1.reg_timerctrl);
99 inb(gus->gf1.reg_timerctrl);
100 inb(gus->gf1.reg_timerctrl);
101 outb(data, gus->gf1.reg_timerdata);
102 inb(gus->gf1.reg_timerctrl);
103 inb(gus->gf1.reg_timerctrl);
106 static inline void __snd_gf1_write_addr(struct snd_gus_card * gus, unsigned char reg,
109 if (gus->gf1.enh_mode) {
112 __snd_gf1_write8(gus, SNDRV_GF1_VB_UPPER_ADDRESS, (unsigned char) ((addr >> 26) & 0x03));
115 __snd_gf1_write16(gus, reg, (unsigned short) (addr >> 11));
116 __snd_gf1_write16(gus, reg + 1, (unsigned short) (addr << 5));
119 static inline unsigned int __snd_gf1_read_addr(struct snd_gus_card * gus,
124 res = ((unsigned int) __snd_gf1_look16(gus, reg | 0x80) << 11) & 0xfff800;
125 res |= ((unsigned int) __snd_gf1_look16(gus, (reg + 1) | 0x80) >> 5) & 0x0007ff;
126 if (gus->gf1.enh_mode) {
127 res |= (unsigned int) __snd_gf1_look8(gus, SNDRV_GF1_VB_UPPER_ADDRESS | 0x80) << 26;
140 void snd_gf1_ctrl_stop(struct snd_gus_card * gus, unsigned char reg)
142 __snd_gf1_ctrl_stop(gus, reg);
145 void snd_gf1_write8(struct snd_gus_card * gus,
149 __snd_gf1_write8(gus, reg, data);
152 unsigned char snd_gf1_look8(struct snd_gus_card * gus, unsigned char reg)
154 return __snd_gf1_look8(gus, reg);
157 void snd_gf1_write16(struct snd_gus_card * gus,
161 __snd_gf1_write16(gus, reg, data);
164 unsigned short snd_gf1_look16(struct snd_gus_card * gus, unsigned char reg)
166 return __snd_gf1_look16(gus, reg);
169 void snd_gf1_adlib_write(struct snd_gus_card * gus,
173 __snd_gf1_adlib_write(gus, reg, data);
176 void snd_gf1_write_addr(struct snd_gus_card * gus, unsigned char reg,
179 __snd_gf1_write_addr(gus, reg, addr, w_16bit);
182 unsigned int snd_gf1_read_addr(struct snd_gus_card * gus,
186 return __snd_gf1_read_addr(gus, reg, w_16bit);
193 void snd_gf1_i_ctrl_stop(struct snd_gus_card * gus, unsigned char reg)
197 spin_lock_irqsave(&gus->reg_lock, flags);
198 __snd_gf1_ctrl_stop(gus, reg);
199 spin_unlock_irqrestore(&gus->reg_lock, flags);
202 void snd_gf1_i_write8(struct snd_gus_card * gus,
208 spin_lock_irqsave(&gus->reg_lock, flags);
209 __snd_gf1_write8(gus, reg, data);
210 spin_unlock_irqrestore(&gus->reg_lock, flags);
213 unsigned char snd_gf1_i_look8(struct snd_gus_card * gus, unsigned char reg)
218 spin_lock_irqsave(&gus->reg_lock, flags);
219 res = __snd_gf1_look8(gus, reg);
220 spin_unlock_irqrestore(&gus->reg_lock, flags);
224 void snd_gf1_i_write16(struct snd_gus_card * gus,
230 spin_lock_irqsave(&gus->reg_lock, flags);
231 __snd_gf1_write16(gus, reg, data);
232 spin_unlock_irqrestore(&gus->reg_lock, flags);
235 unsigned short snd_gf1_i_look16(struct snd_gus_card * gus, unsigned char reg)
240 spin_lock_irqsave(&gus->reg_lock, flags);
241 res = __snd_gf1_look16(gus, reg);
242 spin_unlock_irqrestore(&gus->reg_lock, flags);
248 static unsigned int snd_gf1_i_read_addr(struct snd_gus_card * gus,
254 spin_lock_irqsave(&gus->reg_lock, flags);
255 res = __snd_gf1_read_addr(gus, reg, w_16bit);
256 spin_unlock_irqrestore(&gus->reg_lock, flags);
265 void snd_gf1_dram_addr(struct snd_gus_card * gus, unsigned int addr)
267 outb(0x43, gus->gf1.reg_regsel);
269 outw((unsigned short) addr, gus->gf1.reg_data16);
271 outb(0x44, gus->gf1.reg_regsel);
273 outb((unsigned char) (addr >> 16), gus->gf1.reg_data8);
277 void snd_gf1_poke(struct snd_gus_card * gus, unsigned int addr, unsigned char data)
281 spin_lock_irqsave(&gus->reg_lock, flags);
282 outb(SNDRV_GF1_GW_DRAM_IO_LOW, gus->gf1.reg_regsel);
284 outw((unsigned short) addr, gus->gf1.reg_data16);
286 outb(SNDRV_GF1_GB_DRAM_IO_HIGH, gus->gf1.reg_regsel);
288 outb((unsigned char) (addr >> 16), gus->gf1.reg_data8);
290 outb(data, gus->gf1.reg_dram);
291 spin_unlock_irqrestore(&gus->reg_lock, flags);
294 unsigned char snd_gf1_peek(struct snd_gus_card * gus, unsigned int addr)
299 spin_lock_irqsave(&gus->reg_lock, flags);
300 outb(SNDRV_GF1_GW_DRAM_IO_LOW, gus->gf1.reg_regsel);
302 outw((unsigned short) addr, gus->gf1.reg_data16);
304 outb(SNDRV_GF1_GB_DRAM_IO_HIGH, gus->gf1.reg_regsel);
306 outb((unsigned char) (addr >> 16), gus->gf1.reg_data8);
308 res = inb(gus->gf1.reg_dram);
309 spin_unlock_irqrestore(&gus->reg_lock, flags);
314 void snd_gf1_select_active_voices(struct snd_gus_card * gus)
324 voices = gus->gf1.active_voices;
329 if (gus->gf1.enh_mode)
331 gus->gf1.active_voices = voices;
332 gus->gf1.playback_freq =
333 gus->gf1.enh_mode ? 44100 : voices_tbl[voices - 14];
334 if (!gus->gf1.enh_mode) {
335 snd_gf1_i_write8(gus, SNDRV_GF1_GB_ACTIVE_VOICES, 0xc0 | (voices - 1));
342 void snd_gf1_print_voice_registers(struct snd_gus_card * gus)
347 voice = gus->gf1.active_voice;
348 printk(KERN_INFO " -%i- GF1 voice ctrl, ramp ctrl = 0x%x, 0x%x\n", voice, ctrl = snd_gf1_i_read8(gus, 0), snd_gf1_i_read8(gus, 0x0d));
349 printk(KERN_INFO " -%i- GF1 frequency = 0x%x\n", voice, snd_gf1_i_read16(gus, 1));
350 printk(KERN_INFO " -%i- GF1 loop start, end = 0x%x (0x%x), 0x%x (0x%x)\n", voice, snd_gf1_i_read_addr(gus, 2, ctrl & 4), snd_gf1_i_read_addr(gus, 2, (ctrl & 4) ^ 4), snd_gf1_i_read_addr(gus, 4, ctrl & 4), snd_gf1_i_read_addr(gus, 4, (ctrl & 4) ^ 4));
351 printk(KERN_INFO " -%i- GF1 ramp start, end, rate = 0x%x, 0x%x, 0x%x\n", voice, snd_gf1_i_read8(gus, 7), snd_gf1_i_read8(gus, 8), snd_gf1_i_read8(gus, 6));
352 printk(KERN_INFO" -%i- GF1 volume = 0x%x\n", voice, snd_gf1_i_read16(gus, 9));
353 printk(KERN_INFO " -%i- GF1 position = 0x%x (0x%x)\n", voice, snd_gf1_i_read_addr(gus, 0x0a, ctrl & 4), snd_gf1_i_read_addr(gus, 0x0a, (ctrl & 4) ^ 4));
354 if (gus->interwave && snd_gf1_i_read8(gus, 0x19) & 0x01) { /* enhanced mode */
355 mode = snd_gf1_i_read8(gus, 0x15);
358 printk(KERN_INFO " -%i- GFA1 effect address = 0x%x\n", voice, snd_gf1_i_read_addr(gus, 0x11, ctrl & 4));
359 printk(KERN_INFO " -%i- GFA1 effect volume = 0x%x\n", voice, snd_gf1_i_read16(gus, 0x16));
360 printk(KERN_INFO " -%i- GFA1 effect volume final = 0x%x\n", voice, snd_gf1_i_read16(gus, 0x1d));
361 printk(KERN_INFO " -%i- GFA1 effect acumulator = 0x%x\n", voice, snd_gf1_i_read8(gus, 0x14));
364 printk(KERN_INFO " -%i- GFA1 left offset = 0x%x (%i)\n", voice, snd_gf1_i_read16(gus, 0x13), snd_gf1_i_read16(gus, 0x13) >> 4);
365 printk(KERN_INFO " -%i- GFA1 left offset final = 0x%x (%i)\n", voice, snd_gf1_i_read16(gus, 0x1c), snd_gf1_i_read16(gus, 0x1c) >> 4);
366 printk(KERN_INFO " -%i- GFA1 right offset = 0x%x (%i)\n", voice, snd_gf1_i_read16(gus, 0x0c), snd_gf1_i_read16(gus, 0x0c) >> 4);
367 printk(KERN_INFO " -%i- GFA1 right offset final = 0x%x (%i)\n", voice, snd_gf1_i_read16(gus, 0x1b), snd_gf1_i_read16(gus, 0x1b) >> 4);
369 printk(KERN_INFO " -%i- GF1 pan = 0x%x\n", voice, snd_gf1_i_read8(gus, 0x0c));
371 printk(KERN_INFO " -%i- GF1 pan = 0x%x\n", voice, snd_gf1_i_read8(gus, 0x0c));