diff options
author | Krzysztof Helt <krzysztof.h1@wp.pl> | 2008-07-31 15:03:41 -0400 |
---|---|---|
committer | Jaroslav Kysela <perex@perex.cz> | 2008-08-06 09:39:49 -0400 |
commit | 7779f75f072784d3fccf721b8ec43107f93619a0 (patch) | |
tree | ada616dd3efdea7192aef3cd4ddb743f980bc39b /include/sound/wss.h | |
parent | 61ef19d7e771ce021edb0dff0da134b6d688d4aa (diff) |
ALSA: wss_lib: rename cs4321_foo to wss_foo
Rename functions and structures from the former
cs4321_lib to names more corresponding with the
new name: wss_lib.
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.h | 172 |
1 files changed, 96 insertions, 76 deletions
diff --git a/include/sound/wss.h b/include/sound/wss.h index f0785f9f4ae4..3b53973f96a7 100644 --- a/include/sound/wss.h +++ b/include/sound/wss.h | |||
@@ -1,5 +1,5 @@ | |||
1 | #ifndef __SOUND_CS4231_H | 1 | #ifndef __SOUND_WSS_H |
2 | #define __SOUND_CS4231_H | 2 | #define __SOUND_WSS_H |
3 | 3 | ||
4 | /* | 4 | /* |
5 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> | 5 | * Copyright (c) by Jaroslav Kysela <perex@perex.cz> |
@@ -30,42 +30,42 @@ | |||
30 | 30 | ||
31 | /* defines for codec.mode */ | 31 | /* defines for codec.mode */ |
32 | 32 | ||
33 | #define CS4231_MODE_NONE 0x0000 | 33 | #define WSS_MODE_NONE 0x0000 |
34 | #define CS4231_MODE_PLAY 0x0001 | 34 | #define WSS_MODE_PLAY 0x0001 |
35 | #define CS4231_MODE_RECORD 0x0002 | 35 | #define WSS_MODE_RECORD 0x0002 |
36 | #define CS4231_MODE_TIMER 0x0004 | 36 | #define WSS_MODE_TIMER 0x0004 |
37 | #define CS4231_MODE_OPEN (CS4231_MODE_PLAY|CS4231_MODE_RECORD|CS4231_MODE_TIMER) | 37 | #define WSS_MODE_OPEN (WSS_MODE_PLAY|WSS_MODE_RECORD|WSS_MODE_TIMER) |
38 | 38 | ||
39 | /* defines for codec.hardware */ | 39 | /* defines for codec.hardware */ |
40 | 40 | ||
41 | #define CS4231_HW_DETECT 0x0000 /* let CS4231 driver detect chip */ | 41 | #define WSS_HW_DETECT 0x0000 /* let CS4231 driver detect chip */ |
42 | #define CS4231_HW_DETECT3 0x0001 /* allow mode 3 */ | 42 | #define WSS_HW_DETECT3 0x0001 /* allow mode 3 */ |
43 | #define CS4231_HW_TYPE_MASK 0xff00 /* type mask */ | 43 | #define WSS_HW_TYPE_MASK 0xff00 /* type mask */ |
44 | #define CS4231_HW_CS4231_MASK 0x0100 /* CS4231 serie */ | 44 | #define WSS_HW_CS4231_MASK 0x0100 /* CS4231 serie */ |
45 | #define CS4231_HW_CS4231 0x0100 /* CS4231 chip */ | 45 | #define WSS_HW_CS4231 0x0100 /* CS4231 chip */ |
46 | #define CS4231_HW_CS4231A 0x0101 /* CS4231A chip */ | 46 | #define WSS_HW_CS4231A 0x0101 /* CS4231A chip */ |
47 | #define CS4231_HW_AD1845 0x0102 /* AD1845 chip */ | 47 | #define WSS_HW_AD1845 0x0102 /* AD1845 chip */ |
48 | #define CS4231_HW_CS4232_MASK 0x0200 /* CS4232 serie (has control ports) */ | 48 | #define WSS_HW_CS4232_MASK 0x0200 /* CS4232 serie (has control ports) */ |
49 | #define CS4231_HW_CS4232 0x0200 /* CS4232 */ | 49 | #define WSS_HW_CS4232 0x0200 /* CS4232 */ |
50 | #define CS4231_HW_CS4232A 0x0201 /* CS4232A */ | 50 | #define WSS_HW_CS4232A 0x0201 /* CS4232A */ |
51 | #define CS4231_HW_CS4236 0x0202 /* CS4236 */ | 51 | #define WSS_HW_CS4236 0x0202 /* CS4236 */ |
52 | #define CS4231_HW_CS4236B_MASK 0x0400 /* CS4236B serie (has extended control regs) */ | 52 | #define WSS_HW_CS4236B_MASK 0x0400 /* CS4236B serie (has extended control regs) */ |
53 | #define CS4231_HW_CS4235 0x0400 /* CS4235 - Crystal Clear (tm) stereo enhancement */ | 53 | #define WSS_HW_CS4235 0x0400 /* CS4235 - Crystal Clear (tm) stereo enhancement */ |
54 | #define CS4231_HW_CS4236B 0x0401 /* CS4236B */ | 54 | #define WSS_HW_CS4236B 0x0401 /* CS4236B */ |
55 | #define CS4231_HW_CS4237B 0x0402 /* CS4237B - SRS 3D */ | 55 | #define WSS_HW_CS4237B 0x0402 /* CS4237B - SRS 3D */ |
56 | #define CS4231_HW_CS4238B 0x0403 /* CS4238B - QSOUND 3D */ | 56 | #define WSS_HW_CS4238B 0x0403 /* CS4238B - QSOUND 3D */ |
57 | #define CS4231_HW_CS4239 0x0404 /* CS4239 - Crystal Clear (tm) stereo enhancement */ | 57 | #define WSS_HW_CS4239 0x0404 /* CS4239 - Crystal Clear (tm) stereo enhancement */ |
58 | /* compatible, but clones */ | 58 | /* compatible, but clones */ |
59 | #define CS4231_HW_INTERWAVE 0x1000 /* InterWave chip */ | 59 | #define WSS_HW_INTERWAVE 0x1000 /* InterWave chip */ |
60 | #define CS4231_HW_OPL3SA2 0x1101 /* OPL3-SA2 chip, similar to cs4231 */ | 60 | #define WSS_HW_OPL3SA2 0x1101 /* OPL3-SA2 chip, similar to cs4231 */ |
61 | #define CS4231_HW_OPTI93X 0x1102 /* Opti 930/931/933 */ | 61 | #define WSS_HW_OPTI93X 0x1102 /* Opti 930/931/933 */ |
62 | 62 | ||
63 | /* defines for codec.hwshare */ | 63 | /* defines for codec.hwshare */ |
64 | #define CS4231_HWSHARE_IRQ (1<<0) | 64 | #define WSS_HWSHARE_IRQ (1<<0) |
65 | #define CS4231_HWSHARE_DMA1 (1<<1) | 65 | #define WSS_HWSHARE_DMA1 (1<<1) |
66 | #define CS4231_HWSHARE_DMA2 (1<<2) | 66 | #define WSS_HWSHARE_DMA2 (1<<2) |
67 | 67 | ||
68 | struct snd_cs4231 { | 68 | struct snd_wss { |
69 | unsigned long port; /* base i/o port */ | 69 | unsigned long port; /* base i/o port */ |
70 | struct resource *res_port; | 70 | struct resource *res_port; |
71 | unsigned long cport; /* control base i/o port (CS4236) */ | 71 | unsigned long cport; /* control base i/o port (CS4236) */ |
@@ -74,8 +74,8 @@ struct snd_cs4231 { | |||
74 | int dma1; /* playback DMA */ | 74 | int dma1; /* playback DMA */ |
75 | int dma2; /* record DMA */ | 75 | int dma2; /* record DMA */ |
76 | unsigned short version; /* version of CODEC chip */ | 76 | unsigned short version; /* version of CODEC chip */ |
77 | unsigned short mode; /* see to CS4231_MODE_XXXX */ | 77 | unsigned short mode; /* see to WSS_MODE_XXXX */ |
78 | unsigned short hardware; /* see to CS4231_HW_XXXX */ | 78 | unsigned short hardware; /* see to WSS_HW_XXXX */ |
79 | unsigned short hwshare; /* shared resources */ | 79 | unsigned short hwshare; /* shared resources */ |
80 | unsigned short single_dma:1, /* forced single DMA mode (GUS 16-bit daughter board) or dma1 == dma2 */ | 80 | unsigned short single_dma:1, /* forced single DMA mode (GUS 16-bit daughter board) or dma1 == dma2 */ |
81 | ebus_flag:1; /* SPARC: EBUS present */ | 81 | ebus_flag:1; /* SPARC: EBUS present */ |
@@ -100,43 +100,50 @@ struct snd_cs4231 { | |||
100 | struct mutex open_mutex; | 100 | struct mutex open_mutex; |
101 | 101 | ||
102 | int (*rate_constraint) (struct snd_pcm_runtime *runtime); | 102 | int (*rate_constraint) (struct snd_pcm_runtime *runtime); |
103 | void (*set_playback_format) (struct snd_cs4231 *chip, struct snd_pcm_hw_params *hw_params, unsigned char pdfr); | 103 | void (*set_playback_format) (struct snd_wss *chip, |
104 | void (*set_capture_format) (struct snd_cs4231 *chip, struct snd_pcm_hw_params *hw_params, unsigned char cdfr); | 104 | struct snd_pcm_hw_params *hw_params, |
105 | void (*trigger) (struct snd_cs4231 *chip, unsigned int what, int start); | 105 | unsigned char pdfr); |
106 | void (*set_capture_format) (struct snd_wss *chip, | ||
107 | struct snd_pcm_hw_params *hw_params, | ||
108 | unsigned char cdfr); | ||
109 | void (*trigger) (struct snd_wss *chip, unsigned int what, int start); | ||
106 | #ifdef CONFIG_PM | 110 | #ifdef CONFIG_PM |
107 | void (*suspend) (struct snd_cs4231 *chip); | 111 | void (*suspend) (struct snd_wss *chip); |
108 | void (*resume) (struct snd_cs4231 *chip); | 112 | void (*resume) (struct snd_wss *chip); |
109 | #endif | 113 | #endif |
110 | void *dma_private_data; | 114 | void *dma_private_data; |
111 | int (*claim_dma) (struct snd_cs4231 *chip, void *dma_private_data, int dma); | 115 | int (*claim_dma) (struct snd_wss *chip, |
112 | int (*release_dma) (struct snd_cs4231 *chip, void *dma_private_data, int dma); | 116 | void *dma_private_data, int dma); |
117 | int (*release_dma) (struct snd_wss *chip, | ||
118 | void *dma_private_data, int dma); | ||
113 | }; | 119 | }; |
114 | 120 | ||
115 | /* exported functions */ | 121 | /* exported functions */ |
116 | 122 | ||
117 | void snd_cs4231_out(struct snd_cs4231 *chip, unsigned char reg, unsigned char val); | 123 | void snd_wss_out(struct snd_wss *chip, unsigned char reg, unsigned char val); |
118 | unsigned char snd_cs4231_in(struct snd_cs4231 *chip, unsigned char reg); | 124 | unsigned char snd_wss_in(struct snd_wss *chip, unsigned char reg); |
119 | void snd_cs4236_ext_out(struct snd_cs4231 *chip, unsigned char reg, unsigned char val); | 125 | void snd_cs4236_ext_out(struct snd_wss *chip, |
120 | unsigned char snd_cs4236_ext_in(struct snd_cs4231 *chip, unsigned char reg); | 126 | unsigned char reg, unsigned char val); |
121 | void snd_cs4231_mce_up(struct snd_cs4231 *chip); | 127 | unsigned char snd_cs4236_ext_in(struct snd_wss *chip, unsigned char reg); |
122 | void snd_cs4231_mce_down(struct snd_cs4231 *chip); | 128 | void snd_wss_mce_up(struct snd_wss *chip); |
129 | void snd_wss_mce_down(struct snd_wss *chip); | ||
123 | 130 | ||
124 | void snd_cs4231_overrange(struct snd_cs4231 *chip); | 131 | void snd_wss_overrange(struct snd_wss *chip); |
125 | 132 | ||
126 | irqreturn_t snd_cs4231_interrupt(int irq, void *dev_id); | 133 | irqreturn_t snd_wss_interrupt(int irq, void *dev_id); |
127 | 134 | ||
128 | const char *snd_cs4231_chip_id(struct snd_cs4231 *chip); | 135 | const char *snd_wss_chip_id(struct snd_wss *chip); |
129 | 136 | ||
130 | int snd_cs4231_create(struct snd_card *card, | 137 | int snd_wss_create(struct snd_card *card, |
131 | unsigned long port, | 138 | unsigned long port, |
132 | unsigned long cport, | 139 | unsigned long cport, |
133 | int irq, int dma1, int dma2, | 140 | int irq, int dma1, int dma2, |
134 | unsigned short hardware, | 141 | unsigned short hardware, |
135 | unsigned short hwshare, | 142 | unsigned short hwshare, |
136 | struct snd_cs4231 ** rchip); | 143 | struct snd_wss **rchip); |
137 | int snd_cs4231_pcm(struct snd_cs4231 * chip, int device, struct snd_pcm **rpcm); | 144 | int snd_wss_pcm(struct snd_wss *chip, int device, struct snd_pcm **rpcm); |
138 | int snd_cs4231_timer(struct snd_cs4231 * chip, int device, struct snd_timer **rtimer); | 145 | int snd_wss_timer(struct snd_wss *chip, int device, struct snd_timer **rtimer); |
139 | int snd_cs4231_mixer(struct snd_cs4231 * chip); | 146 | int snd_wss_mixer(struct snd_wss *chip); |
140 | 147 | ||
141 | int snd_cs4236_create(struct snd_card *card, | 148 | int snd_cs4236_create(struct snd_card *card, |
142 | unsigned long port, | 149 | unsigned long port, |
@@ -144,32 +151,45 @@ int snd_cs4236_create(struct snd_card *card, | |||
144 | int irq, int dma1, int dma2, | 151 | int irq, int dma1, int dma2, |
145 | unsigned short hardware, | 152 | unsigned short hardware, |
146 | unsigned short hwshare, | 153 | unsigned short hwshare, |
147 | struct snd_cs4231 ** rchip); | 154 | struct snd_wss **rchip); |
148 | int snd_cs4236_pcm(struct snd_cs4231 * chip, int device, struct snd_pcm **rpcm); | 155 | int snd_cs4236_pcm(struct snd_wss *chip, int device, struct snd_pcm **rpcm); |
149 | int snd_cs4236_mixer(struct snd_cs4231 * chip); | 156 | int snd_cs4236_mixer(struct snd_wss *chip); |
150 | 157 | ||
151 | /* | 158 | /* |
152 | * mixer library | 159 | * mixer library |
153 | */ | 160 | */ |
154 | 161 | ||
155 | #define CS4231_SINGLE(xname, xindex, reg, shift, mask, invert) \ | 162 | #define WSS_SINGLE(xname, xindex, reg, shift, mask, invert) \ |
156 | { .iface = SNDRV_CTL_ELEM_IFACE_MIXER, .name = xname, .index = xindex, \ | 163 | { .iface = SNDRV_CTL_ELEM_IFACE_MIXER, \ |
157 | .info = snd_cs4231_info_single, \ | 164 | .name = xname, \ |
158 | .get = snd_cs4231_get_single, .put = snd_cs4231_put_single, \ | 165 | .index = xindex, \ |
166 | .info = snd_wss_info_single, \ | ||
167 | .get = snd_wss_get_single, \ | ||
168 | .put = snd_wss_put_single, \ | ||
159 | .private_value = reg | (shift << 8) | (mask << 16) | (invert << 24) } | 169 | .private_value = reg | (shift << 8) | (mask << 16) | (invert << 24) } |
160 | 170 | ||
161 | int snd_cs4231_info_single(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo); | 171 | int snd_wss_info_single(struct snd_kcontrol *kcontrol, |
162 | int snd_cs4231_get_single(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol); | 172 | struct snd_ctl_elem_info *uinfo); |
163 | int snd_cs4231_put_single(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol); | 173 | int snd_wss_get_single(struct snd_kcontrol *kcontrol, |
164 | 174 | struct snd_ctl_elem_value *ucontrol); | |
165 | #define CS4231_DOUBLE(xname, xindex, left_reg, right_reg, shift_left, shift_right, mask, invert) \ | 175 | int snd_wss_put_single(struct snd_kcontrol *kcontrol, |
166 | { .iface = SNDRV_CTL_ELEM_IFACE_MIXER, .name = xname, .index = xindex, \ | 176 | struct snd_ctl_elem_value *ucontrol); |
167 | .info = snd_cs4231_info_double, \ | 177 | |
168 | .get = snd_cs4231_get_double, .put = snd_cs4231_put_double, \ | 178 | #define WSS_DOUBLE(xname, xindex, left_reg, right_reg, shift_left, shift_right, mask, invert) \ |
169 | .private_value = left_reg | (right_reg << 8) | (shift_left << 16) | (shift_right << 19) | (mask << 24) | (invert << 22) } | 179 | { .iface = SNDRV_CTL_ELEM_IFACE_MIXER, \ |
170 | 180 | .name = xname, \ | |
171 | int snd_cs4231_info_double(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo); | 181 | .index = xindex, \ |
172 | int snd_cs4231_get_double(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol); | 182 | .info = snd_wss_info_double, \ |
173 | int snd_cs4231_put_double(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol); | 183 | .get = snd_wss_get_double, \ |
174 | 184 | .put = snd_wss_put_double, \ | |
175 | #endif /* __SOUND_CS4231_H */ | 185 | .private_value = left_reg | (right_reg << 8) | (shift_left << 16) | \ |
186 | (shift_right << 19) | (mask << 24) | (invert << 22) } | ||
187 | |||
188 | int snd_wss_info_double(struct snd_kcontrol *kcontrol, | ||
189 | struct snd_ctl_elem_info *uinfo); | ||
190 | int snd_wss_get_double(struct snd_kcontrol *kcontrol, | ||
191 | struct snd_ctl_elem_value *ucontrol); | ||
192 | int snd_wss_put_double(struct snd_kcontrol *kcontrol, | ||
193 | struct snd_ctl_elem_value *ucontrol); | ||
194 | |||
195 | #endif /* __SOUND_WSS_H */ | ||