summaryrefslogtreecommitdiffstats
path: root/include/sound/wss.h
diff options
context:
space:
mode:
authorKrzysztof Helt <krzysztof.h1@wp.pl>2008-07-31 21:09:32 +0200
committerJaroslav Kysela <perex@perex.cz>2008-08-06 15:39:56 +0200
commitead893c0deeec165524cc8a06e7e739d7d84b4c4 (patch)
tree86881775a9f4e7052eded95747fd8854d043fdda /include/sound/wss.h
parentALSA: wss_lib: use wss mixer code instead of ad1848 one (diff)
downloadlinux-ead893c0deeec165524cc8a06e7e739d7d84b4c4.tar.xz
linux-ead893c0deeec165524cc8a06e7e739d7d84b4c4.zip
ALSA: wss_lib: use wss pcm code instead of ad1848 one
Use the wss pcm code and kill the ad1848 pcm code. The AD1848 chip is much slower than CS4231 chips so the waiting loop was increased 100x (10x is not enough). Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl> Reviewed-by: Rene Herman <rene.herman@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Diffstat (limited to 'include/sound/wss.h')
-rw-r--r--include/sound/wss.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/sound/wss.h b/include/sound/wss.h
index c896f6e1f937..fd01f22825cd 100644
--- a/include/sound/wss.h
+++ b/include/sound/wss.h
@@ -71,6 +71,11 @@
#define WSS_HWSHARE_DMA1 (1<<1)
#define WSS_HWSHARE_DMA2 (1<<2)
+/* IBM Thinkpad specific stuff */
+#define AD1848_THINKPAD_CTL_PORT1 0x15e8
+#define AD1848_THINKPAD_CTL_PORT2 0x15e9
+#define AD1848_THINKPAD_CS4248_ENABLE_BIT 0x02
+
struct snd_wss {
unsigned long port; /* base i/o port */
struct resource *res_port;
@@ -153,6 +158,8 @@ int snd_wss_pcm(struct snd_wss *chip, int device, struct snd_pcm **rpcm);
int snd_wss_timer(struct snd_wss *chip, int device, struct snd_timer **rtimer);
int snd_wss_mixer(struct snd_wss *chip);
+const struct snd_pcm_ops *snd_wss_get_pcm_ops(int direction);
+
int snd_cs4236_create(struct snd_card *card,
unsigned long port,
unsigned long cport,