Jonathan Corbet [Sun, 18 May 2008 21:39:11 +0000 (15:39 -0600)]
Add a comment in chrdev_open()
I stared at this code for a while and almost deleted it before
understanding crept into my slow brain. Hopefully this makes life easier
for the next person to happen on it.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Sun, 18 May 2008 21:32:43 +0000 (15:32 -0600)]
Add a bunch of cycle_kernel_lock() calls
All of the open() functions which don't need the BKL on their face may
still depend on its acquisition to serialize opens against driver
initialization. So make those functions acquire then release the BKL to be
on the safe side.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Sun, 18 May 2008 20:27:41 +0000 (14:27 -0600)]
Add cycle_kernel_lock()
A number of driver functions are so obviously trivial that they do not need
the big kernel lock - at least not overtly. It turns out that the
acquisition of the BKL in driver open() functions can perform a sort of
poor-hacker's serialization function, delaying the open operation until the
driver is certain to have completed its initialization. Add a simple
cycle_kernel_lock() function for these cases to make it clear that there is
no need to *hold* the BKL, just to be sure that we can acquire it.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 20:28:31 +0000 (14:28 -0600)]
videodev: BKL pushdown
Put explicit lock_kernel() calls into videodev_open(). That function
itself seems OK, but one never knows about all the open() functions
provided by underlying video drivers.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 20:25:20 +0000 (14:25 -0600)]
usbdev: BKL pushdown
Add explicit lock_kernel() calls to usbdev_open()
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 20:23:31 +0000 (14:23 -0600)]
USB Monitor: BKL pushdown
Add explicit lock_kernel() calls to mon_bin_open()
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 20:21:30 +0000 (14:21 -0600)]
printer gadget: BKL pushdown
Add explicit lock_kernel() calls to printer_open()
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 20:19:56 +0000 (14:19 -0600)]
adb: BKL pushdown
Put explicit lock_kernel() calls in adb_open(). The fact that
adb_release() already has them suggests this is necessary.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 20:17:33 +0000 (14:17 -0600)]
divamnt: BKL pushdown
Put explicit lock_kernel() calls into maint_open().
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 20:15:33 +0000 (14:15 -0600)]
CAPI: BKL pushdown
Put explicit lock_kernel() calls into capi_open()
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 20:12:52 +0000 (14:12 -0600)]
changer: BKL pushdown
Add lock_kernel() calls to ch_open(), though the existing locking looks
adequate.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 20:11:09 +0000 (14:11 -0600)]
dpt_i20: BKL pushdown
Add lock_kernel() calls to adpt_open()
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 20:08:58 +0000 (14:08 -0600)]
videopix: BKL pushdown
Add explicit lock_kernel() calls to vfc_open().
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 20:06:45 +0000 (14:06 -0600)]
bpp: bkl pushdown
Put explicit lock_kernel() calls into bpp_open(). It has locking, but I'm
not convinced it won't race with ioctl().
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 20:03:05 +0000 (14:03 -0600)]
phantom: BKL pushdown
Add explicit lock_kernel calls to phantom_open().
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 20:01:12 +0000 (14:01 -0600)]
infiniband: more BKL pushdown
Be extra-cautious and protect the remaining open() functions.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 19:57:31 +0000 (13:57 -0600)]
dsp56k: BKL pushdown
Put explicit lock_kernel calls into dsp56k_open().
[Stupid missing label error fixed]
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 19:54:46 +0000 (13:54 -0600)]
raw: BKL pushdown
Put explicit lock_kernel() calls into raw_open(), even though the existing
locking looks adequate.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 19:53:00 +0000 (13:53 -0600)]
tlckl: BKL pushdown
Put explicit lock_kernel calls into tlclk_open()
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 19:50:20 +0000 (13:50 -0600)]
xilinx icap: BKL pushdown
Add explicit lock_kernel() calls to hwicap_open() even though the existing
locking looks adequate.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 19:47:50 +0000 (13:47 -0600)]
vcs: BKL pushdown
Add explicit BKL to vcs_open().
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 19:46:14 +0000 (13:46 -0600)]
spidev: BKL pushdown
Add the BKL to spidev_open(), even though the existing locking looks
adequate.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 19:40:30 +0000 (13:40 -0600)]
Add "no BKL needed" comments to several drivers
This documents the fact that somebody looked at the relevant open()
functions and concluded that, due to their trivial nature, no locking was
needed.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Fri, 16 May 2008 15:10:50 +0000 (09:10 -0600)]
tty: cdev lock_kernel() pushdown
Parts of the serial code actually BUG() if we don't do this.
Jonathan Corbet [Thu, 15 May 2008 22:44:14 +0000 (16:44 -0600)]
snsc: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 22:39:03 +0000 (16:39 -0600)]
sound: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 22:30:36 +0000 (16:30 -0600)]
fbmem: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 22:26:57 +0000 (16:26 -0600)]
dvb: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 22:24:25 +0000 (16:24 -0600)]
usbcore: cdev lock_kernel() pushdown
usb_open() is protected by a down_read(&minor_rwsem), but I'm not sure I
trust it to protect everything including subsidiary open() functions.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 22:16:28 +0000 (16:16 -0600)]
isdn: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 22:09:48 +0000 (16:09 -0600)]
gdth: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 22:08:15 +0000 (16:08 -0600)]
st: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 22:01:47 +0000 (16:01 -0600)]
aacraid: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 18:23:19 +0000 (12:23 -0600)]
osst: cdev lock_kernel() pushdown.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 18:22:06 +0000 (12:22 -0600)]
sg: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 18:01:56 +0000 (12:01 -0600)]
ide-tape: cdev lock_kernel() pushdown
->release() already has explicit lock_kernel() calls...
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 17:58:31 +0000 (11:58 -0600)]
phonedev: cdev lock_kernel() pushdown
phone_open() looks OK, but I don't trust the subsidiary drivers (and ixj in
particular).
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 17:34:16 +0000 (11:34 -0600)]
drm: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 17:29:38 +0000 (11:29 -0600)]
lp: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 17:24:23 +0000 (11:24 -0600)]
mbcs: cdev lock_kernel() pushdown
This driver would appear to have no internal locking at all.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 17:16:21 +0000 (11:16 -0600)]
viotape: cdev lock_kernel pushdown ()
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 17:07:52 +0000 (11:07 -0600)]
misc: cdev lock_kernel() pushdown
misc_open() looks fine, but who knows what all of the misc drivers are
doing in their open() functions?
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 17:04:19 +0000 (11:04 -0600)]
mem: cdev lock_kernel() pushdown
It's really hard to tell if this is necessary - lots of weird
magic happens by way of map_devmem()
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 16:46:49 +0000 (10:46 -0600)]
ipmi: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 16:39:37 +0000 (10:39 -0600)]
UIO: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 16:37:16 +0000 (10:37 -0600)]
Input: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 16:25:44 +0000 (10:25 -0600)]
HID: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 16:15:38 +0000 (10:15 -0600)]
UBI: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 16:10:37 +0000 (10:10 -0600)]
mtdchar: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 16:07:56 +0000 (10:07 -0600)]
paride: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 16:03:09 +0000 (10:03 -0600)]
AoE: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 16:01:17 +0000 (10:01 -0600)]
drivers/s390: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 15:38:18 +0000 (09:38 -0600)]
rtc: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 15:25:03 +0000 (09:25 -0600)]
pcmcia: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 15:21:33 +0000 (09:21 -0600)]
cosa: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 15:21:02 +0000 (09:21 -0600)]
i2c: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 15:12:01 +0000 (09:12 -0600)]
x86: cdev lock_kernel() pushdown
Push the cdev lock_kernel() call down into the x86 msr and cpuid drivers.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 15:11:26 +0000 (09:11 -0600)]
sh: cdev lock_kernel() pushdown
Push the cdev lock_kernel() call down into the sh gio driver.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 15:10:50 +0000 (09:10 -0600)]
mips: cdev lock_kernel() pushdown
Push the cdev lock_kernel() call into MIPS-specific drivers.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 15:10:18 +0000 (09:10 -0600)]
cris: cdev lock_kernel() pushdown
Push the cdev lock_kernel() call into cris drivers.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Jonathan Corbet [Thu, 15 May 2008 15:09:23 +0000 (09:09 -0600)]
bsg: cdev lock_kernel() pushdown
Push the cdev lock_kernel call into bsg_open().
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Linus Torvalds [Sun, 18 May 2008 21:36:41 +0000 (14:36 -0700)]
Linux 2.6.26-rc3
Linus Torvalds [Sun, 18 May 2008 20:56:54 +0000 (13:56 -0700)]
Merge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6
* 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
i2c/max6875: Really prevent 24RF08 corruption
i2c-amd756: Fix functionality flags
i2c: Kill the old driver matching scheme
i2c: Convert remaining new-style drivers to use module aliasing
i2c: Switch pasemi to the new device/driver matching scheme
i2c: Clean up Blackfin BF527 I2C device declarations
i2c-nforce2: Disable the second SMBus channel on the DFI Lanparty NF4 Expert
i2c: New co-maintainer
Geert Uytterhoeven [Sun, 18 May 2008 18:47:24 +0000 (20:47 +0200)]
m68k: Add multi_defconfig
Add multi_defconfig, to build a kernel for all supported m68k platforms,
excluding Sun 3 (Sun 3 kernels are incompatible with all other m68k platforms)
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Geert Uytterhoeven [Sun, 18 May 2008 18:47:23 +0000 (20:47 +0200)]
m68k: Update defconfigs
Update the m68k defconfigs
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Geert Uytterhoeven [Sun, 18 May 2008 18:47:22 +0000 (20:47 +0200)]
m68k: Correctly handle multi-ISA at runtime
m68k: Correctly handle multi-ISA at runtime in multi-platform kernels
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Geert Uytterhoeven [Sun, 18 May 2008 18:47:21 +0000 (20:47 +0200)]
m68k: Prefix ISA type with ISA_TYPE_
The *_ISA type defines are quite generic and cause namespace conflicts
(e.g. with `AMIGAHW_DECLARE(GG2_ISA)' in <asm/amigahw.h>) for some kernel
configurations. Use ISA_TYPE_* to avoid such conflicts.
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Geert Uytterhoeven [Sun, 18 May 2008 18:47:20 +0000 (20:47 +0200)]
m68k: export m68k_mmutype
UIO needs m68k_mmutype:
ERROR: "m68k_mmutype" [drivers/uio/uio.ko] undefined!
(noticed by Christian T. Steigies)
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Geert Uytterhoeven [Sun, 18 May 2008 18:47:19 +0000 (20:47 +0200)]
m68k: Q40/Q60 floppy support is broken
Mark Q40/Q60 floppy support broken:
arch/m68k/q40/q40ints.c: In function 'q40_irq_handler':
arch/m68k/q40/q40ints.c:214: error: implicit declaration of function 'floppy_hardint'
Including <asm/floppy.h> doesn't help, as it causes a lot of additional error
messages (cfr. Sun 3x).
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Geert Uytterhoeven [Sun, 18 May 2008 18:47:18 +0000 (20:47 +0200)]
m68k: Return -ENODEV if no device is found
According to the tests in do_initcalls(), the proper error code in case no
device is found is -ENODEV, not -ENXIO or -EIO.
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Geert Uytterhoeven [Sun, 18 May 2008 18:47:17 +0000 (20:47 +0200)]
m68k: Some input drivers do not check the platform
Some input drivers do not check whether they're actually running on the
correct platform, causing multi-platform kernels to crash if they are not.
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Geert Uytterhoeven [Sun, 18 May 2008 18:47:16 +0000 (20:47 +0200)]
m68k: Some network drivers do not check the platform
Some network drivers do not check whether they're actually running on the
correct platform, causing multi-platform kernels to crash if they are not.
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Geert Uytterhoeven [Sun, 18 May 2008 18:47:15 +0000 (20:47 +0200)]
m68k: dnfb doesnt check for Apollo
The Apollo frame buffer device driver (dnfb) doesn't check whether it's
actually running on Apollo hardware, causing a crash if it isn't.
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Geert Uytterhoeven [Sun, 18 May 2008 18:47:14 +0000 (20:47 +0200)]
m68k: macide doesnt check for Mac
The Macintosh IDE driver (macide) doesn't check whether it's actually running
on Mac hardware, causing a crash if it isn't.
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Geert Uytterhoeven [Sun, 18 May 2008 18:47:13 +0000 (20:47 +0200)]
m68k: Correct jump if not running on HP300
When running a HP300-enabled kernel on non-HP300 hardware, a test in the early
startup code jumps to the wrong label, causing a double bus fault.
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Geert Uytterhoeven [Sun, 18 May 2008 18:47:12 +0000 (20:47 +0200)]
m68k: Make gcc aware that BUG() does not return
Use `__builtin_trap()' instead of `asm volatile("illegal")' in the m68k BUG()
macros (as suggested by Andrew Pinski), to kill warnings in code that assumes
BUG() does not return.
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Geert Uytterhoeven [Sun, 18 May 2008 18:47:11 +0000 (20:47 +0200)]
m68k vme_scc: avoid global namespace pollution
m68k vme_scc:
- make scc_ports[] static
- kill unused global scc_initialized
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Geert Uytterhoeven [Sun, 18 May 2008 18:47:10 +0000 (20:47 +0200)]
m68k: Kill CONFIG_WHIPPET_SERIAL
The Hisoft Whippet PCMCIA serial driver has been removed a long time ago, but
it's Kconfig symbol still existed.
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Geert Uytterhoeven [Sun, 18 May 2008 18:47:09 +0000 (20:47 +0200)]
m68k: FB_HP300 depends on DIO and doesnt need FB_CFB_FILLRECT
Correct FB_HP300 dependencies:
- FB_HP300 doesn't depend only on HP300, but also on DIO (which depends on
HP300)
- FB_HP300 does not need FB_CFB_FILLRECT
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Geert Uytterhoeven [Sun, 18 May 2008 18:47:08 +0000 (20:47 +0200)]
m68k: Kill CONFIG_FB_DAFB
CONFIG_FB_DAFB is a leftover from pre-Kconfig
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Geert Uytterhoeven [Sun, 18 May 2008 18:47:07 +0000 (20:47 +0200)]
m68k: Convert access_ok() to an inline function
Convert access_ok() from a macro to an inline function, so the compiler no
longer complains about unused variables:
fs/read_write.c: In function 'rw_copy_check_uvector':
fs/read_write.c:556: warning: unused variable 'buf'
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Jean Delvare [Sun, 18 May 2008 18:49:41 +0000 (20:49 +0200)]
i2c/max6875: Really prevent 24RF08 corruption
i2c-core takes care of the possible corruption of 24RF08 chips for
quite some times, so device devices no longer need to do it. And they
really should not, as applying the prevention twice voids it.
I thought that I had fixed all drivers long ago but apparently I had
missed that one.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Ben Gardner <bgardner@wabtec.com>
Jean Delvare [Sun, 18 May 2008 18:49:41 +0000 (20:49 +0200)]
i2c-amd756: Fix functionality flags
The i2c-amd756 driver pretends to support SMBus process call
transactions but actually does not. Fix it.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Jean Delvare [Sun, 18 May 2008 18:49:41 +0000 (20:49 +0200)]
i2c: Kill the old driver matching scheme
Remove the old driver_name/type scheme for i2c driver matching. Only the
standard aliasing model will be used from now on.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Jean Delvare [Sun, 18 May 2008 18:49:40 +0000 (20:49 +0200)]
i2c: Convert remaining new-style drivers to use module aliasing
Update all the remaining new-style i2c drivers to use standard module
aliasing instead of the old driver_name/type driver matching scheme.
Note that the tuner driver is a bit quirky at the moment, as it
overwrites i2c_client.name with arbitrary strings. We write "tuner"
back on remove, to make sure that driver cycling will work properly,
but there may still be troublesome corner cases.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Jean Delvare [Sun, 18 May 2008 18:49:40 +0000 (20:49 +0200)]
i2c: Switch pasemi to the new device/driver matching scheme
The old device/driver matching scheme is going away so stop using it.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Olof Johansson <olof@lixom.net>
Jean Delvare [Sun, 18 May 2008 18:49:40 +0000 (20:49 +0200)]
i2c: Clean up Blackfin BF527 I2C device declarations
I2C_BOARD_INFO() now sets the type field so no need to set it
separatetly.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Bryan Wu <cooloney@kernel.org>
Jean Delvare [Sun, 18 May 2008 18:49:40 +0000 (20:49 +0200)]
i2c-nforce2: Disable the second SMBus channel on the DFI Lanparty NF4 Expert
There is a strange chip at 0x2e on the second SMBus channel of the
DFI Lanparty NF4 Expert motherboard. Accessing the chip reboots the
system. As there's nothing interesting on this SMBus channel, the
easiest and safest thing to do is to disable it on that board.
This is a better fix to bug #5889 than the it87 driver update that was
done originally:
http://bugzilla.kernel.org/show_bug.cgi?id=5889
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Jean Delvare [Sun, 18 May 2008 18:49:40 +0000 (20:49 +0200)]
i2c: New co-maintainer
Ben Dooks agreed to become my co-maintainer for the i2c subsystem. In
particular, Ben will help with drivers for embedded systems, of which
my experience is inexistent. Thanks Ben and welcome on board!
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Ben Dooks <ben-linux@fluff.org>
Linus Torvalds [Sat, 17 May 2008 22:17:10 +0000 (15:17 -0700)]
Merge branch 'for-linus' of /home/rmk/linux-2.6-arm
* 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm:
[ARM] pxa: spitz wants PXA27x UDC definitions
[ARM] pxa: fix pxafb build when cpufreq is enabled
[ARM] fix parenthesis in include/asm-arm/arch-omap/control.h
[ARM] colibri: fix support for DM9000 ethernet device
[ARM] arm/kernel/arthur.c: add MODULE_LICENSE
[ARM] 5037/1: Orion: fix DNS323/Kurobox Pro PCI initialisation
[ARM] 5034/1: fix arm{925,926,940,946} dma_flush_range() in WT mode
[ARM] export copy_page
[ARM] 5026/1: locomo: add .settype for gpio and several small fixes
ARM: OMAP: Fixed comments on global PRM register usage
ARM: OMAP: Add PARENT_CONTROLS_CLOCK flag to dpll5_m2_ck
ARM: OMAP: PRCM fixes to ssi clock handling
ARM: OMAP: Add fuctional clock enabler for iva2
ARM: OMAP: Fix 34xx to use correct shift values for gpio2-6 fclks
ARM: OMAP: Keymap fix for palmte and palmz71
ARM: OMAP: Fix Unbalanced enable for IRQ in omap mailbox
ARM: OMAP: DMA: Fix incorrect channel linking
ARM: OMAP: Warn on disabling clocks with no users
ARM: OMAP: Add calls to omap2_set_globals_*()
ARM: OMAP: Update MMC header to fix compile
Russell King [Sat, 17 May 2008 21:56:08 +0000 (22:56 +0100)]
Merge branch 'omap-fixes' of git://git./linux/kernel/git/tmlind/linux-omap-2.6
Russell King [Sat, 17 May 2008 21:55:51 +0000 (22:55 +0100)]
Merge branch 'sa1100'
Russell King [Sat, 17 May 2008 21:51:35 +0000 (22:51 +0100)]
[ARM] pxa: spitz wants PXA27x UDC definitions
... so include the header file.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Sat, 17 May 2008 21:51:14 +0000 (22:51 +0100)]
[ARM] pxa: fix pxafb build when cpufreq is enabled
If cpufreq is enabled, pxafb wants to call the removed
get_clk_frequency_khz() function for a debug printk. Remove
this reference.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Mariusz Kozlowski [Thu, 15 May 2008 18:52:24 +0000 (11:52 -0700)]
[ARM] fix parenthesis in include/asm-arm/arch-omap/control.h
Parenthesis fix in include/asm-arm/arch-omap/control.h
Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
Cc: Paul Walmsley <paul@pwsan.com>
Cc: Tony Lindgren <tony@atomide.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Michael Abbott [Wed, 14 May 2008 23:29:24 +0000 (16:29 -0700)]
[ARM] colibri: fix support for DM9000 ethernet device
Two changes are necessary to enable proper operation of the DM9000 device with
the Colibri PXA 270 board: firstly, the IRQ type needs to be configured for
rising edge interrupts, and secondly this configuration needs to be
communicated through to the DM9000.
[akpm@linux-foundation.org: remove set_irq_type() call as per ben-linux request]
Signed-off-by: Michael Abbott <michael.abbott@diamond.ac.uk>
Cc: Daniel Mack <daniel@caiaq.org>
Cc: Jeff Garzik <jeff@garzik.org>
Cc: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Adrian Bunk [Mon, 31 Mar 2008 09:08:16 +0000 (12:08 +0300)]
[ARM] arm/kernel/arthur.c: add MODULE_LICENSE
This patch adds the missing MODULE_LICENSE("GPL").
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Lennert Buytenhek [Thu, 15 May 2008 09:31:14 +0000 (10:31 +0100)]
[ARM] 5037/1: Orion: fix DNS323/Kurobox Pro PCI initialisation
Whereas most Orion 5x machine support code would initialise the PCI
subsystem with nr_controllers in their struct hw_pci set to 2, the
DNS323 and Kurobox Pro machine support code had nr_controllers set
to 1.
This was presumably done because on those two machines, the PCI(-X)
controller (nr == 1) isn't used, requiring initialisation of only
the PCIe controller (nr == 0.) However, not initialising the PCI(-X)
controller on boards that don't use it leads to a situation where
both the PCIe and the PCI(-X) controller think that their root bus is
zero, and it messes up IRQ assignment.
This patch changes the DNS323 and Kurobox Pro support code to always
use nr_controllers == 2.
Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Lennert Buytenhek [Sat, 10 May 2008 20:05:31 +0000 (21:05 +0100)]
[ARM] 5034/1: fix arm{925,926,940,946} dma_flush_range() in WT mode
The CPU's dma_flush_range() operation needs to clean+invalidate the
given memory area if the cache is in writeback mode, or do just the
invalidate part if the cache is in writethrough mode, but the current
proc-arm{925,926,940,946} (incorrectly) do a cache clean in the
latter case. This patch fixes that.
Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Sun, 11 May 2008 21:36:03 +0000 (22:36 +0100)]
[ARM] export copy_page
Martin Michlmayr reported that fuse complains:
ERROR: "copy_page" [fs/fuse/fuse.ko] undefined!
so export the needed function.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>