- 01 Oct, 2002 21 commits
-
-
Jaroslav Kysela authored
- changed bitmap_member -> DECLARE_BITMAP - EMU10K1 - added gpr_list_control* variables to emu10k1_fx8010_code_t - added snd_emu10k1_list_controls for code_peek() and fixes few typos - ICE1712 - split ice1712 code to several files for better readability
-
Jaroslav Kysela authored
- OSS mixer emulation - save the current volume values permanently - PCM midlevel - fixed 64bit division on non-ix86 32bit architectures - exported snd_pcm_new_stream() - PCI DMA allocation - fixes and updates - PCM Scatter-Gather code - don't set runtime->dma_bytes if runtime is null - CMI8330 - fix nor non-IsaPnP build - CMIPCI - added "Mic As Center/LFE" switch for model 039 or later - more initialization of structs in C99 style - intel8x0 - fixes for nvidia nforce - Maestro3 - added quirk for CF72 toughbook - VIA82xx - reset codec only when it's not ready - USB Audio - fixed oops at unloading if non-intialized substream exists - show interface number in proc files - clean up and fixed the parser of audio streams
-
Jaroslav Kysela authored
- AC'97 codec - added support/detection for MC'97 (modem codecs) - improved/updated register bit constants - AD1980 codec ID with patch code - added eMicro and Philips UCB1400 codecs - PCM Scatter-Gather support - added a function snd_pcm_sgbuf_get_addr() - rewritten PCI DMA allocation - ENS1371 - fixed IEC958 control index when AC'97 codec has S/PDIF capability, too - intel8x0 - don't break when second codec cannot be initialized - via82xx - improved sg buffer handling - added "Input Source Select" control for via8233 - fixed the registers for via8233 - fixed the detection of via8233 chip - clean up the configuration of bd arrays - USB Audio - added the missing initialization of curframesize field (fixes capture)
-
Jaroslav Kysela authored
- VIA686 and VIA8233 driver merge to VIA82xx - ioctl32 fixes - fixed OOPS in snd_pcm_sgbuf_delete (not initialized) - I2C - call hw_stop() before returning at the error pointer - AC'97 codec - added more AC97 IDs by Laszlo Melis - CS46xx - mutex initialization fix - ENS1371 - added one more card to S/PDIF capabilities - intel8x0 - fixed secondary and third codec indexes - PPC Keywest - initialize MCS in loop until it succeeds - PPC Tumbler - the initial support for snapper (TAS3004) on some tibook - USB Audio - mixer fixes
-
Jaroslav Kysela authored
- AC'97 codec - added ac97_can_amap() condition - removed powerup/powerdown sequence when sample rate is changed - added ac97_is_rev22 check function - added AC97_EI_* defines - available rates are in array - CS46xx - improved the SCB link mechanism - SMP deadlock should have been fixed now - OSS mixer emulation - added the proc interface for the configuration of OSS mixer volumes - rawmidi midlevel - removed unused snd_rawmidi_transmit_reset and snd_rawmidi_receive_reset functions - USB MIDI driver - integration of USB MIDI driver into USB audio driver by Clemens - intel8x0 - the big intel8x0 driver update - added support for ICH4 - rewrited I/O (the third AC'97 codec registers are available only through memory) - code cleanups - ALI5455 specific code - added proc interface - VIA686, VIA8233 - set the max periods to 128
-
Jaroslav Kysela authored
- CS46xx - SPDIF input fixes - fixed missplaced #ifndef - amplifier fix for Game Theater XP - refine on the PCM multichannel functionality - EMU10K1 - added the support for Audigy spdif controls - PCM midlevel - fixed hw_free (wrong state for drivers with no callback - fixed sw_params (runtime) lock - AC'97 codec - fixed spin deadlock - CS4281 - fixed wrong mdelays and allowed scheduling in module_init - PPC drivers - added the missing inclusion of linux/slab.h - USB MIDI driver - replaced urb_t -> struct urb
-
Jaroslav Kysela authored
- C99 structure initializers - second set of changes - USB MIDI driver - more device info for Roland/EDIROL devices
-
Jaroslav Kysela authored
- added USB Audio and USB MIDI drivers - VIA686 - AC97 cold reset only when AC-link is down
-
Jaroslav Kysela authored
- C99-like structure initializers - first bunch of changes - CS46xx - fixed the compile with the older image - AC'97 codec - added the ids for ITE chips - check the validity of registers always in the limited register mode - intel8x0 - allow ICH4 to proceed without probing PCR / SCR bits - VIA686 - AC97 cold reset only when AC-link is down
-
Jaroslav Kysela authored
- removed __NO_VERSION__ - CS46xx - SDPIF input support, only 48khz - PCM multichannel bug fix - EMU10K1 - Added workaround for EMU10K1 capture (wrong pointer) - Keywest (PPC) - fixed the initialization of driver
-
Jaroslav Kysela authored
- Corrections for PCM sample silence (24-bits) - OPL3 code fixes (delays) - CS4281 - added the power management code - added mixer controls for internal FM and PCM volumes - EMU10K1 - fixed the dma mask - ICE1712 - replaced EREMOTE with EIO - check the return value from ews88mt_chip_select() - Maestro3 - corrected the wrong pci id for inspiron 8000 - use the quirk list for gpio workarounds
-
Pavel Machek authored
This cleans up swsusp a little bit and fixes ide disk corruption on suspend/resume. Pavel
-
Christoph Hellwig authored
I see you just applied my patch to make destroy_workqueue do the flush. Fix up XFS for it.
-
Christoph Hellwig authored
-
Christoph Hellwig authored
-
Linus Torvalds authored
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
-
Christoph Hellwig authored
-
Christoph Hellwig authored
This is a huge performance drop for SMP, but at least XFS is working again. Expect a better solution soon.
-
Ingo Molnar authored
This is the next iteration of the workqueue abstraction. The framework includes: - per-CPU queueing support. on SMP there is a per-CPU worker thread (bound to its CPU) and per-CPU work queues - this feature is completely transparent to workqueue-users. keventd automatically uses this feature. XFS can now update to work-queues and have the same per-CPU performance as it had with its per-CPU worker threads. - delayed work submission there's a new queue_delayed_work(wq, work, delay) function and a new schedule_delayed_work(work, delay) function. The later one is used to correctly fix former tq_timer users. I've reverted those changes in 2.5.40 that changed tq_timer uses to schedule_work() - eg. in the case of random.c or the tty flip queue it was definitely the wrong thing to do. delayed work means a timer embedded in struct work_struct. I considered using split struct work_struct and delayed_work_struct types, but lots of code actively uses task-queues in both delayed and non-delayed mode, so i went for the more generic approach that allows both methods of work submission. Delayed timers do not cause any other overhead in the normal submission path otherwise. - multithreaded run_workqueue() implementation the run_workqueue() function can now be called from multiple contexts, and a worker thread will only use up a single entryy - this property is used by the flushing code, and can potentially be used in the future to extend the number of per-CPU worker threads. - more reliable flushing there's now a 'pending work' counter, which is used to accurately detect when the last work-function has finished execution. It's also used to correctly flush against timed requests. I'm not convinced whether the old keventd implementation got this detail right. - i switched the arguments of the queueing function(s) per Jeff's suggestion, it's more straightforward this way. Driver fixes: i have converted almost every affected driver to the new framework. This cleaned up tons of code. I also fixed a number of drivers that were still using BHs (these drivers did not compile in 2.5.40). while this means lots of changes, it might ease the QA decision whether to put this patch into 2.5. The pach converts roughly 80% of all tqueue-using code to workqueues - and all the places that are not converted to workqueues yet are places that do not compile in vanilla 2.5.40 anyway, due to unrelated changes. I've converted a fair number of drivers that do not compile in 2.5.40, and i think i've managed to convert every driver that compiles under 2.5.40.
-
Paul Mackerras authored
The patch below is a forward-port from 2.4 of a fix that went in to the 2.4.x PCMCIA code some time back. It makes sure that that we request I/O and memory regions from the correct resource (the parent of the PCMCIA bridge chip, for PCMCIA bridges connected to a PCI bus) rather than always requesting them from the top-level ioport_resource or iomem_resource.
-
Hugh Dickins authored
Alessandro Suardi and Zlatko Calusic independently reported that Oracle cannot start on recent 2.5: excellent research by Zlatko quickly pointed to vm_pgoff buglet in the new split_vma.
-
- 30 Sep, 2002 13 commits
-
-
Linus Torvalds authored
-
http://linux-scsi.bkbits.net/scsi-for-linus-2.5Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
James Bottomley authored
into mulgrave.(none):/home/jejb/BK/scsi-for-linus-2.5
-
Mike Anderson authored
-
Rolf Fokkens authored
Hi! Since the introduction of USER_HZ the SG_[GS]ET_TIMEOUT ioctls may have a serious BUG as userspace uses a different HZ from the HZ in kernelspace. In x86 HZ=1000 and USER_HZ=100, resulting in confusing timouts as the kernel measures time 10 times as fast as userspace. This patch is an attempt to fix this by transforming USER_HZ based timing to HZ based timing before storing it in timeout. To make sure that SG_GET_TIMEOUT and SG_SET_TIMEOUT behave consistently a field timeout_user is added which stores the exact value that's passed by SG_SET_TIMEOUT and it's returned on SG_GET_TIMEOUT. Rolf Fokkens fokkensr@fokkensr.vertis.nl P.S. this is the second post of this patch
-
James Bottomley authored
-
Andrew Morton authored
But it's called from scsi_add_lun()->scsi_alloc_sdev() before the type is known. The type is -1 all the time in scsi_initialise_merge_fn() and scsi always bounces. This patch makes it do the right thing - just enable block-highmem for all scsi devices. Jens had this to say: "I guess that block-highmem has been around long enough, that I can use the term 'historically' at least in the kernel sense :-) This extra check was added for IDE because each device type driver (ide-disk, ide-cd, etc) needed to be updated to not assume virtual mappings of request data was valid. I only did that for ide-disk, since this is the only one where bounce buffering really hurt performance wise. So while ide-cd and ide-tape etc could have been updated, I deemed it uninteresting and not worthwhile. Now, this was just carried straight into the scsi counter parts, conveniently, because of laziness. A quick glance at sr shows that it too can aviod bouncing easily (no changes needed). st may need some changes, though. So again, for scsi it was a matter of not impacting existing code in 2.4 too much. So TYPE_DISK check can be killed in 2.5 if someone does the work of checking that it is safe. I'm not so sure it will make eg your SCSI CD-ROM that much faster :-)"
-
David Gibson authored
This removes an unused label in fs/devfs/base.c
-
Greg Kroah-Hartman authored
into kroah.com:/home/greg/linux/BK/gregkh-2.5
-
Randy Dunlap authored
It needs s/malloc.h/slab.h/ . It also forgets to free some memory on an error exit patch. Patch for 2.5.39 follows.
-
David Brownell authored
Here are the scatterlist primitives there's been mail about before. Now the code has passed basic sanity testing, and is ready to merge into Linus' tree to start getting wider use. Greg, please merge! To recap, the routines are a utility layer packaging several usb core facilities to improve system performance. It's synchronous. The code uses functionality that drivers could use already, but generally haven't: - Request queueing. This is a big performance win. It lets device drivers help the hcds avoid wasted i/o bandwidth, by eliminating irq and scheduling latencies between requests. It can make a huge difference at high speed, when the latencies often exceed the time to handle each i/o request! - The new usb_map_sg() primitives, leveraging IOMMU hardware if it's there (better than entry-at-a-time mapping). - URB_NO_INTERRUPT transfer flag, a hint to hcds that they can avoid a 'success irq' for this urb. Only the urb for the last scatterlist entry really needs an IRQ, the others can be eliminated or delayed. (OHCI uses this today, and any HCD can safely ignore it.) The particular functionality in these APIs seemed to meet Matt's requirements for usb-storage, so I'd hope the 2.5 usb-storage code will start to use these routines in a while. (And maybe those two scanner drivers: hpusbscsi, microtek.) Brief summary of testing: this code seems correct for normal reads and writes, but the fault paths (including cancelation) haven't been tested yet. Both EHCI and OHCI seem to be mostly OK with these more aggressive queued loads, but may need small updates (like the two I sent yesterday). Unfortunately I have to report that UHCI and urb queueing will sometimes lock up my hardware (PIIX4), so while we're lots better than 2.4 this is still a bit of a trouble spot for now. I'll be making some testing software available shortly, which will help track down remaining HCD level problems by giving the queuing APIs (and some others!) a more strenuous workout than most drivers will, in their day-to-day usage. - Dave
-
Matthew Dharm authored
Greg, attached is a patch designed for diagnostic purposes. Please apply to the 2.5 tree -- yes, we'll be removing this at some point in the future. It appears that we have a problem clearing halts. This patch causes a very clear message to be printed whenever a usb_stor_clear_halt() manages to work. So far, I haven't seen such a thing happen. And I've seen _lots_ of STALL conditions. This problem has likely been around for a while... however, it hasn't been noticed before because usb-storage was difficult to use because of other bugs. Heck, the most recent 'bk pull' is the first one for me in _months_ which let me boot all the way into X11. I'm going to hold my patch queue until this is resolved. On my test setup, it's easy to see this failing. I've tried with 4 different devices, with both UHCI and EHCI drivers. I don't want to confuse this problem with other patches... 'result' in this function always seems to be -32. Which is odd, because control endpoints shouldn't do that. I'm open to suggestions as to where to look for this bug, but my instincts are telling me that this is a core or HCD issue, not a usb-storage issue. On a positive note, this means that the error-recovery system gets a good workout.
-
bk://bk.arm.linux.org.ukLinus Torvalds authored
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
-
- 01 Oct, 2002 4 commits
-
-
Russell King authored
into flint.arm.linux.org.uk:/usr/src/linux-bk-2.5/linux-2.5-rmk
-
Russell King authored
-
Russell King authored
This corrects spelling mistakes, adds missed configuration for cpufreq, corrects free_irq comment, etc.
-
Russell King authored
Add "IRQ_" prefix to these sa1111 irq numbers.
-
- 30 Sep, 2002 2 commits
-
-
Russell King authored
We must clear down all currently pending IRQs before servicing any IRQ on the chip. This prevents immediate recursion into the interrupt handling paths when we service the first IRQ.
-
Russell King authored
This cset updates sa1100 code for the now merged cpufreq next-gen.
-