diff options
author | Harry Butterworth <heb1001@gmail.com> | 2011-06-11 04:02:06 -0400 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2011-06-14 01:32:29 -0400 |
commit | 55309216baeb9d7f951520cf8e8bf2337cd17bad (patch) | |
tree | 8ccf7617bbf7bcd2866331e7aa5ccbac69b3fedf /sound/pci/ctxfi/cthw20k1.c | |
parent | 37f7ec38ea5c31180461f82e895e13fdd549b595 (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.c | 18 |
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 | ||
1786 | static int hw_have_dedicated_mic(struct hw *hw) | ||
1787 | { | ||
1788 | return 0; | ||
1789 | } | ||
1790 | |||
1791 | static int hw_have_output_switch(struct hw *hw) | ||
1792 | { | ||
1793 | return 0; | ||
1794 | } | ||
1795 | |||
1796 | static 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, |