| /linux/include/sound/ |
| H A D | emu8000_reg.h | 30 #define EMU8000_CPF_READ(emu, chan) \ argument 31 snd_emu8000_peek_dw((emu), EMU8000_DATA0(emu), EMU8000_CMD(0, (chan))) 32 #define EMU8000_PTRX_READ(emu, chan) \ argument 33 snd_emu8000_peek_dw((emu), EMU8000_DATA0(emu), EMU8000_CMD(1, (chan))) 34 #define EMU8000_CVCF_READ(emu, chan) \ argument 35 snd_emu8000_peek_dw((emu), EMU8000_DATA0(emu), EMU8000_CMD(2, (chan))) 36 #define EMU8000_VTFT_READ(emu, chan) \ argument 37 snd_emu8000_peek_dw((emu), EMU8000_DATA0(emu), EMU8000_CMD(3, (chan))) 38 #define EMU8000_PSST_READ(emu, chan) \ argument 39 snd_emu8000_peek_dw((emu), EMU8000_DATA0(emu), EMU8000_CMD(6, (chan))) [all …]
|
| H A D | emu8000.h | 48 struct snd_emux *emu; member 87 void snd_emu8000_poke(struct snd_emu8000 *emu, unsigned int port, unsigned int reg, 89 unsigned short snd_emu8000_peek(struct snd_emu8000 *emu, unsigned int port, 91 void snd_emu8000_poke_dw(struct snd_emu8000 *emu, unsigned int port, unsigned int reg, 93 unsigned int snd_emu8000_peek_dw(struct snd_emu8000 *emu, unsigned int port, 95 void snd_emu8000_dma_chan(struct snd_emu8000 *emu, int ch, int mode); 97 void snd_emu8000_init_fm(struct snd_emu8000 *emu); 99 void snd_emu8000_update_chorus_mode(struct snd_emu8000 *emu); 100 void snd_emu8000_update_reverb_mode(struct snd_emu8000 *emu); 101 void snd_emu8000_update_equalizer(struct snd_emu8000 *emu); [all …]
|
| H A D | emux_synth.h | 34 struct snd_emux_voice *(*get_voice)(struct snd_emux *emu, 42 void (*reset)(struct snd_emux *emu, int ch); 44 int (*sample_new)(struct snd_emux *emu, struct snd_sf_sample *sp, 47 int (*sample_free)(struct snd_emux *emu, struct snd_sf_sample *sp, 49 void (*sample_reset)(struct snd_emux *emu); 50 int (*load_fx)(struct snd_emux *emu, int type, int arg, 52 void (*sysex)(struct snd_emux *emu, char *buf, int len, int parsed, 55 int (*oss_ioctl)(struct snd_emux *emu, int cmd, int p1, int p2); 57 int (*get_pitch_shift)(struct snd_emux *emu); 129 struct snd_emux *emu; member [all …]
|
| /linux/sound/pci/emu10k1/ |
| H A D | irq.c | 14 struct snd_emu10k1 *emu = dev_id; in snd_emu10k1_interrupt() local 19 while ((status = inl(emu->port + IPR)) != 0) { in snd_emu10k1_interrupt() 22 dev_info(emu->card->dev, in snd_emu10k1_interrupt() 27 dev_info(emu->card->dev, "emu10k1 irq routine failure\n"); in snd_emu10k1_interrupt() 32 dev_err(emu->card->dev, "interrupt: PCI error\n"); in snd_emu10k1_interrupt() 33 snd_emu10k1_intr_disable(emu, INTE_PCIERRORENABLE); in snd_emu10k1_interrupt() 37 if (emu->hwvol_interrupt) in snd_emu10k1_interrupt() 38 emu->hwvol_interrupt(emu, status); in snd_emu10k1_interrupt() 40 snd_emu10k1_intr_disable(emu, INTE_VOLINCRENABLE|INTE_VOLDECRENABLE|INTE_MUTEENABLE); in snd_emu10k1_interrupt() 49 val = snd_emu10k1_ptr_read(emu, CLIPL, 0); in snd_emu10k1_interrupt() [all …]
|
| H A D | emupcm.c | 20 static void snd_emu10k1_pcm_interrupt(struct snd_emu10k1 *emu, in snd_emu10k1_pcm_interrupt() argument 31 dev_dbg(emu->card->dev, in snd_emu10k1_pcm_interrupt() 33 epcm->substream->runtime->hw->pointer(emu, epcm->substream), in snd_emu10k1_pcm_interrupt() 40 static void snd_emu10k1_pcm_ac97adc_interrupt(struct snd_emu10k1 *emu, in snd_emu10k1_pcm_ac97adc_interrupt() argument 45 if (emu->pcm_capture_substream->runtime->mode == SNDRV_PCM_MODE_FRAME) in snd_emu10k1_pcm_ac97adc_interrupt() 49 snd_pcm_period_elapsed(emu->pcm_capture_substream); in snd_emu10k1_pcm_ac97adc_interrupt() 52 static void snd_emu10k1_pcm_ac97mic_interrupt(struct snd_emu10k1 *emu, in snd_emu10k1_pcm_ac97mic_interrupt() argument 57 if (emu->pcm_capture_mic_substream->runtime->mode == SNDRV_PCM_MODE_FRAME) in snd_emu10k1_pcm_ac97mic_interrupt() 61 snd_pcm_period_elapsed(emu->pcm_capture_mic_substream); in snd_emu10k1_pcm_ac97mic_interrupt() 64 static void snd_emu10k1_pcm_efx_interrupt(struct snd_emu10k1 *emu, in snd_emu10k1_pcm_efx_interrupt() argument [all …]
|
| H A D | emu10k1x.c | 185 struct emu10k1x *emu; member 193 struct emu10k1x *emu; member 200 struct emu10k1x *emu; member 211 void (*interrupt)(struct emu10k1x *emu, unsigned int status); 280 static unsigned int snd_emu10k1x_ptr_read(struct emu10k1x * emu, in snd_emu10k1x_ptr_read() argument 288 guard(spinlock_irqsave)(&emu->emu_lock); in snd_emu10k1x_ptr_read() 289 outl(regptr, emu->port + PTR); in snd_emu10k1x_ptr_read() 290 return inl(emu->port + DATA); in snd_emu10k1x_ptr_read() 293 static void snd_emu10k1x_ptr_write(struct emu10k1x *emu, in snd_emu10k1x_ptr_write() argument 302 guard(spinlock_irqsave)(&emu->emu_lock); in snd_emu10k1x_ptr_write() [all …]
|
| H A D | emu10k1.c | 74 struct snd_emu10k1 *emu; in snd_card_emu10k1_probe() local 88 sizeof(*emu), &card); in snd_card_emu10k1_probe() 91 emu = card->private_data; in snd_card_emu10k1_probe() 102 err = snd_emu10k1_pcm(emu, 0); in snd_card_emu10k1_probe() 105 if (emu->card_capabilities->ac97_chip) { in snd_card_emu10k1_probe() 106 err = snd_emu10k1_pcm_mic(emu, 1); in snd_card_emu10k1_probe() 110 err = snd_emu10k1_pcm_efx(emu, 2); in snd_card_emu10k1_probe() 114 if (emu->card_capabilities->ca0151_chip) { /* P16V */ in snd_card_emu10k1_probe() 115 emu->p16v_buffer = in snd_card_emu10k1_probe() 117 if (!emu->p16v_buffer) in snd_card_emu10k1_probe() [all …]
|
| H A D | emufx.c | 362 struct snd_emu10k1 *emu = snd_kcontrol_chip(kcontrol); in snd_emu10k1_gpr_ctl_put() local 380 snd_emu10k1_ptr_write(emu, emu->gpr_base + ctl->gpr[i], 0, val); in snd_emu10k1_gpr_ctl_put() 383 snd_emu10k1_ptr_write(emu, emu->gpr_base + ctl->gpr[i], 0, ~val); in snd_emu10k1_gpr_ctl_put() 386 snd_emu10k1_ptr_write(emu, emu->gpr_base + ctl->gpr[i], 0, db_table[val]); in snd_emu10k1_gpr_ctl_put() 389 snd_emu10k1_ptr_write(emu, emu->gpr_base + ctl->gpr[i], 0, in snd_emu10k1_gpr_ctl_put() 398 … snd_emu10k1_ptr_write(emu, emu->gpr_base + ctl->gpr[j * ctl->vcount + i], 0, bass_table[val][j]); in snd_emu10k1_gpr_ctl_put() 406 …snd_emu10k1_ptr_write(emu, emu->gpr_base + ctl->gpr[j * ctl->vcount + i], 0, treble_table[val][j]); in snd_emu10k1_gpr_ctl_put() 409 snd_emu10k1_ptr_write(emu, emu->gpr_base + ctl->gpr[i], 0, onoff_table[val]); in snd_emu10k1_gpr_ctl_put() 421 static void snd_emu10k1_fx8010_interrupt(struct snd_emu10k1 *emu) in snd_emu10k1_fx8010_interrupt() argument 425 irq = emu->fx8010.irq_handlers; in snd_emu10k1_fx8010_interrupt() [all …]
|
| H A D | timer.c | 16 struct snd_emu10k1 *emu; in snd_emu10k1_timer_start() local 19 emu = snd_timer_chip(timer); in snd_emu10k1_timer_start() 23 snd_emu10k1_intr_enable(emu, INTE_INTERVALTIMERENB); in snd_emu10k1_timer_start() 24 outw(delay & TIMER_RATE_MASK, emu->port + TIMER); in snd_emu10k1_timer_start() 30 struct snd_emu10k1 *emu; in snd_emu10k1_timer_stop() local 32 emu = snd_timer_chip(timer); in snd_emu10k1_timer_stop() 33 snd_emu10k1_intr_disable(emu, INTE_INTERVALTIMERENB); in snd_emu10k1_timer_stop() 39 struct snd_emu10k1 *emu = snd_timer_chip(timer); in snd_emu10k1_timer_c_resolution() local 41 if (emu->card_capabilities->emu_model && in snd_emu10k1_timer_c_resolution() 42 emu->emu1010.word_clock == 44100) in snd_emu10k1_timer_c_resolution() [all …]
|
| H A D | emu10k1_patch.c | 35 struct snd_emu10k1 *emu; in snd_emu10k1_sample_new() local 37 emu = rec->hw; in snd_emu10k1_sample_new() 43 dev_warn(emu->card->dev, in snd_emu10k1_sample_new() 100 sp->block = snd_emu10k1_synth_alloc(emu, blocksize); in snd_emu10k1_sample_new() 102 dev_dbg(emu->card->dev, in snd_emu10k1_sample_new() 113 snd_emu10k1_synth_memset(emu, sp->block, offset, size, fill); in snd_emu10k1_sample_new() 119 if (snd_emu10k1_synth_copy_from_user(emu, sp->block, offset, data, size, xor)) in snd_emu10k1_sample_new() 126 if (snd_emu10k1_synth_copy_from_user(emu, sp->block, offset, data, size, xor)) in snd_emu10k1_sample_new() 135 if (snd_emu10k1_synth_copy_from_user(emu, sp->block, offset, data, size, xor)) in snd_emu10k1_sample_new() 141 snd_emu10k1_synth_memset(emu, sp->block, offset, blocksize - offset, fill); in snd_emu10k1_sample_new() [all …]
|
| H A D | emu10k1_callback.c | 38 static int get_pitch_shift(struct snd_emux *emu); 82 struct snd_emux *emu; in snd_emu10k1_synth_get_voice() local 87 emu = hw->synth; in snd_emu10k1_synth_get_voice() 89 lookup_voices(emu, hw, best, 1); /* no OFF voices */ in snd_emu10k1_synth_get_voice() 93 vp = &emu->voices[best[i].voice]; in snd_emu10k1_synth_get_voice() 102 vp->emu->num_voices--; in snd_emu10k1_synth_get_voice() 171 vp->emu->num_voices--; in free_voice() 210 lookup_voices(struct snd_emux *emu, struct snd_emu10k1 *hw, in lookup_voices() argument 226 for (i = 0; i < emu->max_voices; i++) { in lookup_voices() 229 vp = &emu->voices[i]; in lookup_voices() [all …]
|
| /linux/sound/synth/emux/ |
| H A D | emux.c | 26 struct snd_emux *emu; in snd_emux_new() local 29 emu = kzalloc_obj(*emu); in snd_emux_new() 30 if (emu == NULL) in snd_emux_new() 33 spin_lock_init(&emu->voice_lock); in snd_emux_new() 34 mutex_init(&emu->register_mutex); in snd_emux_new() 36 emu->client = -1; in snd_emux_new() 38 emu->oss_synth = NULL; in snd_emux_new() 40 emu->max_voices = 0; in snd_emux_new() 41 emu->use_time = 0; in snd_emux_new() 43 timer_setup(&emu->tlist, snd_emux_timer_callback, 0); in snd_emux_new() [all …]
|
| H A D | emux_seq.c | 55 snd_emux_init_seq(struct snd_emux *emu, struct snd_card *card, int index) in snd_emux_init_seq() argument 61 emu->client = snd_seq_create_kernel_client(card, index, in snd_emux_init_seq() 62 "%s WaveTable", emu->name); in snd_emux_init_seq() 63 if (emu->client < 0) { in snd_emux_init_seq() 68 if (emu->num_ports <= 0) { in snd_emux_init_seq() 70 emu->num_ports = 1; in snd_emux_init_seq() 71 } else if (emu->num_ports > SNDRV_EMUX_MAX_PORTS) { in snd_emux_init_seq() 75 emu->num_ports = SNDRV_EMUX_MAX_PORTS; in snd_emux_init_seq() 84 for (i = 0; i < emu->num_ports; i++) { in snd_emux_init_seq() 87 sprintf(tmpname, "%s Port %d", emu->name, i); in snd_emux_init_seq() [all …]
|
| H A D | emux_oss.c | 29 static void emuspec_control(struct snd_emux *emu, struct snd_emux_port *port, 31 static void gusspec_control(struct snd_emux *emu, struct snd_emux_port *port, 33 static void fake_event(struct snd_emux *emu, struct snd_emux_port *port, 52 snd_emux_init_seq_oss(struct snd_emux *emu) in snd_emux_init_seq_oss() argument 58 if (snd_seq_device_new(emu->card, 1, SNDRV_SEQ_DEV_ID_OSS, in snd_emux_init_seq_oss() 62 emu->oss_synth = dev; in snd_emux_init_seq_oss() 63 strscpy(dev->name, emu->name); in snd_emux_init_seq_oss() 67 arg->nvoices = emu->max_voices; in snd_emux_init_seq_oss() 69 arg->private_data = emu; in snd_emux_init_seq_oss() 72 snd_device_register(emu->card, dev); in snd_emux_init_seq_oss() [all …]
|
| H A D | emux_hwdep.c | 20 snd_emux_hwdep_load_patch(struct snd_emux *emu, void __user *arg) in snd_emux_hwdep_load_patch() argument 29 return snd_soundfont_load_guspatch(emu->card, emu->sflist, arg, in snd_emux_hwdep_load_patch() 34 err = snd_soundfont_load(emu->card, emu->sflist, arg, in snd_emux_hwdep_load_patch() 40 if (emu->ops.load_fx) in snd_emux_hwdep_load_patch() 41 return emu->ops.load_fx(emu, patch.type, patch.optarg, arg, patch.len + sizeof(patch)); in snd_emux_hwdep_load_patch() 52 snd_emux_hwdep_misc_mode(struct snd_emux *emu, void __user *arg) in snd_emux_hwdep_misc_mode() argument 64 for (i = 0; i < emu->num_ports; i++) in snd_emux_hwdep_misc_mode() 65 emu->portptrs[i]->ctrls[info.mode] = info.value; in snd_emux_hwdep_misc_mode() 67 if (info.port < emu->num_ports) { in snd_emux_hwdep_misc_mode() 68 info.port = array_index_nospec(info.port, emu->num_ports); in snd_emux_hwdep_misc_mode() [all …]
|
| H A D | emux_voice.h | 18 int snd_emux_init_seq(struct snd_emux *emu, struct snd_card *card, int index); 19 void snd_emux_detach_seq(struct snd_emux *emu); 20 struct snd_emux_port *snd_emux_create_port(struct snd_emux *emu, char *name, 26 int snd_emux_inc_count(struct snd_emux *emu); 27 void snd_emux_dec_count(struct snd_emux *emu); 28 int snd_emux_init_virmidi(struct snd_emux *emu, struct snd_card *card); 29 int snd_emux_delete_virmidi(struct snd_emux *emu); 32 void snd_emux_init_voices(struct snd_emux *emu); 68 void snd_emux_init_seq_oss(struct snd_emux *emu); 69 void snd_emux_detach_seq_oss(struct snd_emux *emu); [all …]
|
| H A D | emux_effect.c | 169 struct snd_emux *emu; in snd_emux_send_effect() local 172 emu = port->emu; in snd_emux_send_effect() 174 if (emu == NULL || fx == NULL) in snd_emux_send_effect() 197 scoped_guard(spinlock_irqsave, &emu->voice_lock) { in snd_emux_send_effect() 198 for (i = 0; i < emu->max_voices; i++) { in snd_emux_send_effect() 199 struct snd_emux_voice *vp = &emu->voices[i]; in snd_emux_send_effect()
|
| /linux/sound/pci/ca0106/ |
| H A D | ca0106_mixer.c | 63 static void ca0106_spdif_enable(struct snd_ca0106 *emu) in ca0106_spdif_enable() argument 67 if (emu->spdif_enable) { in ca0106_spdif_enable() 69 snd_ca0106_ptr_write(emu, SPDIF_SELECT1, 0, 0xf); in ca0106_spdif_enable() 70 snd_ca0106_ptr_write(emu, SPDIF_SELECT2, 0, 0x0b000000); in ca0106_spdif_enable() 71 val = snd_ca0106_ptr_read(emu, CAPTURE_CONTROL, 0) & ~0x1000; in ca0106_spdif_enable() 72 snd_ca0106_ptr_write(emu, CAPTURE_CONTROL, 0, val); in ca0106_spdif_enable() 73 val = inl(emu->port + CA0106_GPIO) & ~0x101; in ca0106_spdif_enable() 74 outl(val, emu->port + CA0106_GPIO); in ca0106_spdif_enable() 78 snd_ca0106_ptr_write(emu, SPDIF_SELECT1, 0, 0xf); in ca0106_spdif_enable() 79 snd_ca0106_ptr_write(emu, SPDIF_SELECT2, 0, 0x000f0000); in ca0106_spdif_enable() [all …]
|
| H A D | ca0106_main.c | 331 unsigned int snd_ca0106_ptr_read(struct snd_ca0106 * emu, in snd_ca0106_ptr_read() argument 339 guard(spinlock_irqsave)(&emu->emu_lock); in snd_ca0106_ptr_read() 340 outl(regptr, emu->port + CA0106_PTR); in snd_ca0106_ptr_read() 341 return inl(emu->port + CA0106_DATA); in snd_ca0106_ptr_read() 344 void snd_ca0106_ptr_write(struct snd_ca0106 *emu, in snd_ca0106_ptr_write() argument 353 guard(spinlock_irqsave)(&emu->emu_lock); in snd_ca0106_ptr_write() 354 outl(regptr, emu->port + CA0106_PTR); in snd_ca0106_ptr_write() 355 outl(data, emu->port + CA0106_DATA); in snd_ca0106_ptr_write() 358 int snd_ca0106_spi_write(struct snd_ca0106 * emu, in snd_ca0106_spi_write() argument 367 tmp = snd_ca0106_ptr_read(emu, reg, 0); in snd_ca0106_spi_write() [all …]
|
| H A D | ca0106.h | 635 struct snd_ca0106 *emu; member 638 void (*interrupt)(struct snd_ca0106 *emu, struct snd_ca0106_channel *channel); 643 struct snd_ca0106 *emu; member 703 int snd_ca0106_mixer(struct snd_ca0106 *emu); 704 int snd_ca0106_proc_init(struct snd_ca0106 * emu); 706 unsigned int snd_ca0106_ptr_read(struct snd_ca0106 * emu, 710 void snd_ca0106_ptr_write(struct snd_ca0106 *emu, 715 int snd_ca0106_i2c_write(struct snd_ca0106 *emu, u32 reg, u32 value); 717 int snd_ca0106_spi_write(struct snd_ca0106 * emu,
|
| /linux/drivers/input/gameport/ |
| H A D | emu10k1-gp.c | 22 struct emu { struct 42 struct emu *emu; in emu_probe() argument 46 emu = kzalloc_obj(*emu); in emu_probe() 48 if (!emu || !port) { in emu_probe() 58 emu->io = pci_resource_start(pdev, 0); in emu_probe() 59 emu->size = pci_resource_len(pdev, 0); in emu_probe() 61 emu->dev = pdev; in emu_probe() 62 emu->gameport = port; in emu_probe() 67 port->io = emu->io; in emu_probe() 69 if (!request_region(emu->io, emu->size, "emu10k1-gp")) { in emu_probe() [all …]
|
| /linux/sound/isa/sb/ |
| H A D | emu8000_patch.c | 24 snd_emu8000_open_dma(struct snd_emu8000 *emu, int write) in snd_emu8000_open_dma() argument 30 snd_emux_lock_voice(emu->emu, i); in snd_emu8000_open_dma() 31 snd_emu8000_dma_chan(emu, i, write); in snd_emu8000_open_dma() 35 EMU8000_VTFT_WRITE(emu, 30, 0); in snd_emu8000_open_dma() 36 EMU8000_PSST_WRITE(emu, 30, 0x1d8); in snd_emu8000_open_dma() 37 EMU8000_CSL_WRITE(emu, 30, 0x1e0); in snd_emu8000_open_dma() 38 EMU8000_CCCA_WRITE(emu, 30, 0x1d8); in snd_emu8000_open_dma() 39 EMU8000_VTFT_WRITE(emu, 31, 0); in snd_emu8000_open_dma() 40 EMU8000_PSST_WRITE(emu, 31, 0x1d8); in snd_emu8000_open_dma() 41 EMU8000_CSL_WRITE(emu, 31, 0x1e0); in snd_emu8000_open_dma() [all …]
|
| H A D | emu8000_pcm.c | 40 struct snd_emu8000 *emu; member 68 emu8k_open_dram_for_pcm(struct snd_emu8000 *emu, int channels) in emu8k_open_dram_for_pcm() argument 73 snd_emux_lock_voice(emu->emu, 0); in emu8k_open_dram_for_pcm() 75 snd_emux_lock_voice(emu->emu, 1); in emu8k_open_dram_for_pcm() 80 snd_emux_lock_voice(emu->emu, i); in emu8k_open_dram_for_pcm() 85 snd_emu8000_dma_chan(emu, i, mode); in emu8k_open_dram_for_pcm() 89 EMU8000_VTFT_WRITE(emu, 30, 0); in emu8k_open_dram_for_pcm() 90 EMU8000_PSST_WRITE(emu, 30, 0x1d8); in emu8k_open_dram_for_pcm() 91 EMU8000_CSL_WRITE(emu, 30, 0x1e0); in emu8k_open_dram_for_pcm() 92 EMU8000_CCCA_WRITE(emu, 30, 0x1d8); in emu8k_open_dram_for_pcm() [all …]
|
| H A D | emu8000_synth.c | 27 struct snd_emux *emu; in snd_emu8000_probe() 33 if (hw->emu) in snd_emu8000_probe() 36 if (snd_emux_new(&emu) < 0) in snd_emu8000_probe() 39 hw->emu = emu; in snd_emu8000_probe() 42 emu->hw = hw; in snd_emu8000_probe() 43 emu->max_voices = EMU8000_DRAM_VOICES; in snd_emu8000_probe() 44 emu->num_ports = hw->seq_ports; in snd_emu8000_probe() 52 snd_emux_free(emu); in snd_emu8000_probe() 53 hw->emu in snd_emu8000_probe() 28 struct snd_emux *emu; snd_emu8000_probe() local [all...] |
| H A D | emu8000_callback.c | 16 static struct snd_emux_voice *get_voice(struct snd_emux *emu, 22 static void reset_voice(struct snd_emux *emu, int ch); 24 static void sysex(struct snd_emux *emu, char *buf, int len, int parsed, 27 static int oss_ioctl(struct snd_emux *emu, int cmd, int p1, int p2); 29 static int load_fx(struct snd_emux *emu, int type, int mode, 39 static void snd_emu8000_tweak_voice(struct snd_emu8000 *emu, int ch); 74 hw->emu->ops = emu8000_ops; in snd_emu8000_ops_setup() 144 get_voice(struct snd_emux *emu, struct snd_emux_port *port) in get_voice() argument 162 hw = emu->hw; in get_voice() 172 for (i = 0; i < emu->max_voices; i++) { in get_voice() [all …]
|