summaryrefslogtreecommitdiffstats
path: root/sound/drivers (follow)
Commit message (Collapse)AuthorAgeFilesLines
* [ALSA] Changed Jaroslav Kysela's e-mail from perex@suse.cz to perex@perex.czJaroslav Kysela2007-10-1610-14/+14
| | | | Signed-off-by: Jaroslav Kysela <perex@perex.cz>
* [ALSA] mpu-401: remove MPU401_INFO_UART_ONLY flagClemens Ladisch2007-10-162-4/+5
| | | | | | | | | | Since the last patch made the ENTER_UART command optional, the enter_uart option and its corresponding flag have become superfluous. The uart_enter option remains for backward compatibility but just prints a warning when used. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] mpu-401: do not require an ACK byte for the ENTER_UART commandClemens Ladisch2007-10-161-1/+1
| | | | | | | | | | | | The original MPU-401 does not send an ACK byte after processing the ENTER_UART command, so we better do not try to wait for it. Many clones get this wrong and do send an ACK, but when interpreting it as MIDI, it is just a harmless Active Sensing message, and it is likely to be read and discarded by the interrupt handler before the MIDI input device is triggered. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Clean up MakefileTakashi Iwai2007-10-161-4/+2
| | | | | | | | Clean up Makefile using xxx- style instead of ifeq(CONFIG_XXX,y). Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Clean up with common snd_ctl_boolean_*_info callbacksTakashi Iwai2007-10-163-34/+4
| | | | | | | Clean up codes using the new common snd_ctl_boolean_*_info() callbacks. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] portman2x4 section mismatchRandy Dunlap2007-07-201-1/+1
| | | | | | | | | | FIx section mismatch when CONFIG_HOTPLUG=n: WARNING: sound/built-in.o(.exit.text+0x271): Section mismatch: reference to .init.text:snd_p ortman_unregister_all (between 'snd_portman_module_exit' and 'alsa_mpu401_uart_exit') Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] more section mismatchesRandy Dunlap2007-07-202-2/+2
| | | | | | | | | | | | | Something about __init_or_module isn't working as expected (?). CONFIG_HOTPLUG=y CONFIG_MODULES=n Fix shared init/exit code helper: WARNING: sound/built-in.o(.exit.text+0x243): Section mismatch: reference to .init.text: (between 'alsa_card_mpu401_exit' and 'ac97_bus_exit') WARNING: sound/built-in.o(.exit.text+0x21b): Section mismatch: reference to .init.text: (between 'alsa_card_dummy_exit' and 'alsa_card_serial_exit') Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] fix section mismatchRandy Dunlap2007-07-202-2/+2
| | | | | | | | | | Fix shared init/exit function attributes: WARNING: sound/built-in.o(.exit.text+0x4a1): Section mismatch: reference to .init.text: (between 'alsa_card_virmidi_exit' and 'alsa_card_serial_exit') WARNING: sound/built-in.o(.exit.text+0x4c1): Section mismatch: reference to .init.text: (between 'alsa_card_serial_exit' and 'ac97_bus_exit') Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* ALSA: more section mismatchesRandy Dunlap2007-07-011-1/+1
| | | | | | | | | | | | | Fix section mismatch warnings: WARNING: sound/built-in.o(.exit.text+0x3ad): Section mismatch: reference to .init.text: (between 'sb_exit' and 'unload_uart6850') WARNING: sound/built-in.o(.exit.text+0x753): Section mismatch: reference to .init.text: (between 'snd_mts64_module_exit' and 'snd_portman_module_exit') Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Cc: Jaroslav Kysela <perex@suse.cz> Cc: Takashi Iwai <tiwai@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* [ALSA] add MODULE_FIRMWARE entriesClemens Ladisch2007-05-111-0/+14
| | | | | | | Add MODULE_FIRMWARE() entries, where appropriate. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] sound: fix incorrect use of platform_device_register()Akinobu Mita2007-05-112-4/+4
| | | | | | | | | | | | | | The platform_device allocated by platform_device_alloc() should be added to the device hierarchy by platform_device_add() instead of platform_device_register(). Otherwise it will hit WARN_ON() in platform_device_register(). by illegal refcount. This patch fixes such incorrect usages in portman2x4 and mts64 drivers. Also it removes unnecessary trailing whitespaces. Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] mpu401 - Add MPU401_INFO_UART_ONLY bitflagTakashi Iwai2007-05-112-10/+20
| | | | | | | | | | | Added MPU401_INFO_UART_ONLY bitflag to avoid issueing UART_ENTER command at opening streams. Some devices support only UART mode and give errors to UART_ENTER. A new module option, uart_enter, is added to snd-mpu401 driver. For UART-only devices, set uart_enter=0. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* Merge branch 'linus' of master.kernel.org:/pub/scm/linux/kernel/git/perex/alsaLinus Torvalds2007-02-146-27/+28
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'linus' of master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa: [ALSA] version 1.0.14rc2 [ALSA] Fix a typo in __dev* changes in portman2x4.c [ALSA] Change AT91 PDC register defines for 2.6.20 kernel [ALSA] SoC codecs - fix Kconfig - depends -> depends on [ALSA] Fix __devinit and __devexit issues with sound drivers [ALSA] hda-codec - Patch for enabling LFE on more Dell laptops [ALSA] hda-codec - More fixes for Conexant HD Audio support [ALSA] usb-audio: add PCR-A PCM support [ALSA] emu10k1: fix typo [ALSA] usbaudio - remove urb->bandwidth reference [ALSA] ac97 - Fix silent output problem with Cx20551 codec [ALSA] hda-codec - Fix Oops with probing sigmatel codec chips
| * [ALSA] Fix a typo in __dev* changes in portman2x4.cTakashi Iwai2007-02-141-1/+1
| | | | | | | | | | | | | | Fix a typo in the last __dev* changes in portman2x4.c. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
| * [ALSA] Fix __devinit and __devexit issues with sound driversPrarit Bhargava2007-02-146-27/+28
| | | | | | | | | | | | | | | | | | | | | | | | Fix __devinit and __devexit issues with sound drivers. Resolves MODPOST warnings similar to: WARNING: sound/drivers/snd-dummy.o - Section mismatch: reference to .init.text:snd_dummy_probe from .data.rel.local between 'snd_dummy_driver' (at offset 0x0) and 'snd_dummy_controls' WARNING: sound/drivers/snd-mtpav.o - Section mismatch: reference to .init.text:snd_mtpav_probe from .data.rel.local between 'snd_mtpav_driver' (at offset 0x0) and 'snd_mtpav_input' WARNING: sound/drivers/snd-virmidi.o - Section mismatch: reference to .init.text:snd_virmidi_probe from .data.rel.local after 'snd_virmidi_driver' (at offset 0x0) Signed-off-by: Prarit Bhargava <prarit@redhat.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* | [PATCH] remove many unneeded #includes of sched.hTim Schmielau2007-02-141-1/+0
|/ | | | | | | | | | | | | | | | | | | | | | | | After Al Viro (finally) succeeded in removing the sched.h #include in module.h recently, it makes sense again to remove other superfluous sched.h includes. There are quite a lot of files which include it but don't actually need anything defined in there. Presumably these includes were once needed for macros that used to live in sched.h, but moved to other header files in the course of cleaning it up. To ease the pain, this time I did not fiddle with any header files and only removed #includes from .c-files, which tend to cause less trouble. Compile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha, arm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig, allmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all configs in arch/arm/configs on arm. I also checked that no new warnings were introduced by the patch (actually, some warnings are removed that were emitted by unnecessarily included header files). Signed-off-by: Tim Schmielau <tim@physik3.uni-rostock.de> Acked-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* [ALSA] Add even more 'const' to everything related to TLVTakashi Iwai2007-02-092-2/+2
| | | | | | | | Mark TLV data as 'const' Signed-of-by: Philipp Matthias Hahn <pmhahn@pmhahn.de> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Add snd-portman2x4 driver for Midiman Portman 2x4 MIDI deviceMatthias Koenig2007-02-093-0/+889
| | | | | | | | | snd-portman2x4 driver supports Midiman Portman 2x4 parallel port MIDI device. Signed-off-by: Matthias Koenig <mkoenig@suse.de> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Clean up serial-u16500.cTakashi Iwai2007-02-091-98/+123
| | | | | | | | Remove uesless typedefs and clean up the code a bit to follow the standard coding style. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [PATCH] remove config ordering/dependency between ucb1400-ts and sound subsystemNicolas Pitre2006-12-121-5/+1
| | | | | | | | | | | | Commit 2d4ba4a3b9aef95d328d74a17ae84f8d658059e2 introduced a dependency that was never meant to exist when the ac97_bus.c module was created. Move ac97_bus.c up the directory hierarchy to make sure it is built when selected even if sound is configured out so things work as originally intended. Signed-off-by: Nicolas Pitre <nico@cam.org> Acked-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* IRQ: Maintain regs pointer globally rather than passing to IRQ handlersDavid Howells2006-10-055-10/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Maintain a per-CPU global "struct pt_regs *" variable which can be used instead of passing regs around manually through all ~1800 interrupt handlers in the Linux kernel. The regs pointer is used in few places, but it potentially costs both stack space and code to pass it around. On the FRV arch, removing the regs parameter from all the genirq function results in a 20% speed up of the IRQ exit path (ie: from leaving timer_interrupt() to leaving do_IRQ()). Where appropriate, an arch may override the generic storage facility and do something different with the variable. On FRV, for instance, the address is maintained in GR28 at all times inside the kernel as part of general exception handling. Having looked over the code, it appears that the parameter may be handed down through up to twenty or so layers of functions. Consider a USB character device attached to a USB hub, attached to a USB controller that posts its interrupts through a cascaded auxiliary interrupt controller. A character device driver may want to pass regs to the sysrq handler through the input layer which adds another few layers of parameter passing. I've build this code with allyesconfig for x86_64 and i386. I've runtested the main part of the code on FRV and i386, though I can't test most of the drivers. I've also done partial conversion for powerpc and MIPS - these at least compile with minimal configurations. This will affect all archs. Mostly the changes should be relatively easy. Take do_IRQ(), store the regs pointer at the beginning, saving the old one: struct pt_regs *old_regs = set_irq_regs(regs); And put the old one back at the end: set_irq_regs(old_regs); Don't pass regs through to generic_handle_irq() or __do_IRQ(). In timer_interrupt(), this sort of change will be necessary: - update_process_times(user_mode(regs)); - profile_tick(CPU_PROFILING, regs); + update_process_times(user_mode(get_irq_regs())); + profile_tick(CPU_PROFILING); I'd like to move update_process_times()'s use of get_irq_regs() into itself, except that i386, alone of the archs, uses something other than user_mode(). Some notes on the interrupt handling in the drivers: (*) input_dev() is now gone entirely. The regs pointer is no longer stored in the input_dev struct. (*) finish_unlinks() in drivers/usb/host/ohci-q.c needs checking. It does something different depending on whether it's been supplied with a regs pointer or not. (*) Various IRQ handler function pointers have been moved to type irq_handler_t. Signed-Off-By: David Howells <dhowells@redhat.com> (cherry picked from 1b16e7ac850969f38b375e511e3fa2f474a33867 commit)
* [PATCH] NULL noise removalAl Viro2006-09-251-1/+1
| | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [ALSA] Move CONFIG_SND_AC97_POWER_SAVE to pci/KconfigTakashi Iwai2006-09-231-13/+0
| | | | | | | | Moved the entry of CONFIG_SND_AC97_POWER_SAVE from drivers/Kconfig to more appropriate place, pci/Kconfig. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] opl4: Use SEEK_{SET,CUR,END} instead of hardcoded valuesJosef 'Jeff' Sipek2006-09-231-3/+3
| | | | | | | | | opl4: Use SEEK_{SET,CUR,END} instead of hardcoded values Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Add dB scale information to vxpocket and vx222 driversTakashi Iwai2006-09-231-2/+15
| | | | | | | Added the dB scale information to vxpocket and vx222 drivers. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Add dB scale information to dummy driverTakashi Iwai2006-09-231-2/+8
| | | | | | | Added the dB scale information to dummy driver. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Fix some typos in snd-dummy driverTakashi Iwai2006-09-231-5/+5
| | | | | | | Fixed some typos in snd-dummy driver. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Add snd-mts64 driver for ESI Miditerminal 4140Matthias Koenig2006-09-233-0/+1106
| | | | | | | | | | Added snd-mts64 driver for Ego Systems (ESI) Miditerminal 4140 by Matthias Koenig <mk@phasorlab.de>. The driver requires parport (CONFIG_PARPORT). Signed-off-by: Matthias Koenig <mk@phasorlab.de> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Add experimental support of aggressive AC97 power-saving modeTakashi Iwai2006-09-231-0/+13
| | | | | | | | | | | | | Added CONFIG_SND_AC97_POWER_SAVE kernel config to enable the support of aggressive AC97 power-saving mode. In this mode, the AC97 powerdown register bits are dynamically controlled at each open/close of PCM streams. The mode is activated via power_save option for snd-ac97-codec driver. As default it's off. It can be turned on/off on the fly via sysfs, too. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Deprecate snd_card_free_in_thread()Takashi Iwai2006-09-231-1/+1
| | | | | | | | Deprecated snd_card_free_in_thread(), replaced with snd_card_free_when_closed(). Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Fix disconnection of proc interfaceTakashi Iwai2006-09-231-2/+1
| | | | | | | | | | - Add the linked list to each proc entry to enable a single-shot disconnection (unregister) - Deprecate snd_info_unregister(), use snd_info_free_entry() - Removed NULL checks of snd_info_free_entry() Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Conversions from kmalloc+memset to k(z|c)allocPanagiotis Issaris2006-08-031-5/+2
| | | | | | | | sound: Conversions from kmalloc+memset to k(c|z)alloc. Signed-off-by: Panagiotis Issaris <takis@issaris.org> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [PATCH] irq-flags: sound: Use the new IRQF_ constantsThomas Gleixner2006-07-023-3/+3
| | | | | | | | | | | Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@elte.hu> Cc: "David S. Miller" <davem@davemloft.net> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Jaroslav Kysela <perex@suse.cz> Cc: Takashi Iwai <tiwai@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] 64bit resource: fix up printks for resources in sound driversGreg Kroah-Hartman2006-06-271-2/+3
| | | | | | | | | | This is needed if we wish to change the size of the resource structures. Based on an original patch from Vivek Goyal <vgoyal@in.ibm.com> Cc: Vivek Goyal <vgoyal@in.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* [ALSA] virmidi: revert erroneous removal of zero initializationClemens Ladisch2006-06-221-1/+1
| | | | | | | The last patch that tried to remove zero initializations of static variables accidentally removed a not-quite-zero initialization too. Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
* [ALSA] Change an arugment of snd_mpu401_uart_new() to bit flagsTakashi Iwai2006-06-221-28/+68
| | | | | | | | | | Change the 5th argument of snd_mpu401_uart_new() to bit flags instead of a boolean. The argument takes bits that consist of MPU401_INFO_XXX flags. The callers that used the value 1 there are replaced with MPU401_INFO_INTEGRATED. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] mpu401_uart - Fix coding style and code clean upTakashi Iwai2006-06-221-42/+66
| | | | | | | | | - fold lines and fix spaces to follow the standard style - added some comments - moved EXPORT_SYMBOL() near the definition - some code clean up Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] Remove zero-initialization of static variablesTakashi Iwai2006-06-221-1/+1
| | | | | | | Removed zero-initializations of static variables. A tiny optimization. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] add more sequencer port type information bitsClemens Ladisch2006-06-223-3/+9
| | | | | | | | Add four new information flags SNDRV_SEQ_PORT_TYPE_HARDWARE, _SOFTWARE, _SYNTHESIZER, _PORT for sequencer ports. This makes it easier for apps like Rosegarden to make policy decisions based on the port type. Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
* [ALSA] fix port type bitsClemens Ladisch2006-06-222-3/+2
| | | | | | | Fix the port information about non-MIDI messages that had wrong values for some OPL3 and EmuX ports. Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
* [ALSA] Remove unneeded read/write_size fields in proc text opsTakashi Iwai2006-06-221-1/+1
| | | | | | | Remove unneeded read/write_size fields in proc text ops. snd_info_set_text_ops() is fixed, too. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] vx - Move EXPORT_SYMBOL() to adjacent to each functionTakashi Iwai2006-06-222-16/+17
| | | | | | Move EXPORT_SYMBOL() to adjacent to each exported function/variable. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] opl4 - Move EXPORT_SYMBOL() to adjacent to each functionTakashi Iwai2006-06-221-4/+8
| | | | | | Move EXPORT_SYMBOL() to adjacent to each exported function/variable. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] opl3 - Move EXPORT_SYMBOL() to adjacent to each functionTakashi Iwai2006-06-222-9/+14
| | | | | | Move EXPORT_SYMBOL() to adjacent to each exported function/variable. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] unregister platform device again if probe was unsuccessfulRene Herman2006-06-225-5/+25
| | | | | | | | | This second one unregisters the platform device again when the probe is unsuccesful for sound/drivers, sound/arm/sa11xx-uda1341.c and sound/ppc/powermac.c. This gets them all. Signed-off-by: Rene Herman <rene.herman@keyaccess.nl> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [PATCH] mpu401 section fixAndrew Morton2006-05-211-1/+1
| | | | | | | | | WARNING: sound/drivers/mpu401/snd-mpu401.o - Section mismatch: reference to .init.text: from .text between 'snd_mpu401_pnp_probe' (at offset 0x1f7) and 'snd_mpu401_pnp_remove' Cc: Jaroslav Kysela <perex@suse.cz> Cc: Takashi Iwai <tiwai@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [ALSA] continue on IS_ERR from platform device registrationRene Herman2006-04-274-40/+16
| | | | | | | | | | | | I previously only concerned myself with sound/isa. When I now checked for more platform_device_register_simple() usages in ALSA I found a couple more drivers that needed the same patches as already submitted for all the ISA drivers. This first one is the continue-on-iserr patch for sound/drivers. This gets them all. Signed-off-by: Rene Herman <rene.herman@keyaccess.nl> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [PATCH] sound: fix hang in mpu401_uart.cJon Masters2006-04-201-9/+33
| | | | | | | | | | | | | | | | | | | | | This fixes a hang in mpu401_uart.c that can occur when the mpu401 interface is non-existent or otherwise doesn't respond to commands but we issue IO anyway. snd_mpu401_uart_cmd now returns an error code that is passed up the stack so that an open() will fail immediately in such cases. Eventually discovered after wine/cxoffice would constantly cause hard lockups on my desktop immediately after loading (emulating Windows too well). Turned out that I'd recently moved my sound cards around and using /dev/sequencer now talks to a sound card with a broken MPU. This second version changes -EFAULT to -EIO and frees open resources on error too. Test booted and seems to work ok. Signed-off-by: Jon Masters <jcm@jonmasters.org> Cc: Jaroslav Kysela <perex@suse.cz> Acked-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] pnp: mpu401: adjust pnp_register_driver signatureBjorn Helgaas2006-03-271-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | This series of patches removes the assumption that pnp_register_driver() returns the number of devices claimed. Returning the count is unreliable because devices may be hot-plugged in the future. (Many devices don't support hot-plug, of course, but PNP in general does.) This changes the convention to "zero for success, or a negative error value," which matches pci_register_driver(), acpi_bus_register_driver(), and platform_driver_register(). If drivers need to know the number of devices, they can count calls to their .probe() methods. This patch: Remove the assumption that pnp_register_driver() returns the number of devices claimed. Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Cc: Adam Belay <ambx1@neo.rr.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [ALSA] fix some memory leaksAdrian Bunk2006-03-221-0/+1
| | | | | | | | | Modules: Generic drivers,ES18xx driver,CS46xx driver This patch fixes two memory leaks spotted by the Coverity checker. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>