summaryrefslogtreecommitdiffstats
path: root/sound/pci/pcxhr/pcxhr_mix22.c
diff options
context:
space:
mode:
authorMarkus Bollinger <bollinger@digigram.com>2012-06-20 08:34:40 +0200
committerTakashi Iwai <tiwai@suse.de>2012-06-20 08:35:37 +0200
commitfdfbaf69e0b9d6843c0da6501caf4ecacec0f775 (patch)
treed8d8104c9b310f87d18d5995ce6da12908211054 /sound/pci/pcxhr/pcxhr_mix22.c
parentd7dc9e32ae64b5db777017344da61a285c2347f8 (diff)
ALSA: pcxhr: Add LTC support
add LTC (linear timecode) read function via proc interface to the pcxhr driver Signed-off-by: Markus Bollinger <bollinger@digigram.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/pcxhr/pcxhr_mix22.c')
-rw-r--r--sound/pci/pcxhr/pcxhr_mix22.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/sound/pci/pcxhr/pcxhr_mix22.c b/sound/pci/pcxhr/pcxhr_mix22.c
index 1cb82c0a9cb..84fe57626eb 100644
--- a/sound/pci/pcxhr/pcxhr_mix22.c
+++ b/sound/pci/pcxhr/pcxhr_mix22.c
@@ -53,6 +53,7 @@
#define PCXHR_DSP_RESET_DSP 0x01
#define PCXHR_DSP_RESET_MUTE 0x02
#define PCXHR_DSP_RESET_CODEC 0x08
+#define PCXHR_DSP_RESET_SMPTE 0x10
#define PCXHR_DSP_RESET_GPO_OFFSET 5
#define PCXHR_DSP_RESET_GPO_MASK 0x60
@@ -527,6 +528,16 @@ int hr222_write_gpo(struct pcxhr_mgr *mgr, int value)
return 0;
}
+int hr222_manage_timecode(struct pcxhr_mgr *mgr, int enable)
+{
+ if (enable)
+ mgr->dsp_reset |= PCXHR_DSP_RESET_SMPTE;
+ else
+ mgr->dsp_reset &= ~PCXHR_DSP_RESET_SMPTE;
+
+ PCXHR_OUTPB(mgr, PCXHR_DSP_RESET, mgr->dsp_reset);
+ return 0;
+}
int hr222_update_analog_audio_level(struct snd_pcxhr *chip,
int is_capture, int channel)