James Bottomley [Thu, 25 Sep 2003 07:41:58 +0000 (00:41 -0700)]
[PATCH] fix smc-mca cleanup breakage
The latest set of smc-mca fixes broke the driver. Apparently, it wasn't
realised that request_region() actually returns a pointer to the region
you're requesting if it can. Without this fix, the smc-mca cannot
attach to any device.
Jaroslav Kysela [Thu, 25 Sep 2003 17:40:14 +0000 (19:40 +0200)]
ALSA CVS update
D:2003/09/24 14:12:50
C:USB generic driver
A:Takashi Iwai <tiwai@suse.de>
F:usb/usbaudio.c:1.64->1.65
F:usb/usbmixer.c:1.22->1.23
L:- don't create controls from selector units with a single content.
L:- suppress the error if async-out or adaptive-in has only one EP.
L: don't create a sync pipe in this case.
Jaroslav Kysela [Thu, 25 Sep 2003 17:26:24 +0000 (19:26 +0200)]
ALSA CVS update
D:2003/09/17 13:42:05
C:VIA82xx driver
A:Takashi Iwai <tiwai@suse.de>
F:pci/via82xx.c:1.50->1.51
L:- allow VAR for multi-channel stream.
L:- use 48k only for DXS #3 on VIA8233A.
Jaroslav Kysela [Thu, 25 Sep 2003 17:25:21 +0000 (19:25 +0200)]
ALSA CVS update
D:2003/09/16 17:34:48
C:ALSA<-OSS emulation
A:Takashi Iwai <tiwai@suse.de>
F:core/oss/pcm_plugin.c:1.16->1.17
F:core/oss/pcm_plugin.h:1.5->1.6
L:- fixed the debug print for the recent gcc.
L:- fixed the missing initialization of the recording frame size through
L: plugin. the problem of zero-size read with the rate plugin should
L: be fixed now.
Jaroslav Kysela [Thu, 25 Sep 2003 17:20:43 +0000 (19:20 +0200)]
ALSA CVS update
D:2003/09/11 10:34:48
C:Serial BUS drivers,ICE1724 driver
A:Takashi Iwai <tiwai@suse.de>
F:i2c/other/ak4xxx-adda.c:1.5->1.6
F:pci/ice1712/revo.c:1.3->1.4
L:- fixed the reset of AK4355 codec.
L: the surround sounds on m-audio revo 7.1 should work now.
L:- write to only the register image instead of i/o writing in
L: change the clock mode on AK codecs of revo board.
L:- fixed the non-cleared memory.
Jaroslav Kysela [Thu, 25 Sep 2003 17:19:58 +0000 (19:19 +0200)]
ALSA CVS update
D:2003/09/10 19:01:16
C:ICE1724 driver
A:Takashi Iwai <tiwai@suse.de>
F:pci/ice1712/ice1724.c:1.17->1.18
L:fixed the rate locking bug: the rate locking couldn't be changed any more
L:once if iec958 input is chosen.
Jaroslav Kysela [Thu, 25 Sep 2003 17:19:15 +0000 (19:19 +0200)]
ALSA CVS update
D:2003/09/10 17:26:26
C:ICE1724 driver
A:Takashi Iwai <tiwai@suse.de>
F:pci/ice1712/ice1724.c:1.16->1.17
L:use SIZE register to get the current DMA position.
L:this register seems more reliable than BASE register.
Jaroslav Kysela [Thu, 25 Sep 2003 17:17:11 +0000 (19:17 +0200)]
ALSA CVS update
D:2003/09/05 18:46:42
C:Intel8x0 driver
A:Takashi Iwai <tiwai@suse.de>
F:pci/intel8x0.c:1.90->1.91
L:- check CIV register to sync the current index position.
L: this may fix the noisy output on machines with sloppy interrupts.
Jaroslav Kysela [Thu, 25 Sep 2003 17:16:48 +0000 (19:16 +0200)]
ALSA CVS update
D:2003/09/04 19:45:26
C:HWDEP Midlevel
A:Jaroslav Kysela <perex@suse.cz>
F:core/hwdep.c:1.19->1.20
L:Use try_module_get() and module_put() to block the toplevel module
L:Fixed returned error code in the release() callback
Jaroslav Kysela [Thu, 25 Sep 2003 16:54:05 +0000 (18:54 +0200)]
ALSA CVS update
D:2003/09/02 19:07:31
C:Intel8x0 driver
A:Takashi Iwai <tiwai@suse.de>
F:pci/intel8x0.c:1.89->1.90
L:- set 48k only for the sample rate of SPDIF on nForce.
Jaroslav Kysela [Thu, 25 Sep 2003 16:43:54 +0000 (18:43 +0200)]
ALSA CVS update
D:2003/09/01 10:20:56
C:ICE1712 driver
A:Takashi Iwai <tiwai@suse.de>
F:pci/ice1712/aureon.c:1.2->1.3
L:fixed the SPDIF bit on aureon boards.
L:spdif out should work now.
Jaroslav Kysela [Thu, 25 Sep 2003 16:37:18 +0000 (18:37 +0200)]
ALSA CVS update
D:2003/08/29 10:22:27
C:EMU10K1/EMU10K2 driver
A:Takashi Iwai <tiwai@suse.de>
F:include/emu10k1.h:1.30->1.31
F:pci/emu10k1/emu10k1.c:1.20->1.21
F:pci/emu10k1/emufx.c:1.37->1.38
F:pci/emu10k1/emupcm.c:1.21->1.22
L:Peter Zubaj <pzad@pobox.sk>:
L:- Added the support of AC3 passthrough on Audigy.
L:
L:James Courtier-Dutton <James@superbug.demon.co.uk>:
L:- Use different driver name for Audigy2.
Jaroslav Kysela [Thu, 25 Sep 2003 16:33:24 +0000 (18:33 +0200)]
ALSA CVS update
D:2003/08/28 16:36:44
C:AC97 Codec Core
A:Takashi Iwai <tiwai@suse.de>
F:include/ac97_codec.h:1.32->1.33
F:pci/ac97/ac97_codec.c:1.102->1.103
F:pci/ac97/ac97_patch.c:1.20->1.21
L:- added the detection of revision of ALC650 chip by
L: James Courtier-Dutton <James@superbug.demon.co.uk>
L:- fixed the patch_alc650() to refer to the detected revision.
L:- detect the availability of stereo mute bits in snd_ac97_cmute_new().
Jaroslav Kysela [Thu, 25 Sep 2003 16:29:48 +0000 (18:29 +0200)]
ALSA CVS update
D:2003/08/28 16:07:26
C:Documentation,VIA82xx driver
A:Takashi Iwai <tiwai@suse.de>
F:Documentation/ALSA-Configuration.txt:1.16->1.17
F:pci/via82xx.c:1.47->1.48
L:- added the check of DXS supports (so far, empty).
L: the default value of dxs_support is again 0.
L:- fixed the description.
Jaroslav Kysela [Thu, 25 Sep 2003 16:24:04 +0000 (18:24 +0200)]
ALSA CVS update
D:2003/08/27 17:17:31
C:AC97 Codec Core
A:Takashi Iwai <tiwai@suse.de>
F:include/ac97_codec.h:1.31->1.32
F:pci/ac97/ac97_codec.c:1.101->1.102
F:pci/ac97/ac97_local.h:1.1->1.2
F:pci/ac97/ac97_patch.c:1.19->1.20
L:- added the support for stereo mute switches on AD198x.
L:- clean up of creation routines of normal stereo controls.
Jaroslav Kysela [Thu, 25 Sep 2003 16:21:57 +0000 (18:21 +0200)]
ALSA CVS update
D:2003/08/27 17:12:03
C:Documentation,VIA82xx driver
A:Takashi Iwai <tiwai@suse.de>
F:Documentation/ALSA-Configuration.txt:1.15->1.16
F:pci/via82xx.c:1.46->1.47
L:- use dxs_support=3 (48k fixed) as default, since there are so many problems
L: with dxs_support=0.
L:- added kernel boot parameter for dxs_support option.
Roland McGrath [Thu, 25 Sep 2003 01:15:39 +0000 (18:15 -0700)]
[PATCH] PROT_GROWSDOWN/PROT_GROWSUP flags for mprotect
There is currently no clean and efficient way to apply mprotect to all of a
program's stack, i.e. to the moving edge of a GROWSDOWN or GROWSUP mapping.
Some processes want to change these protections, particularly to set or
clear the PROT_EXEC bits on stack space. As it is, an mprotect done to
cover the precise edge page of the mapping will have the desired effect of
changing the protection for existing pages and having that new protection
carried over to new pages grown later. But there is no very reasonable way
of ascertaining where the edge of the mapping is if it might have grown in
the past beyond the usage at the moment. An mprotect call that doesn't
cover the edge page splits the mapping and doesn't do what we need.
This patch adds flags that can be OR'd into the protection bits in an
mprotect system call. PROT_GROWSDOWN means the memory lies in a GROWSDOWN
mapping and the start address of the region to be changed should be
extended down to the current low page of that mapping. Similarly,
PROT_GROWSUP means the pages lie in a GROWSUP mapping and the length of the
region to be changed should be extended up to include its highest page.
These flags also explicitly request the (already implicit) behavior that
the protection change applied to the lowest/highest page of a growing
mapping is passed on to new pages grown later. There are no other changes
to the mprotect behavior; in particular, the boundary in the non-growing
direction (the end address computed from the start+len arguments in the
GROWSDOWN case, and the start argument in the GROWSUP case) is as given by
the arguments to the system call. This is desireable in the use of this
call by a process on its stack, so it can change the protections of the
growing mapping used for program stack distinctly from the protections on
the arguments, environment, and AT_* data from exec.
Rusty Russell [Wed, 24 Sep 2003 13:41:32 +0000 (06:41 -0700)]
[PATCH] Futex hash improv and minor cleanups
Minor changes to Jamie & Hugh's excellent futex patch.
1) Remove obsolete comment above hash array decl.
2) Clarify comment about TASK_INTERRUPTIBLE.
3) Andrew Morton says spurious wakeup is a bug. Catch it.
4) Use Jenkins hash.
5) Make hash function non-inline.
Rusty Russell [Wed, 24 Sep 2003 13:41:18 +0000 (06:41 -0700)]
[PATCH] Futex lock division
From: "Hu, Boris" <boris.hu@intel.com>
Andrew reminded me of this.
Simple change to split the futex lock into a per-hashchain lock.
Don't bother cacheline aligning: Jamie points out that increasing
FUTEX_HASHBITS would have more payoff.
Ulrich Drepper reports 6% improvement in on a 4way futex-thrashing
benchmark.
Rusty Russell [Wed, 24 Sep 2003 13:32:51 +0000 (06:32 -0700)]
[PATCH] Kconfig fixes for modules.txt
Kconfig cleanup megapatch from Nicolas Kaiser <nikai@nikai.net>.
modules.txt no longer exists, and the common wording used to refer to
it sucks. This is all by Nicolas Kaiser's: at Randy and Matthew's
request, "say M" changed to "choose M" (more sense for graphical front
ends, too).
David Brownell [Wed, 24 Sep 2003 09:57:17 +0000 (02:57 -0700)]
[PATCH] USB: usb_set_configuration() rework (v2)
This is the latest update of the patch resolving bugs in how device
configurations were reflected in the driver model. It addresses
the last significant problems I know about in that area.
- Moves code around so that usb_set_configuration() updates sysfs
to reflect the current configuration. Previously, that only
worked right for the initial configuration chosen by khubd.
* Previous interfaces are inaccessible. The code to handle this
moved from usb_disconnect() into usb_disable_device(), which
is now called both on disconnect and set_configuration paths.
* There are new interfaces. The code to handle this moved
from usb_new_device() into usb_set_configuration().
* Resolves a double-refcount problem with USB interfaces,
by not getting the extra reference in the first place
and switching to use device_del() to disable interfaces.
* Comments a similar double-refcount problem with usb
devices (not interfaces).
Its kerneldoc is updated appropriately. The main point being
that calling usb_set_configuration() in driver probe() methods
is even more of a no-no, since it'll self-deadlock.
- Sysfs names for USB interfaces now include the configuation
number, so that user mode code can't get as easily confused.
Old style: "3-1:0" for configs 2 and 3 (interface zero).
New style: "3-1:2.0" for config 2, "3-3:3.0" for config 3.
- Moves usb_new_device() code around a bit, so that the device
is visible in sysfs before usb_set_configuration() is called.
(Before the devices for that config's interfaces appear.)
- Makes the bConfigurationValue be writable through sysfs, so
device configurations can be easily changed from user mode.
(Or devices can be de-configured, by setting config 0.)
There are devices that can benefit from this functionality;
notably, cdc-acm modems need it right now, so that they can
be told to use the non-proprietary configuration. (Since
the old "change config in probe callback" trick won't work.)
Alexander Viro [Wed, 24 Sep 2003 08:09:48 +0000 (01:09 -0700)]
[PATCH] Avoid /proc/{ioports,iomem} truncation
The current seq_file code for resource handling will truncate the output
if it overflows the seq_file buffer (one page). That's because it tries
to traverse the resource tree in one big blob.
So change that to instead traverse the resource tree one entry at a time
and have a real iterator, and clean it up a bit.
Ian Abbott [Wed, 24 Sep 2003 07:30:56 +0000 (00:30 -0700)]
[PATCH] USB: ftdi_sio - new vid/pid for OCT US101 USB to RS-232 converter
Here are a couple of patches against a copy of Greg's usb-2.4 and
usb-2.5 bk trees to add a VID/PID for Omnidirectional Control
Technology's US101 USB to RS-232 converter. This has also been
rebadged by Dick Smith Electronics (New Zealand) as a XH6361 USB to
serial converter. Thanks to Donald Gordon for the info, which I
have verified by checking the Windows INF files.
Alexander Viro [Wed, 24 Sep 2003 01:27:39 +0000 (18:27 -0700)]
[PATCH] 32-bit dev_t: md fallout
This fixes a NULL ptr dereference in md_probe() noted by Helge Hafting.
It even gets the things slightly better than they used to be, but
late-boot magic in md.c is certainly a mess. Oh, well...
It's _ugly_. md_probe() is misused there big way. The minimal fix is
to revert the cleanup in md_probe() - replace
int unit = *part;
with
int unit = MINOR(dev);
However, that is crap solution. The problem is that md_probe() is called
directly with bogus arguments - not only part is NULL (which triggers the
oops), but dev (which is supposed to be dev_t value) is actually mdidx(mddev).
Cleaner fix follows, but we really need to get the situation with gendisk
allocations into the sane shape there. Sigh...