Lines Matching +full:0 +full:x110000
8 * Output fixed at S32_LE, 2 channel to hw:0,0
44 * Removed #if 0 ... #endif
50 * setting HD Capture channel to 0 captures from CDROM digital input.
92 #define SET_CHANNEL 0 /* Testing channel outputs 0=Front, 1=Center/LFE, 2=Unknown, 3=Rear */
93 #define PCM_FRONT_CHANNEL 0
97 #define CONTROL_FRONT_CHANNEL 0
129 .fifo_size = 0,
149 .fifo_size = 0,
165 #if 0 /* debug */
167 "p16v: open channel_id=%d, channel=%p, use=0x%x\n",
174 if (err < 0)
177 return 0;
194 if (err < 0)
197 return 0;
204 return 0;
210 return 0;
220 // Only using channel 0 for now, but the card has 2 channels.
221 return snd_p16v_pcm_open_capture_channel(substream, 0);
230 return 0;
246 #if 0 /* debug */
249 "format=0x%x, channels=%d, buffer_size=%ld, "
284 for(i = 0; i < runtime->periods; i++) {
291 snd_emu10k1_ptr20_write(emu, PLAYBACK_LIST_PTR, channel, 0);
294 snd_emu10k1_ptr20_write(emu, PLAYBACK_PERIOD_SIZE, channel, 0); // buffer size in bytes
295 snd_emu10k1_ptr20_write(emu, PLAYBACK_POINTER, channel, 0);
296 snd_emu10k1_ptr20_write(emu, PLAYBACK_FIFO_END_ADDRESS, channel, 0);
297 snd_emu10k1_ptr20_write(emu, PLAYBACK_FIFO_POINTER, channel, 0);
299 return 0;
311 "format=0x%x, channels=%d, buffer_size=%ld, period_size=%ld, "
333 snd_emu10k1_ptr20_write(emu, CAPTURE_FIFO_POINTER, channel, 0);
336 snd_emu10k1_ptr20_write(emu, CAPTURE_POINTER, channel, 0);
337 //snd_emu10k1_ptr20_write(emu, CAPTURE_SOURCE, 0x0, 0x333300e4); /* Select MIC or Line in */
338 //snd_emu10k1_ptr20_write(emu, EXTENDED_INT_MASK, 0, snd_emu10k1_ptr20_read(emu, EXTENDED_INT_MASK, 0) | (0x110000<<channel));
340 return 0;
365 while ((status = inl(emu->port + IPR2)) != 0) {
368 /* dev_dbg(emu->card->dev, "p16v status=0x%x\n", status); */
378 "p16v: status: 0x%08x, mask=0x%08x\n",
382 if (status & 0x110000) {
404 int result = 0;
406 u32 basic = 0;
407 u32 inte = 0;
408 int running = 0;
416 running = 0;
427 basic |= (0x1<<channel);
431 /* dev_dbg(emu->card->dev, "basic=0x%x, inte=0x%x\n", basic, inte); */
436 snd_emu10k1_ptr20_write(emu, BASIC_INTERRUPT, 0, snd_emu10k1_ptr20_read(emu, BASIC_INTERRUPT, 0)| (basic));
439 snd_emu10k1_ptr20_write(emu, BASIC_INTERRUPT, 0, snd_emu10k1_ptr20_read(emu, BASIC_INTERRUPT, 0) & ~(basic));
455 int channel = 0;
456 int result = 0;
462 snd_emu10k1_ptr20_write(emu, BASIC_INTERRUPT, 0, snd_emu10k1_ptr20_read(emu, BASIC_INTERRUPT, 0)|(0x100<<channel));
466 snd_emu10k1_ptr20_write(emu, BASIC_INTERRUPT, 0, snd_emu10k1_ptr20_read(emu, BASIC_INTERRUPT, 0) & ~(0x100<<channel));
468 //snd_emu10k1_ptr20_write(emu, EXTENDED_INT_MASK, 0, snd_emu10k1_ptr20_read(emu, EXTENDED_INT_MASK, 0) & ~(0x110000<<channel));
484 snd_pcm_uframes_t ptr, ptr1, ptr2,ptr3,ptr4 = 0;
488 return 0;
509 snd_pcm_uframes_t ptr, ptr1, ptr2 = 0;
510 int channel = 0;
513 return 0;
523 dev_dbg(emu->card->dev, "ptr1 = 0x%lx, ptr2=0x%lx, ptr=0x%lx, "
524 "buffer_size = 0x%x, period_size = 0x%x, bits=%d, rate=%d\n",
561 if (err < 0)
570 pcm->info_flags = 0;
601 return 0;
609 uinfo->value.integer.min = 0;
611 return 0;
618 int high_low = (kcontrol->private_value >> 8) & 0xff;
619 int reg = kcontrol->private_value & 0xff;
624 ucontrol->value.integer.value[0] = 0xff - ((value >> 24) & 0xff); /* Left */
625 ucontrol->value.integer.value[1] = 0xff - ((value >> 16) & 0xff); /* Right */
627 ucontrol->value.integer.value[0] = 0xff - ((value >> 8) & 0xff); /* Left */
628 ucontrol->value.integer.value[1] = 0xff - ((value >> 0) & 0xff); /* Right */
630 return 0;
637 int high_low = (kcontrol->private_value >> 8) & 0xff;
638 int reg = kcontrol->private_value & 0xff;
641 oval = value = snd_emu10k1_ptr20_read(emu, reg, 0);
643 value &= 0xffff;
644 value |= ((0xff - ucontrol->value.integer.value[0]) << 24) |
645 ((0xff - ucontrol->value.integer.value[1]) << 16);
647 value &= 0xffff0000;
648 value |= ((0xff - ucontrol->value.integer.value[0]) << 8) |
649 ((0xff - ucontrol->value.integer.value[1]) );
652 snd_emu10k1_ptr20_write(emu, reg, 0, value);
655 return 0;
674 ucontrol->value.enumerated.item[0] = emu->p16v_capture_source;
675 return 0;
683 int change = 0;
687 val = ucontrol->value.enumerated.item[0] ;
694 mask = snd_emu10k1_ptr20_read(emu, BASIC_INTERRUPT, 0) & 0xffff;
695 snd_emu10k1_ptr20_write(emu, BASIC_INTERRUPT, 0, source | mask);
703 static const char * const texts[4] = { "0", "1", "2", "3", };
713 ucontrol->value.enumerated.item[0] = emu->p16v_capture_channel;
714 return 0;
722 int change = 0;
725 val = ucontrol->value.enumerated.item[0] ;
731 tmp = snd_emu10k1_ptr20_read(emu, CAPTURE_P16V_SOURCE, 0) & 0xfffc;
732 snd_emu10k1_ptr20_write(emu, CAPTURE_P16V_SOURCE, 0, tmp | val);
750 P16V_VOL("HD Analog Front Playback Volume", PLAYBACK_VOLUME_MIXER9, 0),
753 P16V_VOL("HD Analog Side Playback Volume", PLAYBACK_VOLUME_MIXER10, 0),
754 P16V_VOL("HD SPDIF Front Playback Volume", PLAYBACK_VOLUME_MIXER7, 0),
757 P16V_VOL("HD SPDIF Side Playback Volume", PLAYBACK_VOLUME_MIXER8, 0),
780 for (i = 0; i < ARRAY_SIZE(p16v_mixer_controls); i++) {
782 if (err < 0)
785 return 0;
794 emu->p16v_saved = vmalloc(array_size(NUM_CHS * 4, 0x80));
797 return 0;
811 for (ch = 0; ch < NUM_CHS; ch++)
812 for (i = 0; i < 0x80; i++, val++)
822 for (ch = 0; ch < NUM_CHS; ch++)
823 for (i = 0; i < 0x80; i++, val++)