diff options
Diffstat (limited to 'sound/oss')
32 files changed, 80 insertions, 108 deletions
diff --git a/sound/oss/Kconfig b/sound/oss/Kconfig index a0588c21324a..4c419300305d 100644 --- a/sound/oss/Kconfig +++ b/sound/oss/Kconfig @@ -5,6 +5,20 @@ # # Prompt user for primary drivers. +config OBSOLETE_OSS + bool "Obsolete OSS drivers" + depends on SOUND_PRIME + help + This option enables support for obsolete OSS drivers that + are scheduled for removal in the near future since there + are ALSA drivers for the same hardware. + + Please contact Adrian Bunk <bunk@stusta.de> if you had to + say Y here because your soundcard is not properly supported + by ALSA. + + If unsure, say N. + config SOUND_BT878 tristate "BT878 audio dma" depends on SOUND_PRIME && PCI @@ -33,7 +47,7 @@ config SOUND_BCM_CS4297A config SOUND_ES1371 tristate "Creative Ensoniq AudioPCI 97 (ES1371)" - depends on SOUND_PRIME && PCI + depends on SOUND_PRIME && PCI && OBSOLETE_OSS help Say Y or M if you have a PCI sound card utilizing the Ensoniq ES1371 chipset, such as Ensoniq's AudioPCI97. To find out if @@ -705,18 +719,6 @@ config AEDSP16_SBPRO endchoice -config AEDSP16_MPU401 - bool "Audio Excel DSP 16 (MPU401 emulation)" - depends on SOUND_AEDSP16 && SOUND_MPU401 - help - Answer Y if you want your audio card to emulate the MPU-401 midi - interface. You should then also say Y to "MPU-401 support". - - Note that the I/O base for MPU-401 support of aedsp16 is the same - you have selected for "MPU-401 support". If you are using this - driver as a module you have to specify the MPU I/O base address with - the parameter 'mpu_base=0xNNN'. - config SOUND_VIDC tristate "VIDC 16-bit sound" depends on ARM && (ARCH_ACORN || ARCH_CLPS7500) && SOUND_OSS diff --git a/sound/oss/ac97_codec.c b/sound/oss/ac97_codec.c index 602db497929a..fef56cac06c8 100644 --- a/sound/oss/ac97_codec.c +++ b/sound/oss/ac97_codec.c @@ -744,11 +744,10 @@ static int ac97_check_modem(struct ac97_codec *codec) struct ac97_codec *ac97_alloc_codec(void) { - struct ac97_codec *codec = kmalloc(sizeof(struct ac97_codec), GFP_KERNEL); + struct ac97_codec *codec = kzalloc(sizeof(struct ac97_codec), GFP_KERNEL); if(!codec) return NULL; - memset(codec, 0, sizeof(*codec)); spin_lock_init(&codec->lock); INIT_LIST_HEAD(&codec->list); return codec; diff --git a/sound/oss/ad1889.c b/sound/oss/ad1889.c index 09263d72a519..c0730a3563a2 100644 --- a/sound/oss/ad1889.c +++ b/sound/oss/ad1889.c @@ -230,9 +230,8 @@ static ad1889_dev_t *ad1889_alloc_dev(struct pci_dev *pci) struct dmabuf *dmabuf; int i; - if ((dev = kmalloc(sizeof(ad1889_dev_t), GFP_KERNEL)) == NULL) + if ((dev = kzalloc(sizeof(ad1889_dev_t), GFP_KERNEL)) == NULL) return NULL; - memset(dev, 0, sizeof(ad1889_dev_t)); spin_lock_init(&dev->lock); dev->pci = pci; @@ -778,7 +777,7 @@ static int ad1889_release(struct inode *inode, struct file *file) return 0; } -static struct file_operations ad1889_fops = { +static const struct file_operations ad1889_fops = { .owner = THIS_MODULE, .llseek = no_llseek, .read = ad1889_read, @@ -812,7 +811,7 @@ static int ad1889_mixer_ioctl(struct inode *inode, struct file *file, return codec->mixer_ioctl(codec, cmd, arg); } -static struct file_operations ad1889_mixer_fops = { +static const struct file_operations ad1889_mixer_fops = { .owner = THIS_MODULE, .llseek = no_llseek, .ioctl = ad1889_mixer_ioctl, diff --git a/sound/oss/au1550_ac97.c b/sound/oss/au1550_ac97.c index 219795171c71..a339f0c0d512 100644 --- a/sound/oss/au1550_ac97.c +++ b/sound/oss/au1550_ac97.c @@ -1354,11 +1354,11 @@ au1550_ioctl(struct inode *inode, struct file *file, unsigned int cmd, ((file->f_mode & FMODE_READ) && s->dma_adc.mapped); #ifdef DEBUG - for (count=0; count<sizeof(ioctl_str)/sizeof(ioctl_str[0]); count++) { + for (count = 0; count < ARRAY_SIZE(ioctl_str); count++) { if (ioctl_str[count].cmd == cmd) break; } - if (count < sizeof(ioctl_str) / sizeof(ioctl_str[0])) + if (count < ARRAY_SIZE(ioctl_str)) pr_debug("ioctl %s, arg=0x%lxn", ioctl_str[count].str, arg); else pr_debug("ioctl 0x%x unknown, arg=0x%lx\n", cmd, arg); diff --git a/sound/oss/btaudio.c b/sound/oss/btaudio.c index ad7210a00dc0..f813ae9c2134 100644 --- a/sound/oss/btaudio.c +++ b/sound/oss/btaudio.c @@ -429,7 +429,7 @@ static int btaudio_mixer_ioctl(struct inode *inode, struct file *file, return 0; } -static struct file_operations btaudio_mixer_fops = { +static const struct file_operations btaudio_mixer_fops = { .owner = THIS_MODULE, .llseek = no_llseek, .open = btaudio_mixer_open, @@ -796,7 +796,7 @@ static unsigned int btaudio_dsp_poll(struct file *file, struct poll_table_struct return mask; } -static struct file_operations btaudio_digital_dsp_fops = { +static const struct file_operations btaudio_digital_dsp_fops = { .owner = THIS_MODULE, .llseek = no_llseek, .open = btaudio_dsp_open_digital, @@ -807,7 +807,7 @@ static struct file_operations btaudio_digital_dsp_fops = { .poll = btaudio_dsp_poll, }; -static struct file_operations btaudio_analog_dsp_fops = { +static const struct file_operations btaudio_analog_dsp_fops = { .owner = THIS_MODULE, .llseek = no_llseek, .open = btaudio_dsp_open_analog, @@ -915,12 +915,11 @@ static int __devinit btaudio_probe(struct pci_dev *pci_dev, return -EBUSY; } - bta = kmalloc(sizeof(*bta),GFP_ATOMIC); + bta = kzalloc(sizeof(*bta),GFP_ATOMIC); if (!bta) { rc = -ENOMEM; goto fail0; } - memset(bta,0,sizeof(*bta)); bta->pci = pci_dev; bta->irq = pci_dev->irq; diff --git a/sound/oss/cs46xx.c b/sound/oss/cs46xx.c index 147c8a951137..2a1f0d9ac968 100644 --- a/sound/oss/cs46xx.c +++ b/sound/oss/cs46xx.c @@ -3048,10 +3048,9 @@ static int cs_open(struct inode *inode, struct file *file) CS_DBGOUT(CS_WAVE_READ, 2, printk("cs46xx: cs_open() FMODE_READ\n") ); if (card->states[0] == NULL) { state = card->states[0] = - kmalloc(sizeof(struct cs_state), GFP_KERNEL); + kzalloc(sizeof(struct cs_state), GFP_KERNEL); if (state == NULL) return -ENOMEM; - memset(state, 0, sizeof(struct cs_state)); mutex_init(&state->sem); dmabuf = &state->dmabuf; dmabuf->pbuf = (void *)get_zeroed_page(GFP_KERNEL | GFP_DMA); @@ -3114,10 +3113,9 @@ static int cs_open(struct inode *inode, struct file *file) CS_DBGOUT(CS_OPEN, 2, printk("cs46xx: cs_open() FMODE_WRITE\n") ); if (card->states[1] == NULL) { state = card->states[1] = - kmalloc(sizeof(struct cs_state), GFP_KERNEL); + kzalloc(sizeof(struct cs_state), GFP_KERNEL); if (state == NULL) return -ENOMEM; - memset(state, 0, sizeof(struct cs_state)); mutex_init(&state->sem); dmabuf = &state->dmabuf; dmabuf->pbuf = (void *)get_zeroed_page(GFP_KERNEL | GFP_DMA); @@ -5075,11 +5073,10 @@ static int __devinit cs46xx_probe(struct pci_dev *pci_dev, pci_read_config_word(pci_dev, PCI_SUBSYSTEM_VENDOR_ID, &ss_vendor); pci_read_config_word(pci_dev, PCI_SUBSYSTEM_ID, &ss_card); - if ((card = kmalloc(sizeof(struct cs_card), GFP_KERNEL)) == NULL) { + if ((card = kzalloc(sizeof(struct cs_card), GFP_KERNEL)) == NULL) { printk(KERN_ERR "cs46xx: out of memory\n"); return -ENOMEM; } - memset(card, 0, sizeof(*card)); card->ba0_addr = RSRCADDRESS(pci_dev, 0); card->ba1_addr = RSRCADDRESS(pci_dev, 1); card->pci_dev = pci_dev; diff --git a/sound/oss/dmasound/Kconfig b/sound/oss/dmasound/Kconfig index cb845580fe03..18e149f52a88 100644 --- a/sound/oss/dmasound/Kconfig +++ b/sound/oss/dmasound/Kconfig @@ -14,7 +14,7 @@ config DMASOUND_ATARI config DMASOUND_PMAC tristate "PowerMac DMA sound support" - depends on PPC32 && PPC_PMAC && SOUND && I2C + depends on PPC32 && PPC_PMAC && SOUND && I2C && OBSOLETE_OSS select DMASOUND help If you want to use the internal audio of your PowerMac in Linux, diff --git a/sound/oss/dmasound/dac3550a.c b/sound/oss/dmasound/dac3550a.c index 7360d8954d60..0f0d03a55dab 100644 --- a/sound/oss/dmasound/dac3550a.c +++ b/sound/oss/dmasound/dac3550a.c @@ -163,10 +163,9 @@ static int daca_detect_client(struct i2c_adapter *adapter, int address) struct i2c_client *new_client; int rc = -ENODEV; - new_client = kmalloc(sizeof(*new_client), GFP_KERNEL); + new_client = kzalloc(sizeof(*new_client), GFP_KERNEL); if (!new_client) return -ENOMEM; - memset(new_client, 0, sizeof(*new_client)); new_client->addr = address; new_client->adapter = adapter; diff --git a/sound/oss/dmasound/dmasound_core.c b/sound/oss/dmasound/dmasound_core.c index 80b836e80d99..a0ec886f2aa3 100644 --- a/sound/oss/dmasound/dmasound_core.c +++ b/sound/oss/dmasound/dmasound_core.c @@ -371,7 +371,7 @@ static int mixer_ioctl(struct inode *inode, struct file *file, u_int cmd, return -EINVAL; } -static struct file_operations mixer_fops = +static const struct file_operations mixer_fops = { .owner = THIS_MODULE, .llseek = no_llseek, @@ -1337,7 +1337,7 @@ static int sq_ioctl(struct inode *inode, struct file *file, u_int cmd, return -EINVAL; } -static struct file_operations sq_fops = +static const struct file_operations sq_fops = { .owner = THIS_MODULE, .llseek = no_llseek, @@ -1561,7 +1561,7 @@ static ssize_t state_read(struct file *file, char __user *buf, size_t count, return n; } -static struct file_operations state_fops = { +static const struct file_operations state_fops = { .owner = THIS_MODULE, .llseek = no_llseek, .read = state_read, diff --git a/sound/oss/dmasound/tas3001c.c b/sound/oss/dmasound/tas3001c.c index 2f21a3c00374..4b7dbdd2a438 100644 --- a/sound/oss/dmasound/tas3001c.c +++ b/sound/oss/dmasound/tas3001c.c @@ -807,10 +807,9 @@ tas3001c_init(struct i2c_client *client) size_t sz = sizeof(*self) + (TAS3001C_REG_MAX*sizeof(tas_shadow_t)); int i, j; - self = kmalloc(sz, GFP_KERNEL); + self = kzalloc(sz, GFP_KERNEL); if (!self) return -ENOMEM; - memset(self, 0, sz); self->super.client = client; self->super.shadow = (tas_shadow_t *)(self+1); diff --git a/sound/oss/dmasound/tas3004.c b/sound/oss/dmasound/tas3004.c index af34fb39bc29..678bf0ff6da2 100644 --- a/sound/oss/dmasound/tas3004.c +++ b/sound/oss/dmasound/tas3004.c @@ -1092,10 +1092,9 @@ tas3004_init(struct i2c_client *client) char mcr2 = 0; int i, j; - self = kmalloc(sz, GFP_KERNEL); + self = kzalloc(sz, GFP_KERNEL); if (!self) return -ENOMEM; - memset(self, 0, sz); self->super.client = client; self->super.shadow = (tas_shadow_t *)(self+1); diff --git a/sound/oss/dmasound/tas_common.c b/sound/oss/dmasound/tas_common.c index 882ae98a41b1..665e85b5562b 100644 --- a/sound/oss/dmasound/tas_common.c +++ b/sound/oss/dmasound/tas_common.c @@ -135,10 +135,9 @@ tas_detect_client(struct i2c_adapter *adapter, int address) return -ENODEV; } - new_client = kmalloc(sizeof(*new_client), GFP_KERNEL); + new_client = kzalloc(sizeof(*new_client), GFP_KERNEL); if (!new_client) return -ENOMEM; - memset(new_client, 0, sizeof(*new_client)); new_client->addr = address; new_client->adapter = adapter; diff --git a/sound/oss/emu10k1/audio.c b/sound/oss/emu10k1/audio.c index efcf589d7083..e75ea21eb811 100644 --- a/sound/oss/emu10k1/audio.c +++ b/sound/oss/emu10k1/audio.c @@ -1582,7 +1582,7 @@ static void emu10k1_waveout_bh(unsigned long refdata) return; } -struct file_operations emu10k1_audio_fops = { +const struct file_operations emu10k1_audio_fops = { .owner = THIS_MODULE, .llseek = no_llseek, .read = emu10k1_audio_read, diff --git a/sound/oss/emu10k1/main.c b/sound/oss/emu10k1/main.c index 6c59df7b0001..16ac02540a3f 100644 --- a/sound/oss/emu10k1/main.c +++ b/sound/oss/emu10k1/main.c @@ -455,15 +455,13 @@ static int __devinit emu10k1_midi_init(struct emu10k1_card *card) { int ret; - card->mpuout = kmalloc(sizeof(struct emu10k1_mpuout), GFP_KERNEL); + card->mpuout = kzalloc(sizeof(struct emu10k1_mpuout), GFP_KERNEL); if (card->mpuout == NULL) { printk(KERN_WARNING "emu10k1: Unable to allocate emu10k1_mpuout: out of memory\n"); ret = -ENOMEM; goto err_out1; } - memset(card->mpuout, 0, sizeof(struct emu10k1_mpuout)); - card->mpuout->intr = 1; card->mpuout->status = FLAGS_AVAILABLE; card->mpuout->state = CARDMIDIOUT_STATE_DEFAULT; @@ -472,15 +470,13 @@ static int __devinit emu10k1_midi_init(struct emu10k1_card *card) spin_lock_init(&card->mpuout->lock); - card->mpuin = kmalloc(sizeof(struct emu10k1_mpuin), GFP_KERNEL); + card->mpuin = kzalloc(sizeof(struct emu10k1_mpuin), GFP_KERNEL); if (card->mpuin == NULL) { printk(KERN_WARNING "emu10k1: Unable to allocate emu10k1_mpuin: out of memory\n"); ret = -ENOMEM; goto err_out2; } - memset(card->mpuin, 0, sizeof(struct emu10k1_mpuin)); - card->mpuin->status = FLAGS_AVAILABLE; tasklet_init(&card->mpuin->tasklet, emu10k1_mpuin_bh, (unsigned long) card->mpuin); @@ -1280,11 +1276,10 @@ static int __devinit emu10k1_probe(struct pci_dev *pci_dev, const struct pci_dev pci_set_master(pci_dev); - if ((card = kmalloc(sizeof(struct emu10k1_card), GFP_KERNEL)) == NULL) { + if ((card = kzalloc(sizeof(struct emu10k1_card), GFP_KERNEL)) == NULL) { printk(KERN_ERR "emu10k1: out of memory\n"); return -ENOMEM; } - memset(card, 0, sizeof(struct emu10k1_card)); card->iobase = pci_resource_start(pci_dev, 0); card->length = pci_resource_len(pci_dev, 0); diff --git a/sound/oss/emu10k1/midi.c b/sound/oss/emu10k1/midi.c index cca3dad2bdf4..df1e990449a0 100644 --- a/sound/oss/emu10k1/midi.c +++ b/sound/oss/emu10k1/midi.c @@ -458,7 +458,7 @@ int emu10k1_midi_callback(unsigned long msg, unsigned long refdata, unsigned lon } /* MIDI file operations */ -struct file_operations emu10k1_midi_fops = { +const struct file_operations emu10k1_midi_fops = { .owner = THIS_MODULE, .read = emu10k1_midi_read, .write = emu10k1_midi_write, diff --git a/sound/oss/emu10k1/mixer.c b/sound/oss/emu10k1/mixer.c index 6419796c2ed7..bc3805fb0701 100644 --- a/sound/oss/emu10k1/mixer.c +++ b/sound/oss/emu10k1/mixer.c @@ -681,7 +681,7 @@ static int emu10k1_mixer_release(struct inode *inode, struct file *file) return 0; } -struct file_operations emu10k1_mixer_fops = { +const struct file_operations emu10k1_mixer_fops = { .owner = THIS_MODULE, .llseek = no_llseek, .ioctl = emu10k1_mixer_ioctl, diff --git a/sound/oss/es1371.c b/sound/oss/es1371.c index cc282a0cd539..974dd732b149 100644 --- a/sound/oss/es1371.c +++ b/sound/oss/es1371.c @@ -131,6 +131,7 @@ #include <linux/dma-mapping.h> #include <linux/mutex.h> #include <linux/mm.h> +#include <linux/kernel.h> #include <asm/io.h> #include <asm/page.h> @@ -2870,11 +2871,10 @@ static int __devinit es1371_probe(struct pci_dev *pcidev, const struct pci_devic printk(KERN_WARNING "es1371: architecture does not support 32bit PCI busmaster DMA\n"); return i; } - if (!(s = kmalloc(sizeof(struct es1371_state), GFP_KERNEL))) { + if (!(s = kzalloc(sizeof(struct es1371_state), GFP_KERNEL))) { printk(KERN_WARNING PFX "out of memory\n"); return -ENOMEM; } - memset(s, 0, sizeof(struct es1371_state)); s->codec = ac97_alloc_codec(); if(s->codec == NULL) @@ -2998,7 +2998,7 @@ static int __devinit es1371_probe(struct pci_dev *pcidev, const struct pci_devic set_fs(KERNEL_DS); val = SOUND_MASK_LINE; mixdev_ioctl(s->codec, SOUND_MIXER_WRITE_RECSRC, (unsigned long)&val); - for (i = 0; i < sizeof(initvol)/sizeof(initvol[0]); i++) { + for (i = 0; i < ARRAY_SIZE(initvol); i++) { val = initvol[i].vol; mixdev_ioctl(s->codec, initvol[i].mixch, (unsigned long)&val); } diff --git a/sound/oss/hal2.c b/sound/oss/hal2.c index d18286ccc14d..a94b9df489dc 100644 --- a/sound/oss/hal2.c +++ b/sound/oss/hal2.c @@ -1377,7 +1377,7 @@ static int hal2_release(struct inode *inode, struct file *file) return 0; } -static struct file_operations hal2_audio_fops = { +static const struct file_operations hal2_audio_fops = { .owner = THIS_MODULE, .llseek = no_llseek, .read = hal2_read, @@ -1388,7 +1388,7 @@ static struct file_operations hal2_audio_fops = { .release = hal2_release, }; -static struct file_operations hal2_mixer_fops = { +static const struct file_operations hal2_mixer_fops = { .owner = THIS_MODULE, .llseek = no_llseek, .ioctl = hal2_ioctl_mixdev, @@ -1435,10 +1435,9 @@ static int hal2_init_card(struct hal2_card **phal2, struct hpc3_regs *hpc3) int ret = 0; struct hal2_card *hal2; - hal2 = kmalloc(sizeof(struct hal2_card), GFP_KERNEL); + hal2 = kzalloc(sizeof(struct hal2_card), GFP_KERNEL); if (!hal2) return -ENOMEM; - memset(hal2, 0, sizeof(struct hal2_card)); hal2->ctl_regs = (struct hal2_ctl_regs *)hpc3->pbus_extregs[0]; hal2->aes_regs = (struct hal2_aes_regs *)hpc3->pbus_extregs[1]; diff --git a/sound/oss/i810_audio.c b/sound/oss/i810_audio.c index c3c8a720d555..f5e31f11973d 100644 --- a/sound/oss/i810_audio.c +++ b/sound/oss/i810_audio.c @@ -2580,10 +2580,9 @@ static int i810_open(struct inode *inode, struct file *file) for (i = 0; i < NR_HW_CH && card && !card->initializing; i++) { if (card->states[i] == NULL) { state = card->states[i] = (struct i810_state *) - kmalloc(sizeof(struct i810_state), GFP_KERNEL); + kzalloc(sizeof(struct i810_state), GFP_KERNEL); if (state == NULL) return -ENOMEM; - memset(state, 0, sizeof(struct i810_state)); dmabuf = &state->dmabuf; goto found_virt; } @@ -3205,10 +3204,9 @@ static void __devinit i810_configure_clocking (void) */ if(card != NULL) { state = card->states[0] = (struct i810_state *) - kmalloc(sizeof(struct i810_state), GFP_KERNEL); + kzalloc(sizeof(struct i810_state), GFP_KERNEL); if (state == NULL) return; - memset(state, 0, sizeof(struct i810_state)); dmabuf = &state->dmabuf; dmabuf->write_channel = card->alloc_pcm_channel(card); @@ -3273,11 +3271,10 @@ static int __devinit i810_probe(struct pci_dev *pci_dev, const struct pci_device return -ENODEV; } - if ((card = kmalloc(sizeof(struct i810_card), GFP_KERNEL)) == NULL) { + if ((card = kzalloc(sizeof(struct i810_card), GFP_KERNEL)) == NULL) { printk(KERN_ERR "i810_audio: out of memory\n"); return -ENOMEM; } - memset(card, 0, sizeof(*card)); card->initializing = 1; card->pci_dev = pci_dev; diff --git a/sound/oss/kahlua.c b/sound/oss/kahlua.c index 12e7b3038be2..dfe670f12e67 100644 --- a/sound/oss/kahlua.c +++ b/sound/oss/kahlua.c @@ -139,13 +139,12 @@ static int __devinit probe_one(struct pci_dev *pdev, const struct pci_device_id printk(KERN_INFO "kahlua: XpressAudio on IRQ %d, DMA %d, %d\n", irq, dma8, dma16); - hw_config = kmalloc(sizeof(struct address_info), GFP_KERNEL); + hw_config = kzalloc(sizeof(struct address_info), GFP_KERNEL); if(hw_config == NULL) { printk(KERN_ERR "kahlua: out of memory.\n"); return 1; } - memset(hw_config, 0, sizeof(*hw_config)); pci_set_drvdata(pdev, hw_config); diff --git a/sound/oss/msnd_pinnacle.c b/sound/oss/msnd_pinnacle.c index 24110d63b136..f1f49ebf752e 100644 --- a/sound/oss/msnd_pinnacle.c +++ b/sound/oss/msnd_pinnacle.c @@ -1106,7 +1106,7 @@ static irqreturn_t intr(int irq, void *dev_id) return IRQ_HANDLED; } -static struct file_operations dev_fileops = { +static const struct file_operations dev_fileops = { .owner = THIS_MODULE, .read = dev_read, .write = dev_write, diff --git a/sound/oss/nec_vrc5477.c b/sound/oss/nec_vrc5477.c index da9728e17727..27b4ba3aaa7c 100644 --- a/sound/oss/nec_vrc5477.c +++ b/sound/oss/nec_vrc5477.c @@ -1381,11 +1381,11 @@ static int vrc5477_ac97_ioctl(struct inode *inode, struct file *file, int val, ret; #ifdef VRC5477_AC97_DEBUG - for (count=0; count<sizeof(ioctl_str)/sizeof(ioctl_str[0]); count++) { + for (count = 0; count < ARRAY_SIZE(ioctl_str); count++) { if (ioctl_str[count].cmd == cmd) break; } - if (count < sizeof(ioctl_str)/sizeof(ioctl_str[0])) + if (count < ARRAY_SIZE(ioctl_str)) printk(KERN_INFO PFX "ioctl %s\n", ioctl_str[count].str); else printk(KERN_INFO PFX "ioctl unknown, 0x%x\n", cmd); @@ -1860,11 +1860,10 @@ static int __devinit vrc5477_ac97_probe(struct pci_dev *pcidev, if (pcidev->irq == 0) return -1; - if (!(s = kmalloc(sizeof(struct vrc5477_ac97_state), GFP_KERNEL))) { + if (!(s = kzalloc(sizeof(struct vrc5477_ac97_state), GFP_KERNEL))) { printk(KERN_ERR PFX "alloc of device struct failed\n"); return -1; } - memset(s, 0, sizeof(struct vrc5477_ac97_state)); init_waitqueue_head(&s->dma_adc.wait); init_waitqueue_head(&s->dma_dac.wait); diff --git a/sound/oss/opl3.c b/sound/oss/opl3.c index 2e8cfa5481f2..fc273e550944 100644 --- a/sound/oss/opl3.c +++ b/sound/oss/opl3.c @@ -166,7 +166,7 @@ int opl3_detect(int ioaddr, int *osp) return 0; } - devc = kmalloc(sizeof(*devc), GFP_KERNEL); + devc = kzalloc(sizeof(*devc), GFP_KERNEL); if (devc == NULL) { @@ -175,7 +175,6 @@ int opl3_detect(int ioaddr, int *osp) return 0; } - memset(devc, 0, sizeof(*devc)); strcpy(devc->fm_info.name, "OPL2"); if (!request_region(ioaddr, 4, devc->fm_info.name)) { diff --git a/sound/oss/os.h b/sound/oss/os.h index 0490562c7f7f..a1a962d7f67d 100644 --- a/sound/oss/os.h +++ b/sound/oss/os.h @@ -43,4 +43,4 @@ extern int sound_nblocks; #undef PSEUDO_DMA_AUTOINIT #define ALLOW_BUFFER_MAPPING -extern struct file_operations oss_sound_fops; +extern const struct file_operations oss_sound_fops; diff --git a/sound/oss/sb_card.c b/sound/oss/sb_card.c index 8666291c0052..27acd6f29b98 100644 --- a/sound/oss/sb_card.c +++ b/sound/oss/sb_card.c @@ -137,11 +137,10 @@ static int __init sb_init_legacy(void) { struct sb_module_options sbmo = {0}; - if((legacy = kmalloc(sizeof(struct sb_card_config), GFP_KERNEL)) == NULL) { + if((legacy = kzalloc(sizeof(struct sb_card_config), GFP_KERNEL)) == NULL) { printk(KERN_ERR "sb: Error: Could not allocate memory\n"); return -ENOMEM; } - memset(legacy, 0, sizeof(struct sb_card_config)); legacy->conf.io_base = io; legacy->conf.irq = irq; @@ -247,11 +246,10 @@ static int sb_pnp_probe(struct pnp_card_link *card, const struct pnp_card_device return -EBUSY; } - if((scc = kmalloc(sizeof(struct sb_card_config), GFP_KERNEL)) == NULL) { + if((scc = kzalloc(sizeof(struct sb_card_config), GFP_KERNEL)) == NULL) { printk(KERN_ERR "sb: Error: Could not allocate memory\n"); return -ENOMEM; } - memset(scc, 0, sizeof(struct sb_card_config)); printk(KERN_INFO "sb: PnP: Found Card Named = \"%s\", Card PnP id = " \ "%s, Device PnP id = %s\n", card->card->name, card_id->id, diff --git a/sound/oss/sh_dac_audio.c b/sound/oss/sh_dac_audio.c index 51f554154c48..7ea9accc2ba4 100644 --- a/sound/oss/sh_dac_audio.c +++ b/sound/oss/sh_dac_audio.c @@ -255,7 +255,7 @@ static int dac_audio_release(struct inode *inode, struct file *file) return 0; } -struct file_operations dac_audio_fops = { +const struct file_operations dac_audio_fops = { .read = dac_audio_read, .write = dac_audio_write, .ioctl = dac_audio_ioctl, diff --git a/sound/oss/soundcard.c b/sound/oss/soundcard.c index a89108cb74ea..dcd8d6d2f56f 100644 --- a/sound/oss/soundcard.c +++ b/sound/oss/soundcard.c @@ -32,6 +32,7 @@ #include <linux/ctype.h> #include <linux/stddef.h> #include <linux/kmod.h> +#include <linux/kernel.h> #include <asm/dma.h> #include <asm/io.h> #include <linux/wait.h> @@ -482,7 +483,7 @@ static int sound_mmap(struct file *file, struct vm_area_struct *vma) return 0; } -struct file_operations oss_sound_fops = { +const struct file_operations oss_sound_fops = { .owner = THIS_MODULE, .llseek = no_llseek, .read = sound_read, @@ -557,7 +558,7 @@ static int __init oss_init(void) /* Protecting the innocent */ sound_dmap_flag = (dmabuf > 0 ? 1 : 0); - for (i = 0; i < sizeof (dev_list) / sizeof *dev_list; i++) { + for (i = 0; i < ARRAY_SIZE(dev_list); i++) { device_create(sound_class, NULL, MKDEV(SOUND_MAJOR, dev_list[i].minor), "%s", dev_list[i].name); @@ -581,7 +582,7 @@ static void __exit oss_cleanup(void) { int i, j; - for (i = 0; i < sizeof (dev_list) / sizeof *dev_list; i++) { + for (i = 0; i < ARRAY_SIZE(dev_list); i++) { device_destroy(sound_class, MKDEV(SOUND_MAJOR, dev_list[i].minor)); if (!dev_list[i].num) continue; diff --git a/sound/oss/swarm_cs4297a.c b/sound/oss/swarm_cs4297a.c index 471c274c5000..016b918329ad 100644 --- a/sound/oss/swarm_cs4297a.c +++ b/sound/oss/swarm_cs4297a.c @@ -77,6 +77,7 @@ #include <linux/poll.h> #include <linux/smp_lock.h> #include <linux/mutex.h> +#include <linux/kernel.h> #include <asm/byteorder.h> #include <asm/dma.h> @@ -615,25 +616,23 @@ static int init_serdma(serdma_t *dma) /* Descriptors */ dma->ringsz = DMA_DESCR; - dma->descrtab = kmalloc(dma->ringsz * sizeof(serdma_descr_t), GFP_KERNEL); + dma->descrtab = kzalloc(dma->ringsz * sizeof(serdma_descr_t), GFP_KERNEL); if (!dma->descrtab) { - printk(KERN_ERR "cs4297a: kmalloc descrtab failed\n"); + printk(KERN_ERR "cs4297a: kzalloc descrtab failed\n"); return -1; } - memset(dma->descrtab, 0, dma->ringsz * sizeof(serdma_descr_t)); dma->descrtab_end = dma->descrtab + dma->ringsz; /* XXX bloddy mess, use proper DMA API here ... */ dma->descrtab_phys = CPHYSADDR((long)dma->descrtab); dma->descr_add = dma->descr_rem = dma->descrtab; /* Frame buffer area */ - dma->dma_buf = kmalloc(DMA_BUF_SIZE, GFP_KERNEL); + dma->dma_buf = kzalloc(DMA_BUF_SIZE, GFP_KERNEL); if (!dma->dma_buf) { - printk(KERN_ERR "cs4297a: kmalloc dma_buf failed\n"); + printk(KERN_ERR "cs4297a: kzalloc dma_buf failed\n"); kfree(dma->descrtab); return -1; } - memset(dma->dma_buf, 0, DMA_BUF_SIZE); dma->dma_buf_phys = CPHYSADDR((long)dma->dma_buf); /* Samples buffer area */ @@ -2618,12 +2617,11 @@ static int __init cs4297a_init(void) udelay(100); #endif - if (!(s = kmalloc(sizeof(struct cs4297a_state), GFP_KERNEL))) { + if (!(s = kzalloc(sizeof(struct cs4297a_state), GFP_KERNEL))) { CS_DBGOUT(CS_ERROR, 1, printk(KERN_ERR "cs4297a: probe() no memory for state struct.\n")); return -1; } - memset(s, 0, sizeof(struct cs4297a_state)); s->magic = CS4297a_MAGIC; init_waitqueue_head(&s->dma_adc.wait); init_waitqueue_head(&s->dma_dac.wait); @@ -2676,7 +2674,7 @@ static int __init cs4297a_init(void) #if 0 val = SOUND_MASK_LINE; mixer_ioctl(s, SOUND_MIXER_WRITE_RECSRC, (unsigned long) &val); - for (i = 0; i < sizeof(initvol) / sizeof(initvol[0]); i++) { + for (i = 0; i < ARRAY_SIZE(initvol); i++) { val = initvol[i].vol; mixer_ioctl(s, initvol[i].mixch, (unsigned long) &val); } diff --git a/sound/oss/trident.c b/sound/oss/trident.c index 6b1f8c9cdcf8..72a8a0ed36a2 100644 --- a/sound/oss/trident.c +++ b/sound/oss/trident.c @@ -2729,12 +2729,11 @@ trident_open(struct inode *inode, struct file *file) } for (i = 0; i < NR_HW_CH; i++) { if (card->states[i] == NULL) { - state = card->states[i] = kmalloc(sizeof(*state), GFP_KERNEL); + state = card->states[i] = kzalloc(sizeof(*state), GFP_KERNEL); if (state == NULL) { mutex_unlock(&card->open_mutex); return -ENOMEM; } - memset(state, 0, sizeof(*state)); mutex_init(&state->sem); dmabuf = &state->dmabuf; goto found_virt; @@ -3618,7 +3617,7 @@ ali_allocate_other_states_resources(struct trident_state *state, int chan_nums) } return -EBUSY; } - s = card->states[i] = kmalloc(sizeof(*state), GFP_KERNEL); + s = card->states[i] = kzalloc(sizeof(*state), GFP_KERNEL); if (!s) { num = ali_multi_channels_5_1[state_count]; ali_free_pcm_channel(card, num); @@ -3630,7 +3629,6 @@ ali_allocate_other_states_resources(struct trident_state *state, int chan_nums) } return -ENOMEM; } - memset(s, 0, sizeof(*state)); s->dmabuf.channel = channel; s->dmabuf.ossfragshift = s->dmabuf.ossmaxfrags = @@ -4399,11 +4397,10 @@ trident_probe(struct pci_dev *pci_dev, const struct pci_device_id *pci_id) } rc = -ENOMEM; - if ((card = kmalloc(sizeof(*card), GFP_KERNEL)) == NULL) { + if ((card = kzalloc(sizeof(*card), GFP_KERNEL)) == NULL) { printk(KERN_ERR "trident: out of memory\n"); goto out_release_region; } - memset(card, 0, sizeof (*card)); init_timer(&card->timer); card->iobase = iobase; diff --git a/sound/oss/via82cxxx_audio.c b/sound/oss/via82cxxx_audio.c index c96cc8c68b3b..7ab3a732e184 100644 --- a/sound/oss/via82cxxx_audio.c +++ b/sound/oss/via82cxxx_audio.c @@ -1619,7 +1619,7 @@ out: } -static struct file_operations via_mixer_fops = { +static const struct file_operations via_mixer_fops = { .owner = THIS_MODULE, .open = via_mixer_open, .llseek = no_llseek, @@ -2042,7 +2042,7 @@ static int via_interrupt_init (struct via_info *card) * */ -static struct file_operations via_dsp_fops = { +static const struct file_operations via_dsp_fops = { .owner = THIS_MODULE, .open = via_dsp_open, .release = via_dsp_release, diff --git a/sound/oss/vwsnd.c b/sound/oss/vwsnd.c index 6dfb9f4b03ec..d25249a932bf 100644 --- a/sound/oss/vwsnd.c +++ b/sound/oss/vwsnd.c @@ -3035,7 +3035,7 @@ static int vwsnd_audio_release(struct inode *inode, struct file *file) return err; } -static struct file_operations vwsnd_audio_fops = { +static const struct file_operations vwsnd_audio_fops = { .owner = THIS_MODULE, .llseek = no_llseek, .read = vwsnd_audio_read, @@ -3225,7 +3225,7 @@ static int vwsnd_mixer_ioctl(struct inode *ioctl, return retval; } -static struct file_operations vwsnd_mixer_fops = { +static const struct file_operations vwsnd_mixer_fops = { .owner = THIS_MODULE, .llseek = no_llseek, .ioctl = vwsnd_mixer_ioctl, diff --git a/sound/oss/waveartist.c b/sound/oss/waveartist.c index 26a7c6af95bc..b48c72923a13 100644 --- a/sound/oss/waveartist.c +++ b/sound/oss/waveartist.c @@ -1267,12 +1267,10 @@ static int __init waveartist_init(wavnc_info *devc) conf_printf2(dev_name, devc->hw.io_base, devc->hw.irq, devc->hw.dma, devc->hw.dma2); - portc = kmalloc(sizeof(wavnc_port_info), GFP_KERNEL); + portc = kzalloc(sizeof(wavnc_port_info), GFP_KERNEL); if (portc == NULL) goto nomem; - memset(portc, 0, sizeof(wavnc_port_info)); - my_dev = sound_install_audiodrv(AUDIO_DRIVER_VERSION, dev_name, &waveartist_audio_driver, sizeof(struct audio_driver), devc->audio_flags, AFMT_U8 | AFMT_S16_LE | AFMT_S8, |