aboutsummaryrefslogtreecommitdiff
path: root/sound/isa
diff options
context:
space:
mode:
Diffstat (limited to 'sound/isa')
-rw-r--r--sound/isa/Kconfig171
-rw-r--r--sound/isa/ad1816a/Makefile5
-rw-r--r--sound/isa/ad1816a/ad1816a.c26
-rw-r--r--sound/isa/ad1816a/ad1816a_lib.c209
-rw-r--r--sound/isa/ad1848/ad1848.c105
-rw-r--r--sound/isa/ad1848/ad1848_lib.c206
-rw-r--r--sound/isa/als100.c57
-rw-r--r--sound/isa/azt2320.c52
-rw-r--r--sound/isa/cmi8330.c299
-rw-r--r--sound/isa/cs423x/cs4231.c110
-rw-r--r--sound/isa/cs423x/cs4231_lib.c334
-rw-r--r--sound/isa/cs423x/cs4236.c591
-rw-r--r--sound/isa/cs423x/cs4236_lib.c106
-rw-r--r--sound/isa/dt019x.c57
-rw-r--r--sound/isa/es1688/es1688.c130
-rw-r--r--sound/isa/es1688/es1688_lib.c158
-rw-r--r--sound/isa/es18xx.c630
-rw-r--r--sound/isa/gus/gus_dma.c24
-rw-r--r--sound/isa/gus/gus_dram.c8
-rw-r--r--sound/isa/gus/gus_instr.c42
-rw-r--r--sound/isa/gus/gus_io.c72
-rw-r--r--sound/isa/gus/gus_irq.c16
-rw-r--r--sound/isa/gus/gus_main.c54
-rw-r--r--sound/isa/gus/gus_mem.c64
-rw-r--r--sound/isa/gus/gus_mem_proc.c26
-rw-r--r--sound/isa/gus/gus_mixer.c28
-rw-r--r--sound/isa/gus/gus_pcm.c202
-rw-r--r--sound/isa/gus/gus_reset.c54
-rw-r--r--sound/isa/gus/gus_sample.c42
-rw-r--r--sound/isa/gus/gus_simple.c86
-rw-r--r--sound/isa/gus/gus_synth.c90
-rw-r--r--sound/isa/gus/gus_timer.c44
-rw-r--r--sound/isa/gus/gus_uart.c38
-rw-r--r--sound/isa/gus/gus_volume.c4
-rw-r--r--sound/isa/gus/gusclassic.c136
-rw-r--r--sound/isa/gus/gusextreme.c150
-rw-r--r--sound/isa/gus/gusmax.c153
-rw-r--r--sound/isa/gus/interwave.c368
-rw-r--r--sound/isa/opl3sa2.c556
-rw-r--r--sound/isa/opti9xx/opti92x-ad1848.c720
-rw-r--r--sound/isa/sb/emu8000.c121
-rw-r--r--sound/isa/sb/emu8000_callback.c107
-rw-r--r--sound/isa/sb/emu8000_local.h13
-rw-r--r--sound/isa/sb/emu8000_patch.c20
-rw-r--r--sound/isa/sb/emu8000_pcm.c104
-rw-r--r--sound/isa/sb/emu8000_synth.c17
-rw-r--r--sound/isa/sb/es968.c53
-rw-r--r--sound/isa/sb/sb16.c369
-rw-r--r--sound/isa/sb/sb16_csp.c174
-rw-r--r--sound/isa/sb/sb16_main.c130
-rw-r--r--sound/isa/sb/sb8.c176
-rw-r--r--sound/isa/sb/sb8_main.c94
-rw-r--r--sound/isa/sb/sb8_midi.c44
-rw-r--r--sound/isa/sb/sb_common.c28
-rw-r--r--sound/isa/sb/sb_mixer.c262
-rw-r--r--sound/isa/sgalaxy.c117
-rw-r--r--sound/isa/sscape.c373
-rw-r--r--sound/isa/wavefront/wavefront.c316
-rw-r--r--sound/isa/wavefront/wavefront_fx.c8
-rw-r--r--sound/isa/wavefront/wavefront_midi.c22
-rw-r--r--sound/isa/wavefront/wavefront_synth.c24
61 files changed, 4892 insertions, 3903 deletions
diff --git a/sound/isa/Kconfig b/sound/isa/Kconfig
index 5d6c300ac0d..ff8fef93278 100644
--- a/sound/isa/Kconfig
+++ b/sound/isa/Kconfig
@@ -6,12 +6,10 @@ menu "ISA devices"
config SND_AD1848_LIB
tristate
select SND_PCM
- select SND_GENERIC_DRIVER
config SND_CS4231_LIB
tristate
select SND_PCM
- select SND_GENERIC_DRIVER
config SND_AD1816A
tristate "Analog Devices SoundPort AD1816A"
@@ -41,6 +39,45 @@ config SND_AD1848
To compile this driver as a module, choose M here: the module
will be called snd-ad1848.
+config SND_ALS100
+ tristate "Avance Logic ALS100/ALS120"
+ depends on SND && PNP && ISA
+ select ISAPNP
+ select SND_OPL3_LIB
+ select SND_MPU401_UART
+ select SND_PCM
+ help
+ Say Y here to include support for soundcards based on Avance
+ Logic ALS100, ALS110, ALS120 and ALS200 chips.
+
+ To compile this driver as a module, choose M here: the module
+ will be called snd-als100.
+
+config SND_AZT2320
+ tristate "Aztech Systems AZT2320"
+ depends on SND && PNP && ISA
+ select ISAPNP
+ select SND_OPL3_LIB
+ select SND_MPU401_UART
+ select SND_CS4231_LIB
+ help
+ Say Y here to include support for soundcards based on the
+ Aztech Systems AZT2320 chip.
+
+ To compile this driver as a module, choose M here: the module
+ will be called snd-azt2320.
+
+config SND_CMI8330
+ tristate "C-Media CMI8330"
+ depends on SND
+ select SND_AD1848_LIB
+ help
+ Say Y here to include support for soundcards based on the
+ C-Media CMI8330 chip.
+
+ To compile this driver as a module, choose M here: the module
+ will be called snd-cmi8330.
+
config SND_CS4231
tristate "Generic Cirrus Logic CS4231 driver"
depends on SND
@@ -79,6 +116,20 @@ config SND_CS4236
To compile this driver as a module, choose M here: the module
will be called snd-cs4236.
+config SND_DT019X
+ tristate "Diamond Technologies DT-019X, Avance Logic ALS-007"
+ depends on SND && PNP && ISA
+ select ISAPNP
+ select SND_OPL3_LIB
+ select SND_MPU401_UART
+ select SND_PCM
+ help
+ Say Y here to include support for soundcards based on the
+ Diamond Technologies DT-019X or Avance Logic ALS-007 chips.
+
+ To compile this driver as a module, choose M here: the module
+ will be called snd-dt019x.
+
config SND_ES968
tristate "Generic ESS ES968 driver"
depends on SND && PNP && ISA
@@ -97,7 +148,6 @@ config SND_ES1688
select SND_OPL3_LIB
select SND_MPU401_UART
select SND_PCM
- select SND_GENERIC_DRIVER
help
Say Y here to include support for ESS AudioDrive ES688 or
ES1688 chips.
@@ -111,7 +161,6 @@ config SND_ES18XX
select SND_OPL3_LIB
select SND_MPU401_UART
select SND_PCM
- select SND_GENERIC_DRIVER
help
Say Y here to include support for ESS AudioDrive ES18xx chips.
@@ -127,7 +176,6 @@ config SND_GUSCLASSIC
select SND_RAWMIDI
select SND_PCM
select SND_GUS_SYNTH
- select SND_GENERIC_DRIVER
help
Say Y here to include support for Gravis UltraSound Classic
soundcards.
@@ -142,7 +190,6 @@ config SND_GUSEXTREME
select SND_MPU401_UART
select SND_PCM
select SND_GUS_SYNTH
- select SND_GENERIC_DRIVER
help
Say Y here to include support for Gravis UltraSound Extreme
soundcards.
@@ -156,7 +203,6 @@ config SND_GUSMAX
select SND_RAWMIDI
select SND_CS4231_LIB
select SND_GUS_SYNTH
- select SND_GENERIC_DRIVER
help
Say Y here to include support for Gravis UltraSound MAX
soundcards.
@@ -170,7 +216,6 @@ config SND_INTERWAVE
select SND_RAWMIDI
select SND_CS4231_LIB
select SND_GUS_SYNTH
- select SND_GENERIC_DRIVER
help
Say Y here to include support for AMD InterWave based
soundcards (Gravis UltraSound Plug & Play, STB SoundRage32,
@@ -185,7 +230,6 @@ config SND_INTERWAVE_STB
select SND_RAWMIDI
select SND_CS4231_LIB
select SND_GUS_SYNTH
- select SND_GENERIC_DRIVER
help
Say Y here to include support for AMD InterWave based
soundcards with a TEA6330T bass and treble regulator
@@ -194,6 +238,19 @@ config SND_INTERWAVE_STB
To compile this driver as a module, choose M here: the module
will be called snd-interwave-stb.
+config SND_OPL3SA2
+ tristate "Yamaha OPL3-SA2/SA3"
+ depends on SND
+ select SND_OPL3_LIB
+ select SND_MPU401_UART
+ select SND_CS4231_LIB
+ help
+ Say Y here to include support for Yamaha OPL3-SA2 and OPL3-SA3
+ chips.
+
+ To compile this driver as a module, choose M here: the module
+ will be called snd-opl3sa2.
+
config SND_OPTI92X_AD1848
tristate "OPTi 82C92x - AD1848"
depends on SND
@@ -228,7 +285,6 @@ config SND_OPTI93X
select SND_OPL3_LIB
select SND_MPU401_UART
select SND_PCM
- select SND_GENERIC_DRIVER
help
Say Y here to include support for soundcards based on Opti
82C93x chips.
@@ -242,7 +298,6 @@ config SND_SB8
select SND_OPL3_LIB
select SND_RAWMIDI
select SND_PCM
- select SND_GENERIC_DRIVER
help
Say Y here to include support for Creative Sound Blaster 1.0/
2.0/Pro (8-bit) or 100% compatible soundcards.
@@ -256,7 +311,6 @@ config SND_SB16
select SND_OPL3_LIB
select SND_MPU401_UART
select SND_PCM
- select SND_GENERIC_DRIVER
help
Say Y here to include support for Sound Blaster 16 soundcards
(including the Plug and Play version).
@@ -270,7 +324,6 @@ config SND_SBAWE
select SND_OPL3_LIB
select SND_MPU401_UART
select SND_PCM
- select SND_GENERIC_DRIVER
help
Say Y here to include support for Sound Blaster AWE soundcards
(including the Plug and Play version).
@@ -286,85 +339,6 @@ config SND_SB16_CSP
coprocessor can do variable tasks like various compression and
decompression algorithms.
-config SND_WAVEFRONT
- tristate "Turtle Beach Maui,Tropez,Tropez+ (Wavefront)"
- depends on SND
- select SND_OPL3_LIB
- select SND_MPU401_UART
- select SND_CS4231_LIB
- help
- Say Y here to include support for Turtle Beach Maui, Tropez
- and Tropez+ soundcards based on the Wavefront chip.
-
- To compile this driver as a module, choose M here: the module
- will be called snd-wavefront.
-
-config SND_ALS100
- tristate "Avance Logic ALS100/ALS120"
- depends on SND && PNP && ISA
- select ISAPNP
- select SND_OPL3_LIB
- select SND_MPU401_UART
- select SND_PCM
- help
- Say Y here to include support for soundcards based on Avance
- Logic ALS100, ALS110, ALS120 and ALS200 chips.
-
- To compile this driver as a module, choose M here: the module
- will be called snd-als100.
-
-config SND_AZT2320
- tristate "Aztech Systems AZT2320"
- depends on SND && PNP && ISA
- select ISAPNP
- select SND_OPL3_LIB
- select SND_MPU401_UART
- select SND_CS4231_LIB
- help
- Say Y here to include support for soundcards based on the
- Aztech Systems AZT2320 chip.
-
- To compile this driver as a module, choose M here: the module
- will be called snd-azt2320.
-
-config SND_CMI8330
- tristate "C-Media CMI8330"
- depends on SND
- select SND_AD1848_LIB
- help
- Say Y here to include support for soundcards based on the
- C-Media CMI8330 chip.
-
- To compile this driver as a module, choose M here: the module
- will be called snd-cmi8330.
-
-config SND_DT019X
- tristate "Diamond Technologies DT-019X, Avance Logic ALS-007"
- depends on SND && PNP && ISA
- select ISAPNP
- select SND_OPL3_LIB
- select SND_MPU401_UART
- select SND_PCM
- help
- Say Y here to include support for soundcards based on the
- Diamond Technologies DT-019X or Avance Logic ALS-007 chips.
-
- To compile this driver as a module, choose M here: the module
- will be called snd-dt019x.
-
-config SND_OPL3SA2
- tristate "Yamaha OPL3-SA2/SA3"
- depends on SND
- select SND_OPL3_LIB
- select SND_MPU401_UART
- select SND_CS4231_LIB
- help
- Say Y here to include support for Yamaha OPL3-SA2 and OPL3-SA3
- chips.
-
- To compile this driver as a module, choose M here: the module
- will be called snd-opl3sa2.
-
config SND_SGALAXY
tristate "Aztech Sound Galaxy"
depends on SND
@@ -389,4 +363,17 @@ config SND_SSCAPE
To compile this driver as a module, choose M here: the module
will be called snd-sscape.
+config SND_WAVEFRONT
+ tristate "Turtle Beach Maui,Tropez,Tropez+ (Wavefront)"
+ depends on SND
+ select SND_OPL3_LIB
+ select SND_MPU401_UART
+ select SND_CS4231_LIB
+ help
+ Say Y here to include support for Turtle Beach Maui, Tropez
+ and Tropez+ soundcards based on the Wavefront chip.
+
+ To compile this driver as a module, choose M here: the module
+ will be called snd-wavefront.
+
endmenu
diff --git a/sound/isa/ad1816a/Makefile b/sound/isa/ad1816a/Makefile
index a42b29cf854..90e00e842e4 100644
--- a/sound/isa/ad1816a/Makefile
+++ b/sound/isa/ad1816a/Makefile
@@ -3,8 +3,7 @@
# Copyright (c) 2001 by Jaroslav Kysela <perex@suse.cz>
#
-snd-ad1816a-lib-objs := ad1816a_lib.o
-snd-ad1816a-objs := ad1816a.o
+snd-ad1816a-objs := ad1816a.o ad1816a_lib.o
# Toplevel Module Dependency
-obj-$(CONFIG_SND_AD1816A) += snd-ad1816a.o snd-ad1816a-lib.o
+obj-$(CONFIG_SND_AD1816A) += snd-ad1816a.o
diff --git a/sound/isa/ad1816a/ad1816a.c b/sound/isa/ad1816a/ad1816a.c
index 0eb442ca23d..7051f7798ed 100644
--- a/sound/isa/ad1816a/ad1816a.c
+++ b/sound/isa/ad1816a/ad1816a.c
@@ -188,10 +188,10 @@ static int __devinit snd_card_ad1816a_probe(int dev, struct pnp_card_link *pcard
const struct pnp_card_device_id *pid)
{
int error;
- snd_card_t *card;
+ struct snd_card *card;
struct snd_card_ad1816a *acard;
- ad1816a_t *chip;
- opl3_t *opl3;
+ struct snd_ad1816a *chip;
+ struct snd_opl3 *opl3;
if ((card = snd_card_new(index[dev], id[dev], THIS_MODULE,
sizeof(struct snd_card_ad1816a))) == NULL)
@@ -282,10 +282,8 @@ static int __devinit snd_ad1816a_pnp_detect(struct pnp_card_link *card,
static void __devexit snd_ad1816a_pnp_remove(struct pnp_card_link * pcard)
{
- snd_card_t *card = (snd_card_t *) pnp_get_card_drvdata(pcard);
-
- snd_card_disconnect(card);
- snd_card_free_in_thread(card);
+ snd_card_free(pnp_get_card_drvdata(pcard));
+ pnp_set_card_drvdata(pcard, NULL);
}
static struct pnp_card_driver ad1816a_pnpc_driver = {
@@ -294,20 +292,22 @@ static struct pnp_card_driver ad1816a_pnpc_driver = {
.id_table = snd_ad1816a_pnpids,
.probe = snd_ad1816a_pnp_detect,
.remove = __devexit_p(snd_ad1816a_pnp_remove),
+ /* FIXME: suspend/resume */
};
static int __init alsa_card_ad1816a_init(void)
{
- int cards = 0;
+ int cards;
- cards += pnp_register_card_driver(&ad1816a_pnpc_driver);
-#ifdef MODULE
- if (!cards) {
+ cards = pnp_register_card_driver(&ad1816a_pnpc_driver);
+ if (cards <= 0) {
pnp_unregister_card_driver(&ad1816a_pnpc_driver);
+#ifdef MODULE
printk(KERN_ERR "no AD1816A based soundcards found.\n");
- }
#endif /* MODULE */
- return cards ? 0 : -ENODEV;
+ return -ENODEV;
+ }
+ return 0;
}
static void __exit alsa_card_ad1816a_exit(void)
diff --git a/sound/isa/ad1816a/ad1816a_lib.c b/sound/isa/ad1816a/ad1816a_lib.c
index 7ae02396cae..ac0d808fff5 100644
--- a/sound/isa/ad1816a/ad1816a_lib.c
+++ b/sound/isa/ad1816a/ad1816a_lib.c
@@ -30,11 +30,7 @@
#include <asm/io.h>
#include <asm/dma.h>
-MODULE_AUTHOR("Massimo Piccioni <dafastidio@libero.it>");
-MODULE_DESCRIPTION("lowlevel code for Analog Devices AD1816A chip");
-MODULE_LICENSE("GPL");
-
-static inline int snd_ad1816a_busy_wait(ad1816a_t *chip)
+static inline int snd_ad1816a_busy_wait(struct snd_ad1816a *chip)
{
int timeout;
@@ -46,34 +42,34 @@ static inline int snd_ad1816a_busy_wait(ad1816a_t *chip)
return -EBUSY;
}
-static inline unsigned char snd_ad1816a_in(ad1816a_t *chip, unsigned char reg)
+static inline unsigned char snd_ad1816a_in(struct snd_ad1816a *chip, unsigned char reg)
{
snd_ad1816a_busy_wait(chip);
return inb(AD1816A_REG(reg));
}
-static inline void snd_ad1816a_out(ad1816a_t *chip, unsigned char reg,
+static inline void snd_ad1816a_out(struct snd_ad1816a *chip, unsigned char reg,
unsigned char value)
{
snd_ad1816a_busy_wait(chip);
outb(value, AD1816A_REG(reg));
}
-static inline void snd_ad1816a_out_mask(ad1816a_t *chip, unsigned char reg,
+static inline void snd_ad1816a_out_mask(struct snd_ad1816a *chip, unsigned char reg,
unsigned char mask, unsigned char value)
{
snd_ad1816a_out(chip, reg,
(value & mask) | (snd_ad1816a_in(chip, reg) & ~mask));
}
-static unsigned short snd_ad1816a_read(ad1816a_t *chip, unsigned char reg)
+static unsigned short snd_ad1816a_read(struct snd_ad1816a *chip, unsigned char reg)
{
snd_ad1816a_out(chip, AD1816A_INDIR_ADDR, reg & 0x3f);
return snd_ad1816a_in(chip, AD1816A_INDIR_DATA_LOW) |
(snd_ad1816a_in(chip, AD1816A_INDIR_DATA_HIGH) << 8);
}
-static void snd_ad1816a_write(ad1816a_t *chip, unsigned char reg,
+static void snd_ad1816a_write(struct snd_ad1816a *chip, unsigned char reg,
unsigned short value)
{
snd_ad1816a_out(chip, AD1816A_INDIR_ADDR, reg & 0x3f);
@@ -81,7 +77,7 @@ static void snd_ad1816a_write(ad1816a_t *chip, unsigned char reg,
snd_ad1816a_out(chip, AD1816A_INDIR_DATA_HIGH, (value >> 8) & 0xff);
}
-static void snd_ad1816a_write_mask(ad1816a_t *chip, unsigned char reg,
+static void snd_ad1816a_write_mask(struct snd_ad1816a *chip, unsigned char reg,
unsigned short mask, unsigned short value)
{
snd_ad1816a_write(chip, reg,
@@ -89,7 +85,7 @@ static void snd_ad1816a_write_mask(ad1816a_t *chip, unsigned char reg,
}
-static unsigned char snd_ad1816a_get_format(ad1816a_t *chip,
+static unsigned char snd_ad1816a_get_format(struct snd_ad1816a *chip,
unsigned int format, int channels)
{
unsigned char retval = AD1816A_FMT_LINEAR_8;
@@ -110,7 +106,7 @@ static unsigned char snd_ad1816a_get_format(ad1816a_t *chip,
return (channels > 1) ? (retval | AD1816A_FMT_STEREO) : retval;
}
-static int snd_ad1816a_open(ad1816a_t *chip, unsigned int mode)
+static int snd_ad1816a_open(struct snd_ad1816a *chip, unsigned int mode)
{
unsigned long flags;
@@ -146,7 +142,7 @@ static int snd_ad1816a_open(ad1816a_t *chip, unsigned int mode)
return 0;
}
-static void snd_ad1816a_close(ad1816a_t *chip, unsigned int mode)
+static void snd_ad1816a_close(struct snd_ad1816a *chip, unsigned int mode)
{
unsigned long flags;
@@ -178,7 +174,7 @@ static void snd_ad1816a_close(ad1816a_t *chip, unsigned int mode)
}
-static int snd_ad1816a_trigger(ad1816a_t *chip, unsigned char what,
+static int snd_ad1816a_trigger(struct snd_ad1816a *chip, unsigned char what,
int channel, int cmd)
{
int error = 0;
@@ -204,36 +200,36 @@ static int snd_ad1816a_trigger(ad1816a_t *chip, unsigned char what,
return error;
}
-static int snd_ad1816a_playback_trigger(snd_pcm_substream_t *substream, int cmd)
+static int snd_ad1816a_playback_trigger(struct snd_pcm_substream *substream, int cmd)
{
- ad1816a_t *chip = snd_pcm_substream_chip(substream);
+ struct snd_ad1816a *chip = snd_pcm_substream_chip(substream);
return snd_ad1816a_trigger(chip, AD1816A_PLAYBACK_ENABLE,
SNDRV_PCM_STREAM_PLAYBACK, cmd);
}
-static int snd_ad1816a_capture_trigger(snd_pcm_substream_t *substream, int cmd)
+static int snd_ad1816a_capture_trigger(struct snd_pcm_substream *substream, int cmd)
{
- ad1816a_t *chip = snd_pcm_substream_chip(substream);
+ struct snd_ad1816a *chip = snd_pcm_substream_chip(substream);
return snd_ad1816a_trigger(chip, AD1816A_CAPTURE_ENABLE,
SNDRV_PCM_STREAM_CAPTURE, cmd);
}
-static int snd_ad1816a_hw_params(snd_pcm_substream_t * substream,
- snd_pcm_hw_params_t * hw_params)
+static int snd_ad1816a_hw_params(struct snd_pcm_substream *substream,
+ struct snd_pcm_hw_params *hw_params)
{
return snd_pcm_lib_malloc_pages(substream, params_buffer_bytes(hw_params));
}
-static int snd_ad1816a_hw_free(snd_pcm_substream_t * substream)
+static int snd_ad1816a_hw_free(struct snd_pcm_substream *substream)
{
return snd_pcm_lib_free_pages(substream);
}
-static int snd_ad1816a_playback_prepare(snd_pcm_substream_t *substream)
+static int snd_ad1816a_playback_prepare(struct snd_pcm_substream *substream)
{
- ad1816a_t *chip = snd_pcm_substream_chip(substream);
+ struct snd_ad1816a *chip = snd_pcm_substream_chip(substream);
unsigned long flags;
- snd_pcm_runtime_t *runtime = substream->runtime;
+ struct snd_pcm_runtime *runtime = substream->runtime;
unsigned int size, rate;
spin_lock_irqsave(&chip->lock, flags);
@@ -261,11 +257,11 @@ static int snd_ad1816a_playback_prepare(snd_pcm_substream_t *substream)
return 0;
}
-static int snd_ad1816a_capture_prepare(snd_pcm_substream_t *substream)
+static int snd_ad1816a_capture_prepare(struct snd_pcm_substream *substream)
{
- ad1816a_t *chip = snd_pcm_substream_chip(substream);
+ struct snd_ad1816a *chip = snd_pcm_substream_chip(substream);
unsigned long flags;
- snd_pcm_runtime_t *runtime = substream->runtime;
+ struct snd_pcm_runtime *runtime = substream->runtime;
unsigned int size, rate;
spin_lock_irqsave(&chip->lock, flags);
@@ -294,9 +290,9 @@ static int snd_ad1816a_capture_prepare(snd_pcm_substream_t *substream)
}
-static snd_pcm_uframes_t snd_ad1816a_playback_pointer(snd_pcm_substream_t *substream)
+static snd_pcm_uframes_t snd_ad1816a_playback_pointer(struct snd_pcm_substream *substream)
{
- ad1816a_t *chip = snd_pcm_substream_chip(substream);
+ struct snd_ad1816a *chip = snd_pcm_substream_chip(substream);
size_t ptr;
if (!(chip->mode & AD1816A_MODE_PLAYBACK))
return 0;
@@ -304,9 +300,9 @@ static snd_pcm_uframes_t snd_ad1816a_playback_pointer(snd_pcm_substream_t *subst
return bytes_to_frames(substream->runtime, ptr);
}
-static snd_pcm_uframes_t snd_ad1816a_capture_pointer(snd_pcm_substream_t *substream)
+static snd_pcm_uframes_t snd_ad1816a_capture_pointer(struct snd_pcm_substream *substream)
{
- ad1816a_t *chip = snd_pcm_substream_chip(substream);
+ struct snd_ad1816a *chip = snd_pcm_substream_chip(substream);
size_t ptr;
if (!(chip->mode & AD1816A_MODE_CAPTURE))
return 0;
@@ -317,7 +313,7 @@ static snd_pcm_uframes_t snd_ad1816a_capture_pointer(snd_pcm_substream_t *substr
static irqreturn_t snd_ad1816a_interrupt(int irq, void *dev_id, struct pt_regs *regs)
{
- ad1816a_t *chip = dev_id;
+ struct snd_ad1816a *chip = dev_id;
unsigned char status;
spin_lock(&chip->lock);
@@ -340,7 +336,7 @@ static irqreturn_t snd_ad1816a_interrupt(int irq, void *dev_id, struct pt_regs *
}
-static snd_pcm_hardware_t snd_ad1816a_playback = {
+static struct snd_pcm_hardware snd_ad1816a_playback = {
.info = (SNDRV_PCM_INFO_MMAP | SNDRV_PCM_INFO_INTERLEAVED |
SNDRV_PCM_INFO_MMAP_VALID),
.formats = (SNDRV_PCM_FMTBIT_MU_LAW | SNDRV_PCM_FMTBIT_A_LAW |
@@ -359,7 +355,7 @@ static snd_pcm_hardware_t snd_ad1816a_playback = {
.fifo_size = 0,
};
-static snd_pcm_hardware_t snd_ad1816a_capture = {
+static struct snd_pcm_hardware snd_ad1816a_capture = {
.info = (SNDRV_PCM_INFO_MMAP | SNDRV_PCM_INFO_INTERLEAVED |
SNDRV_PCM_INFO_MMAP_VALID),
.formats = (SNDRV_PCM_FMTBIT_MU_LAW | SNDRV_PCM_FMTBIT_A_LAW |
@@ -379,32 +375,32 @@ static snd_pcm_hardware_t snd_ad1816a_capture = {
};
#if 0 /* not used now */
-static int snd_ad1816a_timer_close(snd_timer_t *timer)
+static int snd_ad1816a_timer_close(struct snd_timer *timer)
{
- ad1816a_t *chip = snd_timer_chip(timer);
+ struct snd_ad1816a *chip = snd_timer_chip(timer);
snd_ad1816a_close(chip, AD1816A_MODE_TIMER);
return 0;
}
-static int snd_ad1816a_timer_open(snd_timer_t *timer)
+static int snd_ad1816a_timer_open(struct snd_timer *timer)
{
- ad1816a_t *chip = snd_timer_chip(timer);
+ struct snd_ad1816a *chip = snd_timer_chip(timer);
snd_ad1816a_open(chip, AD1816A_MODE_TIMER);
return 0;
}
-static unsigned long snd_ad1816a_timer_resolution(snd_timer_t *timer)
+static unsigned long snd_ad1816a_timer_resolution(struct snd_timer *timer)
{
snd_assert(timer != NULL, return 0);
return 10000;
}
-static int snd_ad1816a_timer_start(snd_timer_t *timer)
+static int snd_ad1816a_timer_start(struct snd_timer *timer)
{
unsigned short bits;
unsigned long flags;
- ad1816a_t *chip = snd_timer_chip(timer);
+ struct snd_ad1816a *chip = snd_timer_chip(timer);
spin_lock_irqsave(&chip->lock, flags);
bits = snd_ad1816a_read(chip, AD1816A_INTERRUPT_ENABLE);
@@ -419,10 +415,10 @@ stat