patch-2.4.0-test7 linux/drivers/sound/sb_audio.c
Next file: linux/drivers/sound/sb_card.c
Previous file: linux/drivers/sound/sb.h
Back to the patch index
Back to the overall index
- Lines: 214
- Date:
Fri Aug 11 08:26:43 2000
- Orig file:
v2.4.0-test6/linux/drivers/sound/sb_audio.c
- Orig date:
Thu Mar 2 14:36:23 2000
diff -u --recursive --new-file v2.4.0-test6/linux/drivers/sound/sb_audio.c linux/drivers/sound/sb_audio.c
@@ -933,128 +933,103 @@
static struct audio_driver sb1_audio_driver = /* SB1.x */
{
- sb_audio_open,
- sb_audio_close,
- sb_set_output_parms,
- sb_set_input_parms,
- NULL, /* ioctl */
- sb1_audio_prepare_for_input,
- sb1_audio_prepare_for_output,
- sb1_audio_halt_xfer,
- NULL, /* local_qlen */
- NULL, /* copy_from_user */
- NULL,
- NULL,
- sb1_audio_trigger,
- sb1_audio_set_speed,
- sb1_audio_set_bits,
- sb1_audio_set_channels
+ owner: THIS_MODULE,
+ open: sb_audio_open,
+ close: sb_audio_close,
+ output_block: sb_set_output_parms,
+ start_input: sb_set_input_parms,
+ prepare_for_input: sb1_audio_prepare_for_input,
+ prepare_for_output: sb1_audio_prepare_for_output,
+ halt_io: sb1_audio_halt_xfer,
+ trigger: sb1_audio_trigger,
+ set_speed: sb1_audio_set_speed,
+ set_bits: sb1_audio_set_bits,
+ set_channels: sb1_audio_set_channels
};
static struct audio_driver sb20_audio_driver = /* SB2.0 */
{
- sb_audio_open,
- sb_audio_close,
- sb_set_output_parms,
- sb_set_input_parms,
- NULL,
- sb1_audio_prepare_for_input,
- sb1_audio_prepare_for_output,
- sb1_audio_halt_xfer,
- NULL, /* local_qlen */
- NULL, /* copy_from_user */
- NULL,
- NULL,
- sb20_audio_trigger,
- sb1_audio_set_speed,
- sb1_audio_set_bits,
- sb1_audio_set_channels
+ owner: THIS_MODULE,
+ open: sb_audio_open,
+ close: sb_audio_close,
+ output_block: sb_set_output_parms,
+ start_input: sb_set_input_parms,
+ prepare_for_input: sb1_audio_prepare_for_input,
+ prepare_for_output: sb1_audio_prepare_for_output,
+ halt_io: sb1_audio_halt_xfer,
+ trigger: sb20_audio_trigger,
+ set_speed: sb1_audio_set_speed,
+ set_bits: sb1_audio_set_bits,
+ set_channels: sb1_audio_set_channels
};
static struct audio_driver sb201_audio_driver = /* SB2.01 */
{
- sb_audio_open,
- sb_audio_close,
- sb_set_output_parms,
- sb_set_input_parms,
- NULL,
- sb1_audio_prepare_for_input,
- sb1_audio_prepare_for_output,
- sb1_audio_halt_xfer,
- NULL, /* local_qlen */
- NULL, /* copy_from_user */
- NULL,
- NULL,
- sb20_audio_trigger,
- sb201_audio_set_speed,
- sb1_audio_set_bits,
- sb1_audio_set_channels
+ owner: THIS_MODULE,
+ open: sb_audio_open,
+ close: sb_audio_close,
+ output_block: sb_set_output_parms,
+ start_input: sb_set_input_parms,
+ prepare_for_input: sb1_audio_prepare_for_input,
+ prepare_for_output: sb1_audio_prepare_for_output,
+ halt_io: sb1_audio_halt_xfer,
+ trigger: sb20_audio_trigger,
+ set_speed: sb201_audio_set_speed,
+ set_bits: sb1_audio_set_bits,
+ set_channels: sb1_audio_set_channels
};
static struct audio_driver sbpro_audio_driver = /* SB Pro */
{
- sb_audio_open,
- sb_audio_close,
- sb_set_output_parms,
- sb_set_input_parms,
- NULL,
- sbpro_audio_prepare_for_input,
- sbpro_audio_prepare_for_output,
- sb1_audio_halt_xfer,
- NULL, /* local_qlen */
- NULL, /* copy_from_user */
- NULL,
- NULL,
- sb20_audio_trigger,
- sbpro_audio_set_speed,
- sb1_audio_set_bits,
- sbpro_audio_set_channels
+ owner: THIS_MODULE,
+ open: sb_audio_open,
+ close: sb_audio_close,
+ output_block: sb_set_output_parms,
+ start_input: sb_set_input_parms,
+ prepare_for_input: sbpro_audio_prepare_for_input,
+ prepare_for_output: sbpro_audio_prepare_for_output,
+ halt_io: sb1_audio_halt_xfer,
+ trigger: sb20_audio_trigger,
+ set_speed: sbpro_audio_set_speed,
+ set_bits: sb1_audio_set_bits,
+ set_channels: sbpro_audio_set_channels
};
static struct audio_driver jazz16_audio_driver = /* Jazz16 and SM Wave */
{
- sb_audio_open,
- sb_audio_close,
- sb_set_output_parms,
- sb_set_input_parms,
- NULL,
- sbpro_audio_prepare_for_input,
- sbpro_audio_prepare_for_output,
- sb1_audio_halt_xfer,
- NULL, /* local_qlen */
- NULL, /* copy_from_user */
- NULL,
- NULL,
- sb20_audio_trigger,
- jazz16_audio_set_speed,
- sb16_audio_set_bits,
- sbpro_audio_set_channels
+ owner: THIS_MODULE,
+ open: sb_audio_open,
+ close: sb_audio_close,
+ output_block: sb_set_output_parms,
+ start_input: sb_set_input_parms,
+ prepare_for_input: sbpro_audio_prepare_for_input,
+ prepare_for_output: sbpro_audio_prepare_for_output,
+ halt_io: sb1_audio_halt_xfer,
+ trigger: sb20_audio_trigger,
+ set_speed: jazz16_audio_set_speed,
+ set_bits: sb16_audio_set_bits,
+ set_channels: sbpro_audio_set_channels
};
static struct audio_driver sb16_audio_driver = /* SB16 */
{
- sb_audio_open,
- sb_audio_close,
- sb_set_output_parms,
- sb_set_input_parms,
- NULL,
- sb16_audio_prepare_for_input,
- sb16_audio_prepare_for_output,
- sb1_audio_halt_xfer,
- NULL, /* local_qlen */
- sb16_copy_from_user, /* copy_from_user */
- NULL,
- NULL,
- sb16_audio_trigger,
- sb16_audio_set_speed,
- sb16_audio_set_bits,
- sbpro_audio_set_channels,
- NULL,
- NULL,
- sb16_audio_mmap
+ owner: THIS_MODULE,
+ open: sb_audio_open,
+ close: sb_audio_close,
+ output_block: sb_set_output_parms,
+ start_input: sb_set_input_parms,
+ prepare_for_input: sb16_audio_prepare_for_input,
+ prepare_for_output: sb16_audio_prepare_for_output,
+ halt_io: sb1_audio_halt_xfer,
+ copy_user: sb16_copy_from_user,
+ trigger: sb16_audio_trigger,
+ set_speed: sb16_audio_set_speed,
+ set_bits: sb16_audio_set_bits,
+ set_channels: sbpro_audio_set_channels,
+ mmap: sb16_audio_mmap
};
-void sb_audio_init(sb_devc * devc, char *name)
+void sb_audio_init(sb_devc * devc, char *name, struct module *owner)
{
int audio_flags = 0;
int format_mask = AFMT_U8;
@@ -1111,6 +1086,9 @@
driver = &sbpro_audio_driver;
}
+ if (owner)
+ driver->owner = owner;
+
if ((devc->dev = sound_install_audiodrv(AUDIO_DRIVER_VERSION,
name,driver, sizeof(struct audio_driver),
audio_flags, format_mask, devc,
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)