summaryrefslogtreecommitdiff
path: root/sound/isa/gus
AgeCommit message (Collapse)Author
2008-01-31[ALSA] Remove sound/driver.hTakashi Iwai
This header file exists only for some hacks to adapt alsa-driver tree. It's useless for building in the kernel. Let's move a few lines in it to sound/core.h and remove it. With this patch, sound/driver.h isn't removed but has just a single compile warning to include it. This should be really killed in future. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31[ALSA] sound/isa: kill pnp_resource_changeRene Herman
This removes the pnp_resource_change use from the ALSA ISAPnP drivers. In 2.4 these were useful in providing an easy path to setting the resources, but in 2.6 they retain function as a layering violation only. This makes for a nice cleanup (-550 lines) of ALSA but moreover, ALSA is the only remaining user of pnp_init_resource_table(), pnp_resource_change() and pnp_manual_config_dev() (and, in fact, of 'struct pnp_resource_table') in the tree outide of drivers/pnp itself meaning it makes for more cleanup potential inside the PnP layer. Thomas Renninger acked their removal from that side, you did from the ALSA side (CC list just copied from that thread). Against current alsa-kernel HG. Many more potential cleanups in there, but this _only_ removes the pnp_resource_change code. Compile tested against current alsa-kernel HG and compile- and use-tested against 2.6.23.x (few offsets). Cc: Thomas Renninger <trenn@suse.de> Signed-off-by: Rene Herman <rene.herman@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31[ALSA] Remove sequencer instrument layerTakashi Iwai
Remove sequencer instrument layer from the tree. This mechanism hasn't been used much with the actual devices. The only reasonable user was OPL3 loader, and now it was rewritten to use hwdep instead. So, let's remove the rest of rotten codes. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2007-10-16[ALSA] fix bootup crash in snd_gus_interrupt()Ingo Molnar
when simulating a storm of fake GUS interrupts (without actually owning this venerable piece of ISA hardware) the driver falls over (crashes) in two ways: 1) spinlocks being initialized too late: INFO: trying to register non-static key. the code is fine but needs lockdep annotation. turning off the locking correctness validator. [<401058ca>] show_trace_log_lvl+0x1a/0x30 [<401064b2>] show_trace+0x12/0x20 [<401064d6>] dump_stack+0x16/0x20 [<4014a72b>] __lock_acquire+0xcfb/0x1030 [<4014aac0>] lock_acquire+0x60/0x80 [<40721a68>] _spin_lock_irqsave+0x38/0x50 [<4058fc12>] snd_gf1_i_look8+0x22/0x60 [<405906fe>] snd_gus_interrupt+0x13e/0x270 [<401548e8>] handle_IRQ_event+0x28/0x60 [<40155cc1>] handle_fasteoi_irq+0x71/0xe0 [<40107238>] do_IRQ+0x48/0xa0 [<401051fe>] common_interrupt+0x2e/0x40 [<40156822>] register_handler_proc+0x92/0xf0 [<401550c2>] setup_irq+0xe2/0x190 [<40155224>] request_irq+0xb4/0xd0 [<4058f524>] snd_gus_create+0x124/0x3c0 [<40aa4087>] snd_gusclassic_probe+0x2a7/0x4b0 [<403f5eff>] isa_bus_probe+0x1f/0x30 [<403f1944>] driver_probe_device+0x84/0x190 [<403f1a58>] __device_attach+0x8/0x10 [<403f0e63>] bus_for_each_drv+0x53/0x80 [<403f1b1b>] device_attach+0x8b/0x90 [<403f0dd8>] bus_attach_device+0x48/0x80 [<403efdbd>] device_add+0x45d/0x5a0 [<403eff12>] device_register+0x12/0x20 [<403f60c3>] isa_register_driver+0xb3/0x140 [<40aa3dd2>] alsa_card_gusclassic_init+0x12/0x20 [<40a665c3>] kernel_init+0x133/0x310 [<401054a7>] kernel_thread_helper+0x7/0x10 ======================= 2) callback functions not being filled in yet: BUG: unable to handle kernel NULL pointer dereference at virtual address 00000000 printing eip: 00000000 *pde = 00000000 Oops: 0000 [#1] SMP DEBUG_PAGEALLOC CPU: 0 EIP: 0060:[<00000000>] Not tainted VLI EFLAGS: 00010002 (2.6.23 #37) EIP is at 0x0 eax: 7fe94000 ebx: 7fe94000 ecx: 00000000 edx: 00000226 esi: 00000000 edi: 00000005 ebp: 7ff87c28 esp: 7ff87bf4 ds: 007b es: 007b fs: 00d8 gs: 0000 ss: 0068 Process swapper (pid: 1, ti=7ff86000 task=7ff84000 task.ti=7ff86000) Stack: 40590683 408424a9 408db87c 00000029 40787406 00000064 00000046 ff000000 000000ff 00000001 7faefaf0 00000000 00000005 7ff87c40 401548e8 00000000 40a52000 7faefaf0 00000005 7ff87c58 40155cc1 40a52030 00000005 00000000 Call Trace: [<401058ca>] show_trace_log_lvl+0x1a/0x30 [<4010598b>] show_stack_log_lvl+0xab/0xd0 [<40105b7c>] show_registers+0x1cc/0x2d0 [<40105d96>] die+0x116/0x240 [<4011d7bb>] do_page_fault+0x18b/0x670 [<40721d22>] error_code+0x72/0x80 [<401548e8>] handle_IRQ_event+0x28/0x60 [<40155cc1>] handle_fasteoi_irq+0x71/0xe0 [<40107238>] do_IRQ+0x48/0xa0 [<401051fe>] common_interrupt+0x2e/0x40 [<401a344e>] proc_create+0x3e/0x120 [<401a3733>] proc_mkdir_mode+0x23/0x50 [<401a376f>] proc_mkdir+0xf/0x20 [<40156864>] register_handler_proc+0xd4/0xf0 [<401550c2>] setup_irq+0xe2/0x190 [<40155224>] request_irq+0xb4/0xd0 [<4058f524>] snd_gus_create+0x124/0x3c0 [<40aa4087>] snd_gusclassic_probe+0x2a7/0x4b0 [<403f5eff>] isa_bus_probe+0x1f/0x30 [<403f1944>] driver_probe_device+0x84/0x190 [<403f1a58>] __device_attach+0x8/0x10 [<403f0e63>] bus_for_each_drv+0x53/0x80 [<403f1b1b>] device_attach+0x8b/0x90 [<403f0dd8>] bus_attach_device+0x48/0x80 [<403efdbd>] device_add+0x45d/0x5a0 [<403eff12>] device_register+0x12/0x20 [<403f60c3>] isa_register_driver+0xb3/0x140 [<40aa3dd2>] alsa_card_gusclassic_init+0x12/0x20 [<40a665c3>] kernel_init+0x133/0x310 [<401054a7>] kernel_thread_helper+0x7/0x10 ======================= Code: Bad EIP value. EIP: [<00000000>] 0x0 SS:ESP 0068:7ff87bf4 Kernel panic - not syncing: Fatal exception in interrupt with these things fixed, i get the expected 'no such hardware' result from the driver initialization: Calling initcall 0x40aa3dc0: alsa_card_gusclassic_init+0x0/0x20() ALSA sound/isa/gus/gusclassic.c:136: [0x220] check 1 failed - 0xff initcall 0x40aa3dc0: alsa_card_gusclassic_init+0x0/0x20() returned 0. initcall 0x40aa3dc0 ran for 133 msecs: alsa_card_gusclassic_init+0x0/0x20() Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2007-10-16[ALSA] Changed Jaroslav Kysela's e-mail from perex@suse.cz to perex@perex.czJaroslav Kysela
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2007-10-16[ALSA] Clean up with common snd_ctl_boolean_*_info callbacksTakashi Iwai
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>
2007-05-16[ALSA] Fix probe of non-PnP ISA devicesRene Herman
isa_register_driver() returns an error if no device is found and it's no fatal error for the drivers with pnp support. Signed-off-by: Rene Herman <rene.herman@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11[ALSA] isa_bus device/driver namingRene Herman
isa_bus: delete snd_ prefix from the (sysfs visible) device/driver names. Signed-off-by: Rene Herman <rene.herman@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11[ALSA] Port the rest of ALSA ISA drivers to isa_driverTakashi Iwai
Port the rest of ALSA ISA drivers to use isa_driver framework instead of platform_driver. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11[ALSA] gusextreme: set codec_flagRene Herman
The gusextreme driver neglects to set the gus->codec_flag meaning snd_gf1_pcm_new() allocates a second 'PCM Playback Volume' control, which makes the driver fail to load. Signed-off-by: Rene Herman <rene.herman@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11[ALSA] isa_bus: gusextreemeRene Herman
gusextreme: port to isa_bus infrastructure Signed-off-by: Rene Herman <rene.herman@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11[ALSA] isa_bus: gusclassicRene Herman
gusclassic: port to isa_bus infrastructure Signed-off-by: Rene Herman <rene.herman@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-02-14[ALSA] Fix __devinit and __devexit issues with sound driversPrarit Bhargava
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>
2007-02-09[ALSA] sound/isa/gus/gus_main.c: Use abs() instead of x < 0 ? -x : x.Peter Eriksen
Signed-off-by: Peter Eriksen <s022018@student.dtu.dk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-12-20[ALSA] use the ALIGN macroClemens Ladisch
Use the ALIGN macro instead of manual calculations. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-10-22[ALSA] sound/isa/gus/interwave.c: check kmalloc() return valueAmit Choudhary
Check the return value of kmalloc() in function snd_interwave_pnp(), in file sound/isa/gus/interwave.c. Signed-off-by: Amit Choudhary <amit2030@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-10-06Various drivers' irq handlers: kill dead code, needless castsJeff Garzik
- Eliminate casts to/from void* - Eliminate checks for conditions that never occur. These typically fall into two classes: 1) Checking for 'dev_id == NULL', then it is never called with NULL as an argument. 2) Checking for invalid irq number, when the only caller (the system) guarantees the irq handler is called with the proper 'irq' number argument. Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-10-05IRQ: Maintain regs pointer globally rather than passing to IRQ handlersDavid Howells
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)
2006-09-23[ALSA] gus: Use SEEK_{SET,CUR,END} instead of hardcoded valuesJosef 'Jeff' Sipek
gus: 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>
2006-07-12[ALSA] make sound/isa/gus/gusextreme.c:devices staticAdrian Bunk
'devices' is not a good name for a global variable. Thankfully, it can become static. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-07-02[PATCH] irq-flags: sound: Use the new IRQF_ constantsThomas Gleixner
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>
2006-06-27[PATCH] 64bit resource: fix up printks for resources in sound driversGreg Kroah-Hartman
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>
2006-06-22[ALSA] Remove zero-initialization of static variablesTakashi Iwai
Removed zero-initializations of static variables. A tiny optimization. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-06-22[ALSA] add more sequencer port type information bitsClemens Ladisch
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>
2006-06-22[ALSA] Remove unneeded read/write_size fields in proc text opsTakashi Iwai
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>
2006-04-12[ALSA] unregister platform device again if probe was unsuccessfulRene Herman
Unregister the platform device again if the probe was unsuccessful. This restores the behaviour of not loading the driver on probe() failure. Signed-off-by: Rene Herman <rene.herman@keyaccess.nl> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-04-12[ALSA] continue on IS_ERR from platform device registrationRene Herman
Continue with the next one on error from device registration. This would seem the correct thing to do, even if it's not the probe() error that we're getting. Signed-off-by: Rene Herman <rene.herman@keyaccess.nl> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-03-27[PATCH] PNP: adjust pnp_register_card_driver() signature: interwaveBjorn Helgaas
Remove the assumption that pnp_register_card_driver() returns the number of devices claimed. And fix some __init/__devinit issues. Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Cc: Adam Belay <ambx1@neo.rr.com> 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>
2006-03-22[ALSA] Fix gus_pcm dereference before NULLEugene Teo
Modules: GUS Library The NULL check of substream is simply superfluous. It is guaranteed to receive non-NULL substream. Thanks Takashi. Coverity bug #861 Signed-off-by: Eugene Teo <eugene.teo@eugeneteo.net> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-03-22[ALSA] Fix check of enable module optionTakashi Iwai
Fix the check of enable module option in probe of platform_device drivers. It shouldn't break the loop but just ignore if enable[i] is false. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-03-22[ALSA] semaphore -> mutex (ISA part)Ingo Molnar
Semaphore to mutex conversion. The conversion was generated via scripts, and the result was validated automatically via a script as well. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-02-01[ALSA] Fix adding second dma channelAlexey Dobriyan
Modules: OPL3SA2 driver,GUS Classic driver dma2 is a global array. sprintf below suggests there was a typo. Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03[ALSA] seq: set client name in snd_seq_create_kernel_client()Clemens Ladisch
All users of snd_seq_create_kernel_client() have to set the client name anyway, so we can just pass the name as parameter. This relieves us from having to muck around with a struct snd_seq_client_info in these cases. Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2006-01-03[ALSA] seq: remove struct snd_seq_client_callbackClemens Ladisch
The fields of struct snd_seq_client_callback either aren't used or are always set to the same value, so we can get rid of it altogether. Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2006-01-03[ALSA] unregister platform devicesClemens Ladisch
Call platform_device_unregister() for all platform devices that we've registered. Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2006-01-03[ALSA] gus - Use platform_deviceTakashi Iwai
Rewrite the probe/remove with platform_device. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03[ALSA] Remove xxx_t typedefs: ISA GUSTakashi Iwai
Remove xxx_t typedefs from the ISA GUS drivers. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03[ALSA] Remove superfluous pcm_free callbacksTakashi Iwai
Remove superflous pcm_free callbacks. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04[ALSA] Fix schedule_timeout usageNishanth Aravamudan
Use schedule_timeout_{,un}interruptible() instead of set_current_state()/schedule_timeout() to reduce kernel size. Also use human-time conversion functions instead of hard-coded division to avoid rounding issues. Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04[ALSA] Add missing KERN_* suffix to printkTakashi Iwai
Add missing KERN_* suffix to printk. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04[ALSA] Remove vmalloc wrapper, kfree_nocheck()Takashi Iwai
- Remove vmalloc wrapper - Add release_and_free_resource() to remove kfree_nocheck() from each driver and simplify the code Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-09-12[ALSA] Replace with kzalloc() - isa stuffTakashi Iwai
ES18xx driver,OPL3SA2 driver,AD1816A driver,AD1848 driver,CS4231 driver ES1688 driver,GUS Library,Opti9xx drivers,EMU8000 driver SB16/AWE driver,SB drivers Replace kcalloc(1,..) with kzalloc(). Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-09-12[ALSA] Add snd_card_set_generic_dev() call to ISA driversTakashi Iwai
ISA,CMI8330 driver,ES18xx driver,OPL3SA2 driver,Sound Galaxy driver Sound Scape driver,AD1848 driver,CS4231 driver,CS4236+ driver ES1688 driver,GUS Classic driver,GUS Extreme driver,GUS MAX driver AMD InterWave driver,Opti9xx drivers,SB16/AWE driver,SB8 driver Wavefront drivers - Added snd_card_set_generic_dev() call. - Added SND_GENERIC_DRIVER to Kconfig. - Clean up the error path in probe if necessary. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-08-30[ALSA] make local objects staticClemens Ladisch
Memalloc module,PCM Midlevel,Timer Midlevel,GUS Library,AC97 Codec ALI5451 driver,RME9652 driver Make some functions/variables that are used in only one file static. Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2005-07-28[ALSA] fix compiler warningHenrik Kretzschmar
GUS Library This patch fixes a compiler warning if sequencer is disabled. Signed-off-by: Henrik Kretzschmar <henne@nachtwindheim.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2005-06-23[PATCH] create a kstrdup library functionPaulo Marques
This patch creates a new kstrdup library function and changes the "local" implementations in several places to use this function. Most of the changes come from the sound and net subsystems. The sound part had already been acknowledged by Takashi Iwai and the net part by David S. Miller. I left UML alone for now because I would need more time to read the code carefully before making changes there. Signed-off-by: Paulo Marques <pmarques@grupopie.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-22[ALSA] Remove redundant NULL checks before kfreeJesper Juhl
Timer Midlevel,ALSA sequencer,ALSA<-OSS sequencer,Digigram VX core I2C tea6330t,GUS Library,VIA82xx driver,VIA82xx-modem driver CA0106 driver,CS46xx driver,EMU10K1/EMU10K2 driver,YMFPCI driver Digigram VX Pocket driver,Common EMU synth,USB generic driver,USB USX2Y Checking a pointer for NULL before calling kfree() on it is redundant, kfree() deals with NULL pointers just fine. This patch removes such checks from sound/ This patch also makes another, but closely related, change. It avoids casting pointers about to be kfree()'ed. Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-05-29[ALSA] sound/isa/: cleanupsAdrian Bunk
GUS Library This patch contains the following possible cleanups: - make needlesly global code static - #if 0 the following unused global functions: - gus/gus_volume.c: snd_gf1_gvol_to_lvol_raw - gus/gus_volume.c: snd_gf1_calc_ramp_rate - gus/gus_volume.c: snd_gf1_compute_vibrato - gus/gus_volume.c: snd_gf1_compute_pitchbend - gus/gus_volume.c: snd_gf1_compute_freq - gus/gus_io.c: snd_gf1_i_adlib_write - gus/gus_io.c: snd_gf1_i_write_addr - gus/gus_io.c: snd_gf1_pokew - gus/gus_io.c: snd_gf1_peekw - gus/gus_io.c: snd_gf1_dram_setmem - gus/gus_io.c: snd_gf1_print_global_registers - gus/gus_io.c: snd_gf1_print_setup_registers - gus/gus_io.c: snd_gf1_peek_print_block - gus/gus_io.c: snd_gf1_print_setup_registers - gus/gus_io.c: snd_gf1_peek_print_block - #if 0 the following unused global variable: - gus/gus_tables.h: snd_gf1_scale_table - remove the following unneeded EXPORT_SYMBOL's: - gus/gus_main.c: snd_gf1_i_write16 - gus/gus_main.c: snd_gf1_start - gus/gus_main.c: snd_gf1_stop Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-04-16Linux-2.6.12-rc2Linus Torvalds
Initial git repository build. I'm not bothering with the full history, even though we have it. We can create a separate "historical" git archive of that later if we want to, and in the meantime it's about 3.2GB when imported into git - space that would just make the early git days unnecessarily complicated, when we don't have a lot of good infrastructure for it. Let it rip!