aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/ctxfi/cthw20k1.c
diff options
context:
space:
mode:
authorHarry Butterworth <heb1001@gmail.com>2011-06-11 04:02:06 -0400
committerTakashi Iwai <tiwai@suse.de>2011-06-14 01:32:29 -0400
commit55309216baeb9d7f951520cf8e8bf2337cd17bad (patch)
tree8ccf7617bbf7bcd2866331e7aa5ccbac69b3fedf /sound/pci/ctxfi/cthw20k1.c
parent37f7ec38ea5c31180461f82e895e13fdd549b595 (diff)
ALSA: ctxfi: Add support for Creative Titanium HD
Initialise model-specific DAC and ADC parts. Add controls for output and mic source selection. Rename some mixer controls according to ControlNames.txt. Remove Playback switches for Line-in and IEC958-in - these were controlling the input mute/unmute which affected capture too. Use the capture switches to control the input mute/unmute instead - it's less confusing. Initialise the WM8775 to invert the left-right clock to swap the left and right channels of the mic and aux input. Signed-off-by: Harry Butterworth <heb1001@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/ctxfi/cthw20k1.c')
-rw-r--r--sound/pci/ctxfi/cthw20k1.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/sound/pci/ctxfi/cthw20k1.c b/sound/pci/ctxfi/cthw20k1.c
index a5c957db5cea..9a85a84b23ab 100644
--- a/sound/pci/ctxfi/cthw20k1.c
+++ b/sound/pci/ctxfi/cthw20k1.c
@@ -1783,6 +1783,21 @@ static int hw_have_digit_io_switch(struct hw *hw)
1783 return !(hw->model == CTSB073X || hw->model == CTUAA); 1783 return !(hw->model == CTSB073X || hw->model == CTUAA);
1784} 1784}
1785 1785
1786static int hw_have_dedicated_mic(struct hw *hw)
1787{
1788 return 0;
1789}
1790
1791static int hw_have_output_switch(struct hw *hw)
1792{
1793 return 0;
1794}
1795
1796static int hw_have_mic_source_switch(struct hw *hw)
1797{
1798 return 0;
1799}
1800
1786#define CTLBITS(a, b, c, d) (((a) << 24) | ((b) << 16) | ((c) << 8) | (d)) 1801#define CTLBITS(a, b, c, d) (((a) << 24) | ((b) << 16) | ((c) << 8) | (d))
1787 1802
1788#define UAA_CFG_PWRSTATUS 0x44 1803#define UAA_CFG_PWRSTATUS 0x44
@@ -2173,6 +2188,9 @@ static struct hw ct20k1_preset __devinitdata = {
2173 .is_adc_source_selected = hw_is_adc_input_selected, 2188 .is_adc_source_selected = hw_is_adc_input_selected,
2174 .select_adc_source = hw_adc_input_select, 2189 .select_adc_source = hw_adc_input_select,
2175 .have_digit_io_switch = hw_have_digit_io_switch, 2190 .have_digit_io_switch = hw_have_digit_io_switch,
2191 .have_dedicated_mic = hw_have_dedicated_mic,
2192 .have_output_switch = hw_have_output_switch,
2193 .have_mic_source_switch = hw_have_mic_source_switch,
2176#ifdef CONFIG_PM 2194#ifdef CONFIG_PM
2177 .suspend = hw_suspend, 2195 .suspend = hw_suspend,
2178 .resume = hw_resume, 2196 .resume = hw_resume,