diff options
author | Pavel Hofman <dustin@seznam.cz> | 2007-06-11 06:21:20 -0400 |
---|---|---|
committer | Jaroslav Kysela <perex@suse.cz> | 2007-07-20 05:11:27 -0400 |
commit | 13d457094bc364e942884266036fd1b2ab74308b (patch) | |
tree | 5f56fec1dc9b66a34ba705ac7694d45130750e88 /sound/pci/emu10k1/emu10k1_main.c | |
parent | 15cc4458c5c93bd5a616410815d5d165f0fe0900 (diff) |
[ALSA] emu10k1 - EMU 1212 with 16 capture channels
* adding 8 more 32-bit capture channels (total of 16) for emu1010 cards
* adding some code comments and card details description
Signed-off-by: Pavel Hofman <dustin@seznam.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
Diffstat (limited to 'sound/pci/emu10k1/emu10k1_main.c')
-rw-r--r-- | sound/pci/emu10k1/emu10k1_main.c | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/sound/pci/emu10k1/emu10k1_main.c b/sound/pci/emu10k1/emu10k1_main.c index 4a9b59ad8ab1..72367411ee6b 100644 --- a/sound/pci/emu10k1/emu10k1_main.c +++ b/sound/pci/emu10k1/emu10k1_main.c | |||
@@ -694,6 +694,37 @@ static int snd_emu1010_load_firmware(struct snd_emu10k1 * emu, const char * file | |||
694 | return 0; | 694 | return 0; |
695 | } | 695 | } |
696 | 696 | ||
697 | /* | ||
698 | * EMU-1010 - details found out from this driver, official MS Win drivers, | ||
699 | * testing the card: | ||
700 | * | ||
701 | * Audigy2 (aka Alice2): | ||
702 | * --------------------- | ||
703 | * * communication over PCI | ||
704 | * * conversion of 32-bit data coming over EMU32 links from HANA FPGA | ||
705 | * to 2 x 16-bit, using internal DSP instructions | ||
706 | * * slave mode, clock supplied by HANA | ||
707 | * * linked to HANA using: | ||
708 | * 32 x 32-bit serial EMU32 output channels | ||
709 | * 16 x EMU32 input channels | ||
710 | * (?) x I2S I/O channels (?) | ||
711 | * | ||
712 | * FPGA (aka HANA): | ||
713 | * --------------- | ||
714 | * * provides all (?) physical inputs and outputs of the card | ||
715 | * (ADC, DAC, SPDIF I/O, ADAT I/O, etc.) | ||
716 | * * provides clock signal for the card and Alice2 | ||
717 | * * two crystals - for 44.1kHz and 48kHz multiples | ||
718 | * * provides internal routing of signal sources to signal destinations | ||
719 | * * inputs/outputs to Alice2 - see above | ||
720 | * | ||
721 | * Current status of the driver: | ||
722 | * ---------------------------- | ||
723 | * * only 44.1/48kHz supported (the MS Win driver supports up to 192 kHz) | ||
724 | * * PCM device nb. 2: | ||
725 | * 16 x 16-bit playback - snd_emu10k1_fx8010_playback_ops | ||
726 | * 16 x 32-bit capture - snd_emu10k1_capture_efx_ops | ||
727 | */ | ||
697 | static int snd_emu10k1_emu1010_init(struct snd_emu10k1 * emu) | 728 | static int snd_emu10k1_emu1010_init(struct snd_emu10k1 * emu) |
698 | { | 729 | { |
699 | unsigned int i; | 730 | unsigned int i; |
@@ -850,6 +881,27 @@ static int snd_emu10k1_emu1010_init(struct snd_emu10k1 * emu) | |||
850 | EMU_DST_ALICE2_EMU32_6, EMU_SRC_DOCK_ADC2_LEFT1); | 881 | EMU_DST_ALICE2_EMU32_6, EMU_SRC_DOCK_ADC2_LEFT1); |
851 | snd_emu1010_fpga_link_dst_src_write(emu, | 882 | snd_emu1010_fpga_link_dst_src_write(emu, |
852 | EMU_DST_ALICE2_EMU32_7, EMU_SRC_DOCK_ADC2_RIGHT1); | 883 | EMU_DST_ALICE2_EMU32_7, EMU_SRC_DOCK_ADC2_RIGHT1); |
884 | /* Pavel Hofman - setting defaults for 8 more capture channels | ||
885 | * Defaults only, users will set their own values anyways, let's | ||
886 | * just copy/paste. | ||
887 | */ | ||
888 | |||
889 | snd_emu1010_fpga_link_dst_src_write(emu, | ||
890 | EMU_DST_ALICE2_EMU32_8, EMU_SRC_DOCK_MIC_A1); | ||
891 | snd_emu1010_fpga_link_dst_src_write(emu, | ||
892 | EMU_DST_ALICE2_EMU32_9, EMU_SRC_DOCK_MIC_B1); | ||
893 | snd_emu1010_fpga_link_dst_src_write(emu, | ||
894 | EMU_DST_ALICE2_EMU32_A, EMU_SRC_HAMOA_ADC_LEFT2); | ||
895 | snd_emu1010_fpga_link_dst_src_write(emu, | ||
896 | EMU_DST_ALICE2_EMU32_B, EMU_SRC_HAMOA_ADC_LEFT2); | ||
897 | snd_emu1010_fpga_link_dst_src_write(emu, | ||
898 | EMU_DST_ALICE2_EMU32_C, EMU_SRC_DOCK_ADC1_LEFT1); | ||
899 | snd_emu1010_fpga_link_dst_src_write(emu, | ||
900 | EMU_DST_ALICE2_EMU32_D, EMU_SRC_DOCK_ADC1_RIGHT1); | ||
901 | snd_emu1010_fpga_link_dst_src_write(emu, | ||
902 | EMU_DST_ALICE2_EMU32_E, EMU_SRC_DOCK_ADC2_LEFT1); | ||
903 | snd_emu1010_fpga_link_dst_src_write(emu, | ||
904 | EMU_DST_ALICE2_EMU32_F, EMU_SRC_DOCK_ADC2_RIGHT1); | ||
853 | #endif | 905 | #endif |
854 | #if 0 | 906 | #if 0 |
855 | /* Original */ | 907 | /* Original */ |