summaryrefslogtreecommitdiffstats
path: root/sound/pci/ctxfi/cthw20k1.c
diff options
context:
space:
mode:
authorHarry Butterworth <heb1001@gmail.com>2011-06-11 17:41:13 +0800
committerTakashi Iwai <tiwai@suse.de>2011-06-14 07:34:03 +0200
commitb028b81835d7503d68b230446cd5e39d14ff5b9f (patch)
tree62873fdf6c3c8002eed541b1e637554514d1a826 /sound/pci/ctxfi/cthw20k1.c
parent55309216baeb9d7f951520cf8e8bf2337cd17bad (diff)
downloadlinux-b028b81835d7503d68b230446cd5e39d14ff5b9f.tar.gz
linux-b028b81835d7503d68b230446cd5e39d14ff5b9f.tar.bz2
linux-b028b81835d7503d68b230446cd5e39d14ff5b9f.zip
ALSA: ctxfi: Implement a combined capabilities query method to replace multiple have_x query methods.
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.c29
1 files changed, 9 insertions, 20 deletions
diff --git a/sound/pci/ctxfi/cthw20k1.c b/sound/pci/ctxfi/cthw20k1.c
index 9a85a84b23ab..1ff692a9d016 100644
--- a/sound/pci/ctxfi/cthw20k1.c
+++ b/sound/pci/ctxfi/cthw20k1.c
@@ -1777,25 +1777,17 @@ static int hw_adc_init(struct hw *hw, const struct adc_conf *info)
return adc_init_SBx(hw, info->input, info->mic20db);
}
-static int hw_have_digit_io_switch(struct hw *hw)
+static struct capabilities hw_capabilities(struct hw *hw)
{
- /* SB073x and Vista compatible cards have no digit IO switch */
- return !(hw->model == CTSB073X || hw->model == CTUAA);
-}
-
-static int hw_have_dedicated_mic(struct hw *hw)
-{
- return 0;
-}
+ struct capabilities cap;
-static int hw_have_output_switch(struct hw *hw)
-{
- return 0;
-}
+ /* SB073x and Vista compatible cards have no digit IO switch */
+ cap.digit_io_switch = !(hw->model == CTSB073X || hw->model == CTUAA);
+ cap.dedicated_mic = 0;
+ cap.output_switch = 0;
+ cap.mic_source_switch = 0;
-static int hw_have_mic_source_switch(struct hw *hw)
-{
- return 0;
+ return cap;
}
#define CTLBITS(a, b, c, d) (((a) << 24) | ((b) << 16) | ((c) << 8) | (d))
@@ -2187,10 +2179,7 @@ static struct hw ct20k1_preset __devinitdata = {
.pll_init = hw_pll_init,
.is_adc_source_selected = hw_is_adc_input_selected,
.select_adc_source = hw_adc_input_select,
- .have_digit_io_switch = hw_have_digit_io_switch,
- .have_dedicated_mic = hw_have_dedicated_mic,
- .have_output_switch = hw_have_output_switch,
- .have_mic_source_switch = hw_have_mic_source_switch,
+ .capabilities = hw_capabilities,
#ifdef CONFIG_PM
.suspend = hw_suspend,
.resume = hw_resume,