[ALSA] Remove xxx_t typedefs: ISA CS423x

Modules: CS4231 driver,CS4236+ driver

Remove xxx_t typedefs from the ISA CS423x drivers.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Takashi Iwai 2005-11-17 14:30:42 +01:00 committed by Jaroslav Kysela
parent c8ff6647bb
commit ba2375a45c
5 changed files with 215 additions and 217 deletions

View File

@ -217,9 +217,7 @@
#define CS4231_HWSHARE_DMA1 (1<<1) #define CS4231_HWSHARE_DMA1 (1<<1)
#define CS4231_HWSHARE_DMA2 (1<<2) #define CS4231_HWSHARE_DMA2 (1<<2)
typedef struct _snd_cs4231 cs4231_t; struct snd_cs4231 {
struct _snd_cs4231 {
unsigned long port; /* base i/o port */ unsigned long port; /* base i/o port */
struct resource *res_port; struct resource *res_port;
unsigned long cport; /* control base i/o port (CS4236) */ unsigned long cport; /* control base i/o port (CS4236) */
@ -234,11 +232,11 @@ struct _snd_cs4231 {
unsigned short single_dma:1, /* forced single DMA mode (GUS 16-bit daughter board) or dma1 == dma2 */ unsigned short single_dma:1, /* forced single DMA mode (GUS 16-bit daughter board) or dma1 == dma2 */
ebus_flag:1; /* SPARC: EBUS present */ ebus_flag:1; /* SPARC: EBUS present */
snd_card_t *card; struct snd_card *card;
snd_pcm_t *pcm; struct snd_pcm *pcm;
snd_pcm_substream_t *playback_substream; struct snd_pcm_substream *playback_substream;
snd_pcm_substream_t *capture_substream; struct snd_pcm_substream *capture_substream;
snd_timer_t *timer; struct snd_timer *timer;
unsigned char image[32]; /* registers image */ unsigned char image[32]; /* registers image */
unsigned char eimage[32]; /* extended registers image */ unsigned char eimage[32]; /* extended registers image */
@ -253,52 +251,52 @@ struct _snd_cs4231 {
struct semaphore mce_mutex; struct semaphore mce_mutex;
struct semaphore open_mutex; struct semaphore open_mutex;
int (*rate_constraint) (snd_pcm_runtime_t *runtime); int (*rate_constraint) (struct snd_pcm_runtime *runtime);
void (*set_playback_format) (cs4231_t *chip, snd_pcm_hw_params_t *hw_params, unsigned char pdfr); void (*set_playback_format) (struct snd_cs4231 *chip, struct snd_pcm_hw_params *hw_params, unsigned char pdfr);
void (*set_capture_format) (cs4231_t *chip, snd_pcm_hw_params_t *hw_params, unsigned char cdfr); void (*set_capture_format) (struct snd_cs4231 *chip, struct snd_pcm_hw_params *hw_params, unsigned char cdfr);
void (*trigger) (cs4231_t *chip, unsigned int what, int start); void (*trigger) (struct snd_cs4231 *chip, unsigned int what, int start);
#ifdef CONFIG_PM #ifdef CONFIG_PM
void (*suspend) (cs4231_t *chip); void (*suspend) (struct snd_cs4231 *chip);
void (*resume) (cs4231_t *chip); void (*resume) (struct snd_cs4231 *chip);
#endif #endif
void *dma_private_data; void *dma_private_data;
int (*claim_dma) (cs4231_t *chip, void *dma_private_data, int dma); int (*claim_dma) (struct snd_cs4231 *chip, void *dma_private_data, int dma);
int (*release_dma) (cs4231_t *chip, void *dma_private_data, int dma); int (*release_dma) (struct snd_cs4231 *chip, void *dma_private_data, int dma);
}; };
/* exported functions */ /* exported functions */
void snd_cs4231_out(cs4231_t *chip, unsigned char reg, unsigned char val); void snd_cs4231_out(struct snd_cs4231 *chip, unsigned char reg, unsigned char val);
unsigned char snd_cs4231_in(cs4231_t *chip, unsigned char reg); unsigned char snd_cs4231_in(struct snd_cs4231 *chip, unsigned char reg);
void snd_cs4236_ext_out(cs4231_t *chip, unsigned char reg, unsigned char val); void snd_cs4236_ext_out(struct snd_cs4231 *chip, unsigned char reg, unsigned char val);
unsigned char snd_cs4236_ext_in(cs4231_t *chip, unsigned char reg); unsigned char snd_cs4236_ext_in(struct snd_cs4231 *chip, unsigned char reg);
void snd_cs4231_mce_up(cs4231_t *chip); void snd_cs4231_mce_up(struct snd_cs4231 *chip);
void snd_cs4231_mce_down(cs4231_t *chip); void snd_cs4231_mce_down(struct snd_cs4231 *chip);
irqreturn_t snd_cs4231_interrupt(int irq, void *dev_id, struct pt_regs *regs); irqreturn_t snd_cs4231_interrupt(int irq, void *dev_id, struct pt_regs *regs);
const char *snd_cs4231_chip_id(cs4231_t *chip); const char *snd_cs4231_chip_id(struct snd_cs4231 *chip);
int snd_cs4231_create(snd_card_t * card, int snd_cs4231_create(struct snd_card *card,
unsigned long port, unsigned long port,
unsigned long cport, unsigned long cport,
int irq, int dma1, int dma2, int irq, int dma1, int dma2,
unsigned short hardware, unsigned short hardware,
unsigned short hwshare, unsigned short hwshare,
cs4231_t ** rchip); struct snd_cs4231 ** rchip);
int snd_cs4231_pcm(cs4231_t * chip, int device, snd_pcm_t **rpcm); int snd_cs4231_pcm(struct snd_cs4231 * chip, int device, struct snd_pcm **rpcm);
int snd_cs4231_timer(cs4231_t * chip, int device, snd_timer_t **rtimer); int snd_cs4231_timer(struct snd_cs4231 * chip, int device, struct snd_timer **rtimer);
int snd_cs4231_mixer(cs4231_t * chip); int snd_cs4231_mixer(struct snd_cs4231 * chip);
int snd_cs4236_create(snd_card_t * card, int snd_cs4236_create(struct snd_card *card,
unsigned long port, unsigned long port,
unsigned long cport, unsigned long cport,
int irq, int dma1, int dma2, int irq, int dma1, int dma2,
unsigned short hardware, unsigned short hardware,
unsigned short hwshare, unsigned short hwshare,
cs4231_t ** rchip); struct snd_cs4231 ** rchip);
int snd_cs4236_pcm(cs4231_t * chip, int device, snd_pcm_t **rpcm); int snd_cs4236_pcm(struct snd_cs4231 * chip, int device, struct snd_pcm **rpcm);
int snd_cs4236_mixer(cs4231_t * chip); int snd_cs4236_mixer(struct snd_cs4231 * chip);
/* /*
* mixer library * mixer library
@ -310,9 +308,9 @@ int snd_cs4236_mixer(cs4231_t * chip);
.get = snd_cs4231_get_single, .put = snd_cs4231_put_single, \ .get = snd_cs4231_get_single, .put = snd_cs4231_put_single, \
.private_value = reg | (shift << 8) | (mask << 16) | (invert << 24) } .private_value = reg | (shift << 8) | (mask << 16) | (invert << 24) }
int snd_cs4231_info_single(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t * uinfo); int snd_cs4231_info_single(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo);
int snd_cs4231_get_single(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol); int snd_cs4231_get_single(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol);
int snd_cs4231_put_single(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol); int snd_cs4231_put_single(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol);
#define CS4231_DOUBLE(xname, xindex, left_reg, right_reg, shift_left, shift_right, mask, invert) \ #define CS4231_DOUBLE(xname, xindex, left_reg, right_reg, shift_left, shift_right, mask, invert) \
{ .iface = SNDRV_CTL_ELEM_IFACE_MIXER, .name = xname, .index = xindex, \ { .iface = SNDRV_CTL_ELEM_IFACE_MIXER, .name = xname, .index = xindex, \
@ -320,8 +318,8 @@ int snd_cs4231_put_single(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucon
.get = snd_cs4231_get_double, .put = snd_cs4231_put_double, \ .get = snd_cs4231_get_double, .put = snd_cs4231_put_double, \
.private_value = left_reg | (right_reg << 8) | (shift_left << 16) | (shift_right << 19) | (mask << 24) | (invert << 22) } .private_value = left_reg | (right_reg << 8) | (shift_left << 16) | (shift_right << 19) | (mask << 24) | (invert << 22) }
int snd_cs4231_info_double(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t * uinfo); int snd_cs4231_info_double(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo);
int snd_cs4231_get_double(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol); int snd_cs4231_get_double(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol);
int snd_cs4231_put_double(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol); int snd_cs4231_put_double(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol);
#endif /* __SOUND_CS4231_H */ #endif /* __SOUND_CS4231_H */

View File

@ -64,15 +64,15 @@ MODULE_PARM_DESC(dma1, "DMA1 # for CS4231 driver.");
module_param_array(dma2, int, NULL, 0444); module_param_array(dma2, int, NULL, 0444);
MODULE_PARM_DESC(dma2, "DMA2 # for CS4231 driver."); MODULE_PARM_DESC(dma2, "DMA2 # for CS4231 driver.");
static snd_card_t *snd_cs4231_cards[SNDRV_CARDS] = SNDRV_DEFAULT_PTR; static struct snd_card *snd_cs4231_cards[SNDRV_CARDS] = SNDRV_DEFAULT_PTR;
static int __init snd_card_cs4231_probe(int dev) static int __init snd_card_cs4231_probe(int dev)
{ {
snd_card_t *card; struct snd_card *card;
struct snd_card_cs4231 *acard; struct snd_card_cs4231 *acard;
snd_pcm_t *pcm = NULL; struct snd_pcm *pcm = NULL;
cs4231_t *chip; struct snd_cs4231 *chip;
int err; int err;
if (port[dev] == SNDRV_AUTO_PORT) { if (port[dev] == SNDRV_AUTO_PORT) {

View File

@ -73,13 +73,13 @@ static unsigned int rates[14] = {
27042, 32000, 33075, 37800, 44100, 48000 27042, 32000, 33075, 37800, 44100, 48000
}; };
static snd_pcm_hw_constraint_list_t hw_constraints_rates = { static struct snd_pcm_hw_constraint_list hw_constraints_rates = {
.count = 14, .count = 14,
.list = rates, .list = rates,
.mask = 0, .mask = 0,
}; };
static int snd_cs4231_xrate(snd_pcm_runtime_t *runtime) static int snd_cs4231_xrate(struct snd_pcm_runtime *runtime)
{ {
return snd_pcm_hw_constraint_list(runtime, 0, SNDRV_PCM_HW_PARAM_RATE, &hw_constraints_rates); return snd_pcm_hw_constraint_list(runtime, 0, SNDRV_PCM_HW_PARAM_RATE, &hw_constraints_rates);
} }
@ -124,17 +124,17 @@ static unsigned char snd_cs4231_original_image[32] =
* Basic I/O functions * Basic I/O functions
*/ */
static inline void cs4231_outb(cs4231_t *chip, u8 offset, u8 val) static inline void cs4231_outb(struct snd_cs4231 *chip, u8 offset, u8 val)
{ {
outb(val, chip->port + offset); outb(val, chip->port + offset);
} }
static inline u8 cs4231_inb(cs4231_t *chip, u8 offset) static inline u8 cs4231_inb(struct snd_cs4231 *chip, u8 offset)
{ {
return inb(chip->port + offset); return inb(chip->port + offset);
} }
static void snd_cs4231_outm(cs4231_t *chip, unsigned char reg, static void snd_cs4231_outm(struct snd_cs4231 *chip, unsigned char reg,
unsigned char mask, unsigned char value) unsigned char mask, unsigned char value)
{ {
int timeout; int timeout;
@ -161,7 +161,7 @@ static void snd_cs4231_outm(cs4231_t *chip, unsigned char reg,
} }
} }
static void snd_cs4231_dout(cs4231_t *chip, unsigned char reg, unsigned char value) static void snd_cs4231_dout(struct snd_cs4231 *chip, unsigned char reg, unsigned char value)
{ {
int timeout; int timeout;
@ -174,7 +174,7 @@ static void snd_cs4231_dout(cs4231_t *chip, unsigned char reg, unsigned char val
mb(); mb();
} }
void snd_cs4231_out(cs4231_t *chip, unsigned char reg, unsigned char value) void snd_cs4231_out(struct snd_cs4231 *chip, unsigned char reg, unsigned char value)
{ {
int timeout; int timeout;
@ -195,7 +195,7 @@ void snd_cs4231_out(cs4231_t *chip, unsigned char reg, unsigned char value)
#endif #endif
} }
unsigned char snd_cs4231_in(cs4231_t *chip, unsigned char reg) unsigned char snd_cs4231_in(struct snd_cs4231 *chip, unsigned char reg)
{ {
int timeout; int timeout;
@ -212,7 +212,7 @@ unsigned char snd_cs4231_in(cs4231_t *chip, unsigned char reg)
return cs4231_inb(chip, CS4231P(REG)); return cs4231_inb(chip, CS4231P(REG));
} }
void snd_cs4236_ext_out(cs4231_t *chip, unsigned char reg, unsigned char val) void snd_cs4236_ext_out(struct snd_cs4231 *chip, unsigned char reg, unsigned char val)
{ {
cs4231_outb(chip, CS4231P(REGSEL), chip->mce_bit | 0x17); cs4231_outb(chip, CS4231P(REGSEL), chip->mce_bit | 0x17);
cs4231_outb(chip, CS4231P(REG), reg | (chip->image[CS4236_EXT_REG] & 0x01)); cs4231_outb(chip, CS4231P(REG), reg | (chip->image[CS4236_EXT_REG] & 0x01));
@ -223,7 +223,7 @@ void snd_cs4236_ext_out(cs4231_t *chip, unsigned char reg, unsigned char val)
#endif #endif
} }
unsigned char snd_cs4236_ext_in(cs4231_t *chip, unsigned char reg) unsigned char snd_cs4236_ext_in(struct snd_cs4231 *chip, unsigned char reg)
{ {
cs4231_outb(chip, CS4231P(REGSEL), chip->mce_bit | 0x17); cs4231_outb(chip, CS4231P(REGSEL), chip->mce_bit | 0x17);
cs4231_outb(chip, CS4231P(REG), reg | (chip->image[CS4236_EXT_REG] & 0x01)); cs4231_outb(chip, CS4231P(REG), reg | (chip->image[CS4236_EXT_REG] & 0x01));
@ -241,7 +241,7 @@ unsigned char snd_cs4236_ext_in(cs4231_t *chip, unsigned char reg)
#if 0 #if 0
static void snd_cs4231_debug(cs4231_t *chip) static void snd_cs4231_debug(struct snd_cs4231 *chip)
{ {
printk("CS4231 REGS: INDEX = 0x%02x ", cs4231_inb(chip, CS4231P(REGSEL))); printk("CS4231 REGS: INDEX = 0x%02x ", cs4231_inb(chip, CS4231P(REGSEL)));
printk(" STATUS = 0x%02x\n", cs4231_inb(chip, CS4231P(STATUS))); printk(" STATUS = 0x%02x\n", cs4231_inb(chip, CS4231P(STATUS)));
@ -285,7 +285,7 @@ static void snd_cs4231_debug(cs4231_t *chip)
* CS4231 detection / MCE routines * CS4231 detection / MCE routines
*/ */
static void snd_cs4231_busy_wait(cs4231_t *chip) static void snd_cs4231_busy_wait(struct snd_cs4231 *chip)
{ {
int timeout; int timeout;
@ -299,7 +299,7 @@ static void snd_cs4231_busy_wait(cs4231_t *chip)
udelay(10); udelay(10);
} }
void snd_cs4231_mce_up(cs4231_t *chip) void snd_cs4231_mce_up(struct snd_cs4231 *chip)
{ {
unsigned long flags; unsigned long flags;
int timeout; int timeout;
@ -320,7 +320,7 @@ void snd_cs4231_mce_up(cs4231_t *chip)
spin_unlock_irqrestore(&chip->reg_lock, flags); spin_unlock_irqrestore(&chip->reg_lock, flags);
} }
void snd_cs4231_mce_down(cs4231_t *chip) void snd_cs4231_mce_down(struct snd_cs4231 *chip)
{ {
unsigned long flags; unsigned long flags;
int timeout; int timeout;
@ -399,14 +399,14 @@ static unsigned int snd_cs4231_get_count(unsigned char format, unsigned int size
return size; return size;
} }
static int snd_cs4231_trigger(snd_pcm_substream_t *substream, static int snd_cs4231_trigger(struct snd_pcm_substream *substream,
int cmd) int cmd)
{ {
cs4231_t *chip = snd_pcm_substream_chip(substream); struct snd_cs4231 *chip = snd_pcm_substream_chip(substream);
int result = 0; int result = 0;
unsigned int what; unsigned int what;
struct list_head *pos; struct list_head *pos;
snd_pcm_substream_t *s; struct snd_pcm_substream *s;
int do_start; int do_start;
#if 0 #if 0
@ -468,7 +468,7 @@ static unsigned char snd_cs4231_get_rate(unsigned int rate)
return freq_bits[13]; return freq_bits[13];
} }
static unsigned char snd_cs4231_get_format(cs4231_t *chip, static unsigned char snd_cs4231_get_format(struct snd_cs4231 *chip,
int format, int format,
int channels) int channels)
{ {
@ -490,7 +490,7 @@ static unsigned char snd_cs4231_get_format(cs4231_t *chip,
return rformat; return rformat;
} }
static void snd_cs4231_calibrate_mute(cs4231_t *chip, int mute) static void snd_cs4231_calibrate_mute(struct snd_cs4231 *chip, int mute)
{ {
unsigned long flags; unsigned long flags;
@ -524,8 +524,8 @@ static void snd_cs4231_calibrate_mute(cs4231_t *chip, int mute)
spin_unlock_irqrestore(&chip->reg_lock, flags); spin_unlock_irqrestore(&chip->reg_lock, flags);
} }
static void snd_cs4231_playback_format(cs4231_t *chip, static void snd_cs4231_playback_format(struct snd_cs4231 *chip,
snd_pcm_hw_params_t *params, struct snd_pcm_hw_params *params,
unsigned char pdfr) unsigned char pdfr)
{ {
unsigned long flags; unsigned long flags;
@ -563,8 +563,8 @@ static void snd_cs4231_playback_format(cs4231_t *chip,
up(&chip->mce_mutex); up(&chip->mce_mutex);
} }
static void snd_cs4231_capture_format(cs4231_t *chip, static void snd_cs4231_capture_format(struct snd_cs4231 *chip,
snd_pcm_hw_params_t *params, struct snd_pcm_hw_params *params,
unsigned char cdfr) unsigned char cdfr)
{ {
unsigned long flags; unsigned long flags;
@ -610,20 +610,20 @@ static void snd_cs4231_capture_format(cs4231_t *chip,
* Timer interface * Timer interface
*/ */
static unsigned long snd_cs4231_timer_resolution(snd_timer_t * timer) static unsigned long snd_cs4231_timer_resolution(struct snd_timer * timer)
{ {
cs4231_t *chip = snd_timer_chip(timer); struct snd_cs4231 *chip = snd_timer_chip(timer);
if (chip->hardware & CS4231_HW_CS4236B_MASK) if (chip->hardware & CS4231_HW_CS4236B_MASK)
return 14467; return 14467;
else else
return chip->image[CS4231_PLAYBK_FORMAT] & 1 ? 9969 : 9920; return chip->image[CS4231_PLAYBK_FORMAT] & 1 ? 9969 : 9920;
} }
static int snd_cs4231_timer_start(snd_timer_t * timer) static int snd_cs4231_timer_start(struct snd_timer * timer)
{ {
unsigned long flags; unsigned long flags;
unsigned int ticks; unsigned int ticks;
cs4231_t *chip = snd_timer_chip(timer); struct snd_cs4231 *chip = snd_timer_chip(timer);
spin_lock_irqsave(&chip->reg_lock, flags); spin_lock_irqsave(&chip->reg_lock, flags);
ticks = timer->sticks; ticks = timer->sticks;
if ((chip->image[CS4231_ALT_FEATURE_1] & CS4231_TIMER_ENABLE) == 0 || if ((chip->image[CS4231_ALT_FEATURE_1] & CS4231_TIMER_ENABLE) == 0 ||
@ -637,17 +637,17 @@ static int snd_cs4231_timer_start(snd_timer_t * timer)
return 0; return 0;
} }
static int snd_cs4231_timer_stop(snd_timer_t * timer) static int snd_cs4231_timer_stop(struct snd_timer * timer)
{ {
unsigned long flags; unsigned long flags;
cs4231_t *chip = snd_timer_chip(timer); struct snd_cs4231 *chip = snd_timer_chip(timer);
spin_lock_irqsave(&chip->reg_lock, flags); spin_lock_irqsave(&chip->reg_lock, flags);
snd_cs4231_out(chip, CS4231_ALT_FEATURE_1, chip->image[CS4231_ALT_FEATURE_1] &= ~CS4231_TIMER_ENABLE); snd_cs4231_out(chip, CS4231_ALT_FEATURE_1, chip->image[CS4231_ALT_FEATURE_1] &= ~CS4231_TIMER_ENABLE);
spin_unlock_irqrestore(&chip->reg_lock, flags); spin_unlock_irqrestore(&chip->reg_lock, flags);
return 0; return 0;
} }
static void snd_cs4231_init(cs4231_t *chip) static void snd_cs4231_init(struct snd_cs4231 *chip)
{ {
unsigned long flags; unsigned long flags;
@ -705,7 +705,7 @@ static void snd_cs4231_init(cs4231_t *chip)
#endif #endif
} }
static int snd_cs4231_open(cs4231_t *chip, unsigned int mode) static int snd_cs4231_open(struct snd_cs4231 *chip, unsigned int mode)
{ {
unsigned long flags; unsigned long flags;
@ -741,7 +741,7 @@ static int snd_cs4231_open(cs4231_t *chip, unsigned int mode)
return 0; return 0;
} }
static void snd_cs4231_close(cs4231_t *chip, unsigned int mode) static void snd_cs4231_close(struct snd_cs4231 *chip, unsigned int mode)
{ {
unsigned long flags; unsigned long flags;
@ -792,21 +792,21 @@ static void snd_cs4231_close(cs4231_t *chip, unsigned int mode)
* timer open/close * timer open/close
*/ */
static int snd_cs4231_timer_open(snd_timer_t * timer) static int snd_cs4231_timer_open(struct snd_timer * timer)
{ {
cs4231_t *chip = snd_timer_chip(timer); struct snd_cs4231 *chip = snd_timer_chip(timer);
snd_cs4231_open(chip, CS4231_MODE_TIMER); snd_cs4231_open(chip, CS4231_MODE_TIMER);
return 0; return 0;
} }
static int snd_cs4231_timer_close(snd_timer_t * timer) static int snd_cs4231_timer_close(struct snd_timer * timer)
{ {
cs4231_t *chip = snd_timer_chip(timer); struct snd_cs4231 *chip = snd_timer_chip(timer);
snd_cs4231_close(chip, CS4231_MODE_TIMER); snd_cs4231_close(chip, CS4231_MODE_TIMER);
return 0; return 0;
} }
static struct _snd_timer_hardware snd_cs4231_timer_table = static struct snd_timer_hardware snd_cs4231_timer_table =
{ {
.flags = SNDRV_TIMER_HW_AUTO, .flags = SNDRV_TIMER_HW_AUTO,
.resolution = 9945, .resolution = 9945,
@ -822,10 +822,10 @@ static struct _snd_timer_hardware snd_cs4231_timer_table =
* ok.. exported functions.. * ok.. exported functions..
*/ */
static int snd_cs4231_playback_hw_params(snd_pcm_substream_t * substream, static int snd_cs4231_playback_hw_params(struct snd_pcm_substream *substream,
snd_pcm_hw_params_t * hw_params) struct snd_pcm_hw_params *hw_params)
{ {
cs4231_t *chip = snd_pcm_substream_chip(substream); struct snd_cs4231 *chip = snd_pcm_substream_chip(substream);
unsigned char new_pdfr; unsigned char new_pdfr;
int err; int err;
@ -837,15 +837,15 @@ static int snd_cs4231_playback_hw_params(snd_pcm_substream_t * substream,
return 0; return 0;
} }
static int snd_cs4231_playback_hw_free(snd_pcm_substream_t * substream) static int snd_cs4231_playback_hw_free(struct snd_pcm_substream *substream)
{ {
return snd_pcm_lib_free_pages(substream); return snd_pcm_lib_free_pages(substream);
} }
static int snd_cs4231_playback_prepare(snd_pcm_substream_t * substream) static int snd_cs4231_playback_prepare(struct snd_pcm_substream *substream)
{ {
cs4231_t *chip = snd_pcm_substream_chip(substream); struct snd_cs4231 *chip = snd_pcm_substream_chip(substream);
snd_pcm_runtime_t *runtime = substream->runtime; struct snd_pcm_runtime *runtime = substream->runtime;
unsigned long flags; unsigned long flags;
unsigned int size = snd_pcm_lib_buffer_bytes(substream); unsigned int size = snd_pcm_lib_buffer_bytes(substream);
unsigned int count = snd_pcm_lib_period_bytes(substream); unsigned int count = snd_pcm_lib_period_bytes(substream);
@ -864,10 +864,10 @@ static int snd_cs4231_playback_prepare(snd_pcm_substream_t * substream)
return 0; return 0;
} }
static int snd_cs4231_capture_hw_params(snd_pcm_substream_t * substream, static int snd_cs4231_capture_hw_params(struct snd_pcm_substream *substream,
snd_pcm_hw_params_t * hw_params) struct snd_pcm_hw_params *hw_params)
{ {
cs4231_t *chip = snd_pcm_substream_chip(substream); struct snd_cs4231 *chip = snd_pcm_substream_chip(substream);
unsigned char new_cdfr; unsigned char new_cdfr;
int err; int err;
@ -879,15 +879,15 @@ static int snd_cs4231_capture_hw_params(snd_pcm_substream_t * substream,
return 0; return 0;
} }
static int snd_cs4231_capture_hw_free(snd_pcm_substream_t * substream) static int snd_cs4231_capture_hw_free(struct snd_pcm_substream *substream)
{ {
return snd_pcm_lib_free_pages(substream); return snd_pcm_lib_free_pages(substream);
} }
static int snd_cs4231_capture_prepare(snd_pcm_substream_t * substream) static int snd_cs4231_capture_prepare(struct snd_pcm_substream *substream)
{ {
cs4231_t *chip = snd_pcm_substream_chip(substream); struct snd_cs4231 *chip = snd_pcm_substream_chip(substream);
snd_pcm_runtime_t *runtime = substream->runtime; struct snd_pcm_runtime *runtime = substream->runtime;
unsigned long flags; unsigned long flags;
unsigned int size = snd_pcm_lib_buffer_bytes(substream); unsigned int size = snd_pcm_lib_buffer_bytes(substream);
unsigned int count = snd_pcm_lib_period_bytes(substream); unsigned int count = snd_pcm_lib_period_bytes(substream);
@ -908,7 +908,7 @@ static int snd_cs4231_capture_prepare(snd_pcm_substream_t * substream)
return 0; return 0;
} }
static void snd_cs4231_overrange(cs4231_t *chip) static void snd_cs4231_overrange(struct snd_cs4231 *chip)
{ {
unsigned long flags; unsigned long flags;
unsigned char res; unsigned char res;
@ -922,7 +922,7 @@ static void snd_cs4231_overrange(cs4231_t *chip)
irqreturn_t snd_cs4231_interrupt(int irq, void *dev_id, struct pt_regs *regs) irqreturn_t snd_cs4231_interrupt(int irq, void *dev_id, struct pt_regs *regs)
{ {
cs4231_t *chip = dev_id; struct snd_cs4231 *chip = dev_id;
unsigned char status; unsigned char status;
status = snd_cs4231_in(chip, CS4231_IRQ_STATUS); status = snd_cs4231_in(chip, CS4231_IRQ_STATUS);
@ -962,9 +962,9 @@ irqreturn_t snd_cs4231_interrupt(int irq, void *dev_id, struct pt_regs *regs)
return IRQ_HANDLED; return IRQ_HANDLED;
} }
static snd_pcm_uframes_t snd_cs4231_playback_pointer(snd_pcm_substream_t * substream) static snd_pcm_uframes_t snd_cs4231_playback_pointer(struct snd_pcm_substream *substream)
{ {
cs4231_t *chip = snd_pcm_substream_chip(substream); struct snd_cs4231 *chip = snd_pcm_substream_chip(substream);
size_t ptr; size_t ptr;
if (!(chip->image[CS4231_IFACE_CTRL] & CS4231_PLAYBACK_ENABLE)) if (!(chip->image[CS4231_IFACE_CTRL] & CS4231_PLAYBACK_ENABLE))
@ -973,9 +973,9 @@ static snd_pcm_uframes_t snd_cs4231_playback_pointer(snd_pcm_substream_t * subst
return bytes_to_frames(substream->runtime, ptr); return bytes_to_frames(substream->runtime, ptr);
} }
static snd_pcm_uframes_t snd_cs4231_capture_pointer(snd_pcm_substream_t * substream) static snd_pcm_uframes_t snd_cs4231_capture_pointer(struct snd_pcm_substream *substream)
{ {
cs4231_t *chip = snd_pcm_substream_chip(substream); struct snd_cs4231 *chip = snd_pcm_substream_chip(substream);
size_t ptr; size_t ptr;
if (!(chip->image[CS4231_IFACE_CTRL] & CS4231_RECORD_ENABLE)) if (!(chip->image[CS4231_IFACE_CTRL] & CS4231_RECORD_ENABLE))
@ -988,7 +988,7 @@ static snd_pcm_uframes_t snd_cs4231_capture_pointer(snd_pcm_substream_t * substr
*/ */
static int snd_cs4231_probe(cs4231_t *chip) static int snd_cs4231_probe(struct snd_cs4231 *chip)
{ {
unsigned long flags; unsigned long flags;
int i, id, rev; int i, id, rev;
@ -1152,7 +1152,7 @@ static int snd_cs4231_probe(cs4231_t *chip)
*/ */
static snd_pcm_hardware_t snd_cs4231_playback = static struct snd_pcm_hardware snd_cs4231_playback =
{ {
.info = (SNDRV_PCM_INFO_MMAP | SNDRV_PCM_INFO_INTERLEAVED | .info = (SNDRV_PCM_INFO_MMAP | SNDRV_PCM_INFO_INTERLEAVED |
SNDRV_PCM_INFO_MMAP_VALID | SNDRV_PCM_INFO_MMAP_VALID |
@ -1173,7 +1173,7 @@ static snd_pcm_hardware_t snd_cs4231_playback =
.fifo_size = 0, .fifo_size = 0,
}; };
static snd_pcm_hardware_t snd_cs4231_capture = static struct snd_pcm_hardware snd_cs4231_capture =
{ {
.info = (SNDRV_PCM_INFO_MMAP | SNDRV_PCM_INFO_INTERLEAVED | .info = (SNDRV_PCM_INFO_MMAP | SNDRV_PCM_INFO_INTERLEAVED |
SNDRV_PCM_INFO_MMAP_VALID | SNDRV_PCM_INFO_MMAP_VALID |
@ -1198,10 +1198,10 @@ static snd_pcm_hardware_t snd_cs4231_capture =
*/ */
static int snd_cs4231_playback_open(snd_pcm_substream_t * substream) static int snd_cs4231_playback_open(struct snd_pcm_substream *substream)
{ {
cs4231_t *chip = snd_pcm_substream_chip(substream); struct snd_cs4231 *chip = snd_pcm_substream_chip(substream);
snd_pcm_runtime_t *runtime = substream->runtime; struct snd_pcm_runtime *runtime = substream->runtime;
int err; int err;
runtime->hw = snd_cs4231_playback; runtime->hw = snd_cs4231_playback;
@ -1235,10 +1235,10 @@ static int snd_cs4231_playback_open(snd_pcm_substream_t * substream)
return 0; return 0;
} }
static int snd_cs4231_capture_open(snd_pcm_substream_t * substream) static int snd_cs4231_capture_open(struct snd_pcm_substream *substream)
{ {
cs4231_t *chip = snd_pcm_substream_chip(substream); struct snd_cs4231 *chip = snd_pcm_substream_chip(substream);
snd_pcm_runtime_t *runtime = substream->runtime; struct snd_pcm_runtime *runtime = substream->runtime;
int err; int err;
runtime->hw = snd_cs4231_capture; runtime->hw = snd_cs4231_capture;
@ -1268,18 +1268,18 @@ static int snd_cs4231_capture_open(snd_pcm_substream_t * substream)
return 0; return 0;
} }
static int snd_cs4231_playback_close(snd_pcm_substream_t * substream) static int snd_cs4231_playback_close(struct snd_pcm_substream *substream)
{ {
cs4231_t *chip = snd_pcm_substream_chip(substream); struct snd_cs4231 *chip = snd_pcm_substream_chip(substream);
chip->playback_substream = NULL; chip->playback_substream = NULL;
snd_cs4231_close(chip, CS4231_MODE_PLAY); snd_cs4231_close(chip, CS4231_MODE_PLAY);
return 0; return 0;
} }
static int snd_cs4231_capture_close(snd_pcm_substream_t * substream) static int snd_cs4231_capture_close(struct snd_pcm_substream *substream)
{ {
cs4231_t *chip = snd_pcm_substream_chip(substream); struct snd_cs4231 *chip = snd_pcm_substream_chip(substream);
chip->capture_substream = NULL; chip->capture_substream = NULL;
snd_cs4231_close(chip, CS4231_MODE_RECORD); snd_cs4231_close(chip, CS4231_MODE_RECORD);
@ -1289,7 +1289,7 @@ static int snd_cs4231_capture_close(snd_pcm_substream_t * substream)
#ifdef CONFIG_PM #ifdef CONFIG_PM
/* lowlevel suspend callback for CS4231 */ /* lowlevel suspend callback for CS4231 */
static void snd_cs4231_suspend(cs4231_t *chip) static void snd_cs4231_suspend(struct snd_cs4231 *chip)
{ {
int reg; int reg;
unsigned long flags; unsigned long flags;
@ -1303,7 +1303,7 @@ static void snd_cs4231_suspend(cs4231_t *chip)
} }
/* lowlevel resume callback for CS4231 */ /* lowlevel resume callback for CS4231 */
static void snd_cs4231_resume(cs4231_t *chip) static void snd_cs4231_resume(struct snd_cs4231 *chip)
{ {
int reg; int reg;
unsigned long flags; unsigned long flags;
@ -1344,24 +1344,24 @@ static void snd_cs4231_resume(cs4231_t *chip)
#endif #endif
} }
static int snd_cs4231_pm_suspend(snd_card_t *card, pm_message_t state) static int snd_cs4231_pm_suspend(struct snd_card *card, pm_message_t state)
{ {
cs4231_t *chip = card->pm_private_data; struct snd_cs4231 *chip = card->pm_private_data;
if (chip->suspend) if (chip->suspend)
chip->suspend(chip); chip->suspend(chip);
return 0; return 0;
} }
static int snd_cs4231_pm_resume(snd_card_t *card) static int snd_cs4231_pm_resume(struct snd_card *card)
{ {
cs4231_t *chip = card->pm_private_data; struct snd_cs4231 *chip = card->pm_private_data;
if (chip->resume) if (chip->resume)
chip->resume(chip); chip->resume(chip);
return 0; return 0;
} }
#endif /* CONFIG_PM */ #endif /* CONFIG_PM */
static int snd_cs4231_free(cs4231_t *chip) static int snd_cs4231_free(struct snd_cs4231 *chip)
{ {
release_and_free_resource(chip->res_port); release_and_free_resource(chip->res_port);
release_and_free_resource(chip->res_cport); release_and_free_resource(chip->res_cport);
@ -1384,13 +1384,13 @@ static int snd_cs4231_free(cs4231_t *chip)
return 0; return 0;
} }
static int snd_cs4231_dev_free(snd_device_t *device) static int snd_cs4231_dev_free(struct snd_device *device)
{ {
cs4231_t *chip = device->device_data; struct snd_cs4231 *chip = device->device_data;
return snd_cs4231_free(chip); return snd_cs4231_free(chip);
} }
const char *snd_cs4231_chip_id(cs4231_t *chip) const char *snd_cs4231_chip_id(struct snd_cs4231 *chip)
{ {
switch (chip->hardware) { switch (chip->hardware) {
case CS4231_HW_CS4231: return "CS4231"; case CS4231_HW_CS4231: return "CS4231";
@ -1410,12 +1410,12 @@ const char *snd_cs4231_chip_id(cs4231_t *chip)
} }
} }
static int snd_cs4231_new(snd_card_t * card, static int snd_cs4231_new(struct snd_card *card,
unsigned short hardware, unsigned short hardware,
unsigned short hwshare, unsigned short hwshare,
cs4231_t ** rchip) struct snd_cs4231 ** rchip)
{ {
cs4231_t *chip; struct snd_cs4231 *chip;
*rchip = NULL; *rchip = NULL;
chip = kzalloc(sizeof(*chip), GFP_KERNEL); chip = kzalloc(sizeof(*chip), GFP_KERNEL);
@ -1437,18 +1437,18 @@ static int snd_cs4231_new(snd_card_t * card,
return 0; return 0;
} }
int snd_cs4231_create(snd_card_t * card, int snd_cs4231_create(struct snd_card *card,
unsigned long port, unsigned long port,
unsigned long cport, unsigned long cport,
int irq, int dma1, int dma2, int irq, int dma1, int dma2,
unsigned short hardware, unsigned short hardware,
unsigned short hwshare, unsigned short hwshare,
cs4231_t ** rchip) struct snd_cs4231 ** rchip)
{ {
static snd_device_ops_t ops = { static struct snd_device_ops ops = {
.dev_free = snd_cs4231_dev_free, .dev_free = snd_cs4231_dev_free,
}; };
cs4231_t *chip; struct snd_cs4231 *chip;
int err; int err;
err = snd_cs4231_new(card, hardware, hwshare, &chip); err = snd_cs4231_new(card, hardware, hwshare, &chip);
@ -1523,7 +1523,7 @@ int snd_cs4231_create(snd_card_t * card,
return 0; return 0;
} }
static snd_pcm_ops_t snd_cs4231_playback_ops = { static struct snd_pcm_ops snd_cs4231_playback_ops = {
.open = snd_cs4231_playback_open, .open = snd_cs4231_playback_open,
.close = snd_cs4231_playback_close, .close = snd_cs4231_playback_close,
.ioctl = snd_pcm_lib_ioctl, .ioctl = snd_pcm_lib_ioctl,
@ -1534,7 +1534,7 @@ static snd_pcm_ops_t snd_cs4231_playback_ops = {
.pointer = snd_cs4231_playback_pointer, .pointer = snd_cs4231_playback_pointer,
}; };
static snd_pcm_ops_t snd_cs4231_capture_ops = { static struct snd_pcm_ops snd_cs4231_capture_ops = {
.open = snd_cs4231_capture_open, .open = snd_cs4231_capture_open,
.close = snd_cs4231_capture_close, .close = snd_cs4231_capture_close,
.ioctl = snd_pcm_lib_ioctl, .ioctl = snd_pcm_lib_ioctl,
@ -1545,9 +1545,9 @@ static snd_pcm_ops_t snd_cs4231_capture_ops = {
.pointer = snd_cs4231_capture_pointer, .pointer = snd_cs4231_capture_pointer,
}; };
int snd_cs4231_pcm(cs4231_t *chip, int device, snd_pcm_t **rpcm) int snd_cs4231_pcm(struct snd_cs4231 *chip, int device, struct snd_pcm **rpcm)
{ {
snd_pcm_t *pcm; struct snd_pcm *pcm;
int err; int err;
if ((err = snd_pcm_new(chip->card, "CS4231", device, 1, 1, &pcm)) < 0) if ((err = snd_pcm_new(chip->card, "CS4231", device, 1, 1, &pcm)) < 0)
@ -1579,16 +1579,16 @@ int snd_cs4231_pcm(cs4231_t *chip, int device, snd_pcm_t **rpcm)
return 0; return 0;
} }
static void snd_cs4231_timer_free(snd_timer_t *timer) static void snd_cs4231_timer_free(struct snd_timer *timer)
{ {
cs4231_t *chip = timer->private_data; struct snd_cs4231 *chip = timer->private_data;
chip->timer = NULL; chip->timer = NULL;
} }
int snd_cs4231_timer(cs4231_t *chip, int device, snd_timer_t **rtimer) int snd_cs4231_timer(struct snd_cs4231 *chip, int device, struct snd_timer **rtimer)
{ {
snd_timer_t *timer; struct snd_timer *timer;
snd_timer_id_t tid; struct snd_timer_id tid;
int err; int err;
/* Timer initialization */ /* Timer initialization */
@ -1613,7 +1613,7 @@ int snd_cs4231_timer(cs4231_t *chip, int device, snd_timer_t **rtimer)
* MIXER part * MIXER part
*/ */
static int snd_cs4231_info_mux(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t * uinfo) static int snd_cs4231_info_mux(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo)
{ {
static char *texts[4] = { static char *texts[4] = {
"Line", "Aux", "Mic", "Mix" "Line", "Aux", "Mic", "Mix"
@ -1625,7 +1625,7 @@ static int snd_cs4231_info_mux(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t * u
"Line", "Synth", "Mic", "Mix" "Line", "Synth", "Mic", "Mix"
}; };
char **ptexts = texts; char **ptexts = texts;
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
snd_assert(chip->card != NULL, return -EINVAL); snd_assert(chip->card != NULL, return -EINVAL);
uinfo->type = SNDRV_CTL_ELEM_TYPE_ENUMERATED; uinfo->type = SNDRV_CTL_ELEM_TYPE_ENUMERATED;
@ -1643,9 +1643,9 @@ static int snd_cs4231_info_mux(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t * u
return 0; return 0;
} }
static int snd_cs4231_get_mux(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) static int snd_cs4231_get_mux(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
spin_lock_irqsave(&chip->reg_lock, flags); spin_lock_irqsave(&chip->reg_lock, flags);
@ -1655,9 +1655,9 @@ static int snd_cs4231_get_mux(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t *
return 0; return 0;
} }
static int snd_cs4231_put_mux(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) static int snd_cs4231_put_mux(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
unsigned short left, right; unsigned short left, right;
int change; int change;
@ -1678,7 +1678,7 @@ static int snd_cs4231_put_mux(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t *
return change; return change;
} }
int snd_cs4231_info_single(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t * uinfo) int snd_cs4231_info_single(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo)
{ {
int mask = (kcontrol->private_value >> 16) & 0xff; int mask = (kcontrol->private_value >> 16) & 0xff;
@ -1689,9 +1689,9 @@ int snd_cs4231_info_single(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t * uinfo
return 0; return 0;
} }
int snd_cs4231_get_single(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) int snd_cs4231_get_single(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
int reg = kcontrol->private_value & 0xff; int reg = kcontrol->private_value & 0xff;
int shift = (kcontrol->private_value >> 8) & 0xff; int shift = (kcontrol->private_value >> 8) & 0xff;
@ -1706,9 +1706,9 @@ int snd_cs4231_get_single(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucon
return 0; return 0;
} }
int snd_cs4231_put_single(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) int snd_cs4231_put_single(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
int reg = kcontrol->private_value & 0xff; int reg = kcontrol->private_value & 0xff;
int shift = (kcontrol->private_value >> 8) & 0xff; int shift = (kcontrol->private_value >> 8) & 0xff;
@ -1729,7 +1729,7 @@ int snd_cs4231_put_single(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucon
return change; return change;
} }
int snd_cs4231_info_double(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t * uinfo) int snd_cs4231_info_double(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo)
{ {
int mask = (kcontrol->private_value >> 24) & 0xff; int mask = (kcontrol->private_value >> 24) & 0xff;
@ -1740,9 +1740,9 @@ int snd_cs4231_info_double(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t * uinfo
return 0; return 0;
} }
int snd_cs4231_get_double(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) int snd_cs4231_get_double(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
int left_reg = kcontrol->private_value & 0xff; int left_reg = kcontrol->private_value & 0xff;
int right_reg = (kcontrol->private_value >> 8) & 0xff; int right_reg = (kcontrol->private_value >> 8) & 0xff;
@ -1762,9 +1762,9 @@ int snd_cs4231_get_double(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucon
return 0; return 0;
} }
int snd_cs4231_put_double(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) int snd_cs4231_put_double(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
int left_reg = kcontrol->private_value & 0xff; int left_reg = kcontrol->private_value & 0xff;
int right_reg = (kcontrol->private_value >> 8) & 0xff; int right_reg = (kcontrol->private_value >> 8) & 0xff;
@ -1793,7 +1793,7 @@ int snd_cs4231_put_double(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucon
return change; return change;
} }
static snd_kcontrol_new_t snd_cs4231_controls[] = { static struct snd_kcontrol_new snd_cs4231_controls[] = {
CS4231_DOUBLE("PCM Playback Switch", 0, CS4231_LEFT_OUTPUT, CS4231_RIGHT_OUTPUT, 7, 7, 1, 1), CS4231_DOUBLE("PCM Playback Switch", 0, CS4231_LEFT_OUTPUT, CS4231_RIGHT_OUTPUT, 7, 7, 1, 1),
CS4231_DOUBLE("PCM Playback Volume", 0, CS4231_LEFT_OUTPUT, CS4231_RIGHT_OUTPUT, 0, 0, 63, 1), CS4231_DOUBLE("PCM Playback Volume", 0, CS4231_LEFT_OUTPUT, CS4231_RIGHT_OUTPUT, 0, 0, 63, 1),
CS4231_DOUBLE("Line Playback Switch", 0, CS4231_LEFT_LINE_IN, CS4231_RIGHT_LINE_IN, 7, 7, 1, 1), CS4231_DOUBLE("Line Playback Switch", 0, CS4231_LEFT_LINE_IN, CS4231_RIGHT_LINE_IN, 7, 7, 1, 1),
@ -1819,9 +1819,9 @@ CS4231_SINGLE("Loopback Capture Switch", 0, CS4231_LOOPBACK, 0, 1, 0),
CS4231_SINGLE("Loopback Capture Volume", 0, CS4231_LOOPBACK, 2, 63, 1) CS4231_SINGLE("Loopback Capture Volume", 0, CS4231_LOOPBACK, 2, 63, 1)
}; };
int snd_cs4231_mixer(cs4231_t *chip) int snd_cs4231_mixer(struct snd_cs4231 *chip)
{ {
snd_card_t *card; struct snd_card *card;
unsigned int idx; unsigned int idx;
int err; int err;

View File

@ -131,7 +131,7 @@ struct snd_card_cs4236 {
#endif #endif
}; };
static snd_card_t *snd_cs4236_legacy[SNDRV_CARDS] = SNDRV_DEFAULT_PTR; static struct snd_card *snd_cs4236_legacy[SNDRV_CARDS] = SNDRV_DEFAULT_PTR;
#ifdef CONFIG_PNP #ifdef CONFIG_PNP
@ -375,7 +375,7 @@ static int __devinit snd_card_cs4236_pnp(int dev, struct snd_card_cs4236 *acard,
} }
#endif /* CONFIG_PNP */ #endif /* CONFIG_PNP */
static void snd_card_cs4236_free(snd_card_t *card) static void snd_card_cs4236_free(struct snd_card *card)
{ {
struct snd_card_cs4236 *acard = (struct snd_card_cs4236 *)card->private_data; struct snd_card_cs4236 *acard = (struct snd_card_cs4236 *)card->private_data;
@ -392,11 +392,11 @@ static void snd_card_cs4236_free(snd_card_t *card)
static int __devinit snd_card_cs423x_probe(int dev, struct pnp_card_link *pcard, static int __devinit snd_card_cs423x_probe(int dev, struct pnp_card_link *pcard,
const struct pnp_card_device_id *pid) const struct pnp_card_device_id *pid)
{ {
snd_card_t *card; struct snd_card *card;
struct snd_card_cs4236 *acard; struct snd_card_cs4236 *acard;
snd_pcm_t *pcm = NULL; struct snd_pcm *pcm = NULL;
cs4231_t *chip; struct snd_cs4231 *chip;
opl3_t *opl3; struct snd_opl3 *opl3;
int err; int err;
if (! is_isapnp_selected(dev)) { if (! is_isapnp_selected(dev)) {
@ -538,7 +538,7 @@ static int __devinit snd_cs423x_pnp_detect(struct pnp_card_link *card,
static void __devexit snd_cs423x_pnp_remove(struct pnp_card_link * pcard) static void __devexit snd_cs423x_pnp_remove(struct pnp_card_link * pcard)
{ {
snd_card_t *card = (snd_card_t *) pnp_get_card_drvdata(pcard); struct snd_card *card = (struct snd_card *) pnp_get_card_drvdata(pcard);
snd_card_disconnect(card); snd_card_disconnect(card);
snd_card_free_in_thread(card); snd_card_free_in_thread(card);

View File

@ -122,13 +122,13 @@ static unsigned char snd_cs4236_ext_map[18] = {
* *
*/ */
static void snd_cs4236_ctrl_out(cs4231_t *chip, unsigned char reg, unsigned char val) static void snd_cs4236_ctrl_out(struct snd_cs4231 *chip, unsigned char reg, unsigned char val)
{ {
outb(reg, chip->cport + 3); outb(reg, chip->cport + 3);
outb(chip->cimage[reg] = val, chip->cport + 4); outb(chip->cimage[reg] = val, chip->cport + 4);
} }
static unsigned char snd_cs4236_ctrl_in(cs4231_t *chip, unsigned char reg) static unsigned char snd_cs4236_ctrl_in(struct snd_cs4231 *chip, unsigned char reg)
{ {
outb(reg, chip->cport + 3); outb(reg, chip->cport + 3);
return inb(chip->cport + 4); return inb(chip->cport + 4);
@ -140,7 +140,7 @@ static unsigned char snd_cs4236_ctrl_in(cs4231_t *chip, unsigned char reg)
#define CLOCKS 8 #define CLOCKS 8
static ratnum_t clocks[CLOCKS] = { static struct snd_ratnum clocks[CLOCKS] = {
{ .num = 16934400, .den_min = 353, .den_max = 353, .den_step = 1 }, { .num = 16934400, .den_min = 353, .den_max = 353, .den_step = 1 },
{ .num = 16934400, .den_min = 529, .den_max = 529, .den_step = 1 }, { .num = 16934400, .den_min = 529, .den_max = 529, .den_step = 1 },
{ .num = 16934400, .den_min = 617, .den_max = 617, .den_step = 1 }, { .num = 16934400, .den_min = 617, .den_max = 617, .den_step = 1 },
@ -151,12 +151,12 @@ static ratnum_t clocks[CLOCKS] = {
{ .num = 16934400/16, .den_min = 21, .den_max = 192, .den_step = 1 } { .num = 16934400/16, .den_min = 21, .den_max = 192, .den_step = 1 }
}; };
static snd_pcm_hw_constraint_ratnums_t hw_constraints_clocks = { static struct snd_pcm_hw_constraint_ratnums hw_constraints_clocks = {
.nrats = CLOCKS, .nrats = CLOCKS,
.rats = clocks, .rats = clocks,
}; };
static int snd_cs4236_xrate(snd_pcm_runtime_t *runtime) static int snd_cs4236_xrate(struct snd_pcm_runtime *runtime)
{ {
return snd_pcm_hw_constraint_ratnums(runtime, 0, SNDRV_PCM_HW_PARAM_RATE, return snd_pcm_hw_constraint_ratnums(runtime, 0, SNDRV_PCM_HW_PARAM_RATE,
&hw_constraints_clocks); &hw_constraints_clocks);
@ -181,7 +181,7 @@ static unsigned char divisor_to_rate_register(unsigned int divisor)
} }
} }
static void snd_cs4236_playback_format(cs4231_t *chip, snd_pcm_hw_params_t *params, unsigned char pdfr) static void snd_cs4236_playback_format(struct snd_cs4231 *chip, struct snd_pcm_hw_params *params, unsigned char pdfr)
{ {
unsigned long flags; unsigned long flags;
unsigned char rate = divisor_to_rate_register(params->rate_den); unsigned char rate = divisor_to_rate_register(params->rate_den);
@ -195,7 +195,7 @@ static void snd_cs4236_playback_format(cs4231_t *chip, snd_pcm_hw_params_t *para
spin_unlock_irqrestore(&chip->reg_lock, flags); spin_unlock_irqrestore(&chip->reg_lock, flags);
} }
static void snd_cs4236_capture_format(cs4231_t *chip, snd_pcm_hw_params_t *params, unsigned char cdfr) static void snd_cs4236_capture_format(struct snd_cs4231 *chip, struct snd_pcm_hw_params *params, unsigned char cdfr)
{ {
unsigned long flags; unsigned long flags;
unsigned char rate = divisor_to_rate_register(params->rate_den); unsigned char rate = divisor_to_rate_register(params->rate_den);
@ -211,7 +211,7 @@ static void snd_cs4236_capture_format(cs4231_t *chip, snd_pcm_hw_params_t *param
#ifdef CONFIG_PM #ifdef CONFIG_PM
static void snd_cs4236_suspend(cs4231_t *chip) static void snd_cs4236_suspend(struct snd_cs4231 *chip)
{ {
int reg; int reg;
unsigned long flags; unsigned long flags;
@ -226,7 +226,7 @@ static void snd_cs4236_suspend(cs4231_t *chip)
spin_unlock_irqrestore(&chip->reg_lock, flags); spin_unlock_irqrestore(&chip->reg_lock, flags);
} }
static void snd_cs4236_resume(cs4231_t *chip) static void snd_cs4236_resume(struct snd_cs4231 *chip)
{ {
int reg; int reg;
unsigned long flags; unsigned long flags;
@ -261,15 +261,15 @@ static void snd_cs4236_resume(cs4231_t *chip)
#endif /* CONFIG_PM */ #endif /* CONFIG_PM */
int snd_cs4236_create(snd_card_t * card, int snd_cs4236_create(struct snd_card *card,
unsigned long port, unsigned long port,
unsigned long cport, unsigned long cport,
int irq, int dma1, int dma2, int irq, int dma1, int dma2,
unsigned short hardware, unsigned short hardware,
unsigned short hwshare, unsigned short hwshare,
cs4231_t ** rchip) struct snd_cs4231 ** rchip)
{ {
cs4231_t *chip; struct snd_cs4231 *chip;
unsigned char ver1, ver2; unsigned char ver1, ver2;
unsigned int reg; unsigned int reg;
int err; int err;
@ -352,9 +352,9 @@ int snd_cs4236_create(snd_card_t * card,
return 0; return 0;
} }
int snd_cs4236_pcm(cs4231_t *chip, int device, snd_pcm_t **rpcm) int snd_cs4236_pcm(struct snd_cs4231 *chip, int device, struct snd_pcm **rpcm)
{ {
snd_pcm_t *pcm; struct snd_pcm *pcm;
int err; int err;
if ((err = snd_cs4231_pcm(chip, device, &pcm)) < 0) if ((err = snd_cs4231_pcm(chip, device, &pcm)) < 0)
@ -375,7 +375,7 @@ int snd_cs4236_pcm(cs4231_t *chip, int device, snd_pcm_t **rpcm)
.get = snd_cs4236_get_single, .put = snd_cs4236_put_single, \ .get = snd_cs4236_get_single, .put = snd_cs4236_put_single, \
.private_value = reg | (shift << 8) | (mask << 16) | (invert << 24) } .private_value = reg | (shift << 8) | (mask << 16) | (invert << 24) }
static int snd_cs4236_info_single(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t * uinfo) static int snd_cs4236_info_single(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo)
{ {
int mask = (kcontrol->private_value >> 16) & 0xff; int mask = (kcontrol->private_value >> 16) & 0xff;
@ -386,9 +386,9 @@ static int snd_cs4236_info_single(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t
return 0; return 0;
} }
static int snd_cs4236_get_single(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) static int snd_cs4236_get_single(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
int reg = kcontrol->private_value & 0xff; int reg = kcontrol->private_value & 0xff;
int shift = (kcontrol->private_value >> 8) & 0xff; int shift = (kcontrol->private_value >> 8) & 0xff;
@ -403,9 +403,9 @@ static int snd_cs4236_get_single(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t
return 0; return 0;
} }
static int snd_cs4236_put_single(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) static int snd_cs4236_put_single(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
int reg = kcontrol->private_value & 0xff; int reg = kcontrol->private_value & 0xff;
int shift = (kcontrol->private_value >> 8) & 0xff; int shift = (kcontrol->private_value >> 8) & 0xff;
@ -432,9 +432,9 @@ static int snd_cs4236_put_single(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t
.get = snd_cs4236_get_singlec, .put = snd_cs4236_put_singlec, \ .get = snd_cs4236_get_singlec, .put = snd_cs4236_put_singlec, \
.private_value = reg | (shift << 8) | (mask << 16) | (invert << 24) } .private_value = reg | (shift << 8) | (mask << 16) | (invert << 24) }
static int snd_cs4236_get_singlec(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) static int snd_cs4236_get_singlec(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
int reg = kcontrol->private_value & 0xff; int reg = kcontrol->private_value & 0xff;
int shift = (kcontrol->private_value >> 8) & 0xff; int shift = (kcontrol->private_value >> 8) & 0xff;
@ -449,9 +449,9 @@ static int snd_cs4236_get_singlec(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_
return 0; return 0;
} }
static int snd_cs4236_put_singlec(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) static int snd_cs4236_put_singlec(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
int reg = kcontrol->private_value & 0xff; int reg = kcontrol->private_value & 0xff;
int shift = (kcontrol->private_value >> 8) & 0xff; int shift = (kcontrol->private_value >> 8) & 0xff;
@ -478,7 +478,7 @@ static int snd_cs4236_put_singlec(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_
.get = snd_cs4236_get_double, .put = snd_cs4236_put_double, \ .get = snd_cs4236_get_double, .put = snd_cs4236_put_double, \
.private_value = left_reg | (right_reg << 8) | (shift_left << 16) | (shift_right << 19) | (mask << 24) | (invert << 22) } .private_value = left_reg | (right_reg << 8) | (shift_left << 16) | (shift_right << 19) | (mask << 24) | (invert << 22) }
static int snd_cs4236_info_double(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t * uinfo) static int snd_cs4236_info_double(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo)
{ {
int mask = (kcontrol->private_value >> 24) & 0xff; int mask = (kcontrol->private_value >> 24) & 0xff;
@ -489,9 +489,9 @@ static int snd_cs4236_info_double(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t
return 0; return 0;
} }
static int snd_cs4236_get_double(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) static int snd_cs4236_get_double(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
int left_reg = kcontrol->private_value & 0xff; int left_reg = kcontrol->private_value & 0xff;
int right_reg = (kcontrol->private_value >> 8) & 0xff; int right_reg = (kcontrol->private_value >> 8) & 0xff;
@ -511,9 +511,9 @@ static int snd_cs4236_get_double(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t
return 0; return 0;
} }
static int snd_cs4236_put_double(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) static int snd_cs4236_put_double(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
int left_reg = kcontrol->private_value & 0xff; int left_reg = kcontrol->private_value & 0xff;
int right_reg = (kcontrol->private_value >> 8) & 0xff; int right_reg = (kcontrol->private_value >> 8) & 0xff;
@ -554,9 +554,9 @@ static int snd_cs4236_put_double(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t
.get = snd_cs4236_get_double1, .put = snd_cs4236_put_double1, \ .get = snd_cs4236_get_double1, .put = snd_cs4236_put_double1, \
.private_value = left_reg | (right_reg << 8) | (shift_left << 16) | (shift_right << 19) | (mask << 24) | (invert << 22) } .private_value = left_reg | (right_reg << 8) | (shift_left << 16) | (shift_right << 19) | (mask << 24) | (invert << 22) }
static int snd_cs4236_get_double1(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) static int snd_cs4236_get_double1(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
int left_reg = kcontrol->private_value & 0xff; int left_reg = kcontrol->private_value & 0xff;
int right_reg = (kcontrol->private_value >> 8) & 0xff; int right_reg = (kcontrol->private_value >> 8) & 0xff;
@ -576,9 +576,9 @@ static int snd_cs4236_get_double1(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_
return 0; return 0;
} }
static int snd_cs4236_put_double1(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) static int snd_cs4236_put_double1(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
int left_reg = kcontrol->private_value & 0xff; int left_reg = kcontrol->private_value & 0xff;
int right_reg = (kcontrol->private_value >> 8) & 0xff; int right_reg = (kcontrol->private_value >> 8) & 0xff;
@ -618,9 +618,9 @@ static inline int snd_cs4236_mixer_master_digital_invert_volume(int vol)
return (vol < 64) ? 63 - vol : 64 + (71 - vol); return (vol < 64) ? 63 - vol : 64 + (71 - vol);
} }
static int snd_cs4236_get_master_digital(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) static int snd_cs4236_get_master_digital(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
spin_lock_irqsave(&chip->reg_lock, flags); spin_lock_irqsave(&chip->reg_lock, flags);
@ -630,9 +630,9 @@ static int snd_cs4236_get_master_digital(snd_kcontrol_t * kcontrol, snd_ctl_elem
return 0; return 0;
} }
static int snd_cs4236_put_master_digital(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) static int snd_cs4236_put_master_digital(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
int change; int change;
unsigned short val1, val2; unsigned short val1, val2;
@ -677,9 +677,9 @@ static inline int snd_cs4235_mixer_output_accu_set_volume(int vol)
return 1 << 5; return 1 << 5;
} }
static int snd_cs4235_get_output_accu(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) static int snd_cs4235_get_output_accu(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
spin_lock_irqsave(&chip->reg_lock, flags); spin_lock_irqsave(&chip->reg_lock, flags);
@ -689,9 +689,9 @@ static int snd_cs4235_get_output_accu(snd_kcontrol_t * kcontrol, snd_ctl_elem_va
return 0; return 0;
} }
static int snd_cs4235_put_output_accu(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) static int snd_cs4235_put_output_accu(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
int change; int change;
unsigned short val1, val2; unsigned short val1, val2;
@ -708,7 +708,7 @@ static int snd_cs4235_put_output_accu(snd_kcontrol_t * kcontrol, snd_ctl_elem_va
return change; return change;
} }
static snd_kcontrol_new_t snd_cs4236_controls[] = { static struct snd_kcontrol_new snd_cs4236_controls[] = {
CS4236_DOUBLE("Master Digital Playback Switch", 0, CS4236_LEFT_MASTER, CS4236_RIGHT_MASTER, 7, 7, 1, 1), CS4236_DOUBLE("Master Digital Playback Switch", 0, CS4236_LEFT_MASTER, CS4236_RIGHT_MASTER, 7, 7, 1, 1),
CS4236_DOUBLE("Master Digital Capture Switch", 0, CS4236_DAC_MUTE, CS4236_DAC_MUTE, 7, 6, 1, 1), CS4236_DOUBLE("Master Digital Capture Switch", 0, CS4236_DAC_MUTE, CS4236_DAC_MUTE, 7, 6, 1, 1),
@ -759,7 +759,7 @@ CS4231_SINGLE("Digital Loopback Playback Switch", 0, CS4231_LOOPBACK, 0, 1, 0),
CS4236_DOUBLE1("Digital Loopback Playback Volume", 0, CS4231_LOOPBACK, CS4236_RIGHT_LOOPBACK, 2, 0, 63, 1) CS4236_DOUBLE1("Digital Loopback Playback Volume", 0, CS4231_LOOPBACK, CS4236_RIGHT_LOOPBACK, 2, 0, 63, 1)
}; };
static snd_kcontrol_new_t snd_cs4235_controls[] = { static struct snd_kcontrol_new snd_cs4235_controls[] = {
CS4231_DOUBLE("Master Switch", 0, CS4235_LEFT_MASTER, CS4235_RIGHT_MASTER, 7, 7, 1, 1), CS4231_DOUBLE("Master Switch", 0, CS4235_LEFT_MASTER, CS4235_RIGHT_MASTER, 7, 7, 1, 1),
CS4231_DOUBLE("Master Volume", 0, CS4235_LEFT_MASTER, CS4235_RIGHT_MASTER, 0, 0, 31, 1), CS4231_DOUBLE("Master Volume", 0, CS4235_LEFT_MASTER, CS4235_RIGHT_MASTER, 0, 0, 31, 1),
@ -812,9 +812,9 @@ CS4231_DOUBLE("Analog Loopback Switch", 0, CS4231_LEFT_INPUT, CS4231_RIGHT_INPUT
.get = snd_cs4236_get_iec958_switch, .put = snd_cs4236_put_iec958_switch, \ .get = snd_cs4236_get_iec958_switch, .put = snd_cs4236_put_iec958_switch, \
.private_value = 1 << 16 } .private_value = 1 << 16 }
static int snd_cs4236_get_iec958_switch(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) static int snd_cs4236_get_iec958_switch(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
spin_lock_irqsave(&chip->reg_lock, flags); spin_lock_irqsave(&chip->reg_lock, flags);
@ -832,9 +832,9 @@ static int snd_cs4236_get_iec958_switch(snd_kcontrol_t * kcontrol, snd_ctl_elem_
return 0; return 0;
} }
static int snd_cs4236_put_iec958_switch(snd_kcontrol_t * kcontrol, snd_ctl_elem_value_t * ucontrol) static int snd_cs4236_put_iec958_switch(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
cs4231_t *chip = snd_kcontrol_chip(kcontrol); struct snd_cs4231 *chip = snd_kcontrol_chip(kcontrol);
unsigned long flags; unsigned long flags;
int change; int change;
unsigned short enable, val; unsigned short enable, val;
@ -868,7 +868,7 @@ static int snd_cs4236_put_iec958_switch(snd_kcontrol_t * kcontrol, snd_ctl_elem_
return change; return change;
} }
static snd_kcontrol_new_t snd_cs4236_iec958_controls[] = { static struct snd_kcontrol_new snd_cs4236_iec958_controls[] = {
CS4236_IEC958_ENABLE("IEC958 Output Enable", 0), CS4236_IEC958_ENABLE("IEC958 Output Enable", 0),
CS4236_SINGLEC("IEC958 Output Validity", 0, 4, 4, 1, 0), CS4236_SINGLEC("IEC958 Output Validity", 0, 4, 4, 1, 0),
CS4236_SINGLEC("IEC958 Output User", 0, 4, 5, 1, 0), CS4236_SINGLEC("IEC958 Output User", 0, 4, 5, 1, 0),
@ -877,12 +877,12 @@ CS4236_SINGLEC("IEC958 Output Channel Status Low", 0, 5, 1, 127, 0),
CS4236_SINGLEC("IEC958 Output Channel Status High", 0, 6, 0, 255, 0) CS4236_SINGLEC("IEC958 Output Channel Status High", 0, 6, 0, 255, 0)
}; };
static snd_kcontrol_new_t snd_cs4236_3d_controls_cs4235[] = { static struct snd_kcontrol_new snd_cs4236_3d_controls_cs4235[] = {
CS4236_SINGLEC("3D Control - Switch", 0, 3, 4, 1, 0), CS4236_SINGLEC("3D Control - Switch", 0, 3, 4, 1, 0),
CS4236_SINGLEC("3D Control - Space", 0, 2, 4, 15, 1) CS4236_SINGLEC("3D Control - Space", 0, 2, 4, 15, 1)
}; };
static snd_kcontrol_new_t snd_cs4236_3d_controls_cs4237[] = { static struct snd_kcontrol_new snd_cs4236_3d_controls_cs4237[] = {
CS4236_SINGLEC("3D Control - Switch", 0, 3, 7, 1, 0), CS4236_SINGLEC("3D Control - Switch", 0, 3, 7, 1, 0),
CS4236_SINGLEC("3D Control - Space", 0, 2, 4, 15, 1), CS4236_SINGLEC("3D Control - Space", 0, 2, 4, 15, 1),
CS4236_SINGLEC("3D Control - Center", 0, 2, 0, 15, 1), CS4236_SINGLEC("3D Control - Center", 0, 2, 0, 15, 1),
@ -890,19 +890,19 @@ CS4236_SINGLEC("3D Control - Mono", 0, 3, 6, 1, 0),
CS4236_SINGLEC("3D Control - IEC958", 0, 3, 5, 1, 0) CS4236_SINGLEC("3D Control - IEC958", 0, 3, 5, 1, 0)
}; };
static snd_kcontrol_new_t snd_cs4236_3d_controls_cs4238[] = { static struct snd_kcontrol_new snd_cs4236_3d_controls_cs4238[] = {
CS4236_SINGLEC("3D Control - Switch", 0, 3, 4, 1, 0), CS4236_SINGLEC("3D Control - Switch", 0, 3, 4, 1, 0),
CS4236_SINGLEC("3D Control - Space", 0, 2, 4, 15, 1), CS4236_SINGLEC("3D Control - Space", 0, 2, 4, 15, 1),
CS4236_SINGLEC("3D Control - Volume", 0, 2, 0, 15, 1), CS4236_SINGLEC("3D Control - Volume", 0, 2, 0, 15, 1),
CS4236_SINGLEC("3D Control - IEC958", 0, 3, 5, 1, 0) CS4236_SINGLEC("3D Control - IEC958", 0, 3, 5, 1, 0)
}; };
int snd_cs4236_mixer(cs4231_t *chip) int snd_cs4236_mixer(struct snd_cs4231 *chip)
{ {
snd_card_t *card; struct snd_card *card;
unsigned int idx, count; unsigned int idx, count;
int err; int err;
snd_kcontrol_new_t *kcontrol; struct snd_kcontrol_new *kcontrol;
snd_assert(chip != NULL && chip->card != NULL, return -EINVAL); snd_assert(chip != NULL && chip->card != NULL, return -EINVAL);
card = chip->card; card = chip->card;