linux-2.6
16 years agobasler-excite: BKL pushdown
Arnd Bergmann [Tue, 20 May 2008 17:15:36 +0000 (19:15 +0200)] 
basler-excite: BKL pushdown

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
16 years agoapm_32: BKL pushdown
Arnd Bergmann [Tue, 20 May 2008 17:15:34 +0000 (19:15 +0200)] 
apm_32: BKL pushdown

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
16 years agoapm-emulation: BKL pushdown
Arnd Bergmann [Tue, 20 May 2008 17:15:33 +0000 (19:15 +0200)] 
apm-emulation: BKL pushdown

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
16 years agoans-lcd: BKL pushdown
Arnd Bergmann [Tue, 20 May 2008 17:15:32 +0000 (19:15 +0200)] 
ans-lcd: BKL pushdown

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
16 years agoagp-frontend: BKL pushdown
Arnd Bergmann [Tue, 20 May 2008 17:15:30 +0000 (19:15 +0200)] 
agp-frontend: BKL pushdown

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
16 years agoReplace BKL with superblock lock in fat/msdos/vfat
Linus Torvalds [Tue, 20 May 2008 02:53:01 +0000 (19:53 -0700)] 
Replace BKL with superblock lock in fat/msdos/vfat

This replaces the use of the BKL in the FAT family of filesystems with the
existing superblock lock instead.

The code already appears to do mostly proper locking with its own private
spinlocks (and mutexes), but while the BKL could possibly have been
dropped entirely, converting it to use the superblock lock (which is just
a regular mutex) is the conservative thing to do.

As a per-filesystem mutex, it not only won't have any of the possible
latency issues related to the BKL, but the lock is obviously private to
the particular filesystem instance and will thus not cause problems for
entirely unrelated users like the BKL can.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Cc: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
16 years agobkl-removal viotape fixup
Stephen Rothwell [Mon, 19 May 2008 06:06:52 +0000 (16:06 +1000)] 
bkl-removal viotape fixup

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
16 years agoRemove the lock_kernel() call from chrdev_open()
Jonathan Corbet [Sun, 18 May 2008 21:40:00 +0000 (15:40 -0600)] 
Remove the lock_kernel() call from chrdev_open()

All in-kernel char device open() functions now either have their own
lock_kernel() calls or clearly do not need one.

Signed-off-by: Jonathan Corbet <corbet@lwn.net>
16 years agoAdd a comment in chrdev_open()
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>
16 years agoAdd a bunch of cycle_kernel_lock() calls
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>
16 years agoAdd cycle_kernel_lock()
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>
16 years agovideodev: BKL pushdown
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>
16 years agousbdev: BKL pushdown
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>
16 years agoUSB Monitor: BKL pushdown
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>
16 years agoprinter gadget: BKL pushdown
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>
16 years agoadb: BKL pushdown
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>
16 years agodivamnt: BKL pushdown
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>
16 years agoCAPI: BKL pushdown
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>
16 years agochanger: BKL pushdown
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>
16 years agodpt_i20: BKL pushdown
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>
16 years agovideopix: BKL pushdown
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>
16 years agobpp: bkl pushdown
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>
16 years agophantom: BKL pushdown
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>
16 years agoinfiniband: more BKL pushdown
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>
16 years agodsp56k: BKL pushdown
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>
16 years agoraw: BKL pushdown
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>
16 years agotlckl: BKL pushdown
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>
16 years agoxilinx icap: BKL pushdown
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>
16 years agovcs: BKL pushdown
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>
16 years agospidev: BKL pushdown
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>
16 years agoAdd "no BKL needed" comments to several drivers
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>
16 years agotty: cdev lock_kernel() pushdown
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.

16 years agosnsc: cdev lock_kernel() pushdown
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>
16 years agosound: cdev lock_kernel() pushdown
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>
16 years agofbmem: cdev lock_kernel() pushdown
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>
16 years agodvb: cdev lock_kernel() pushdown
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>
16 years agousbcore: cdev lock_kernel() pushdown
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>
16 years agoisdn: cdev lock_kernel() pushdown
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>
16 years agogdth: cdev lock_kernel() pushdown
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>
16 years agost: cdev lock_kernel() pushdown
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>
16 years agoaacraid: cdev lock_kernel() pushdown
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>
16 years agoosst: cdev lock_kernel() pushdown.
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>
16 years agosg: cdev lock_kernel() pushdown
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>
16 years agoide-tape: cdev lock_kernel() pushdown
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>
16 years agophonedev: cdev lock_kernel() pushdown
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>
16 years agodrm: cdev lock_kernel() pushdown
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>
16 years agolp: cdev lock_kernel() pushdown
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>
16 years agombcs: cdev lock_kernel() pushdown
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>
16 years agoviotape: cdev lock_kernel pushdown ()
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>
16 years agomisc: cdev lock_kernel() pushdown
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>
16 years agomem: cdev lock_kernel() pushdown
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>
16 years agoipmi: cdev lock_kernel() pushdown
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>
16 years agoUIO: cdev lock_kernel() pushdown
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>
16 years agoInput: cdev lock_kernel() pushdown
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>
16 years agoHID: cdev lock_kernel() pushdown
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>
16 years agoUBI: cdev lock_kernel() pushdown
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>
16 years agomtdchar: cdev lock_kernel() pushdown
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>
16 years agoparide: cdev lock_kernel() pushdown
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>
16 years agoAoE: cdev lock_kernel() pushdown
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>
16 years agodrivers/s390: cdev lock_kernel() pushdown
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>
16 years agortc: cdev lock_kernel() pushdown
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>
16 years agopcmcia: cdev lock_kernel() pushdown
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>
16 years agocosa: cdev lock_kernel() pushdown
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>
16 years agoi2c: cdev lock_kernel() pushdown
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>
16 years agox86: cdev lock_kernel() pushdown
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>
16 years agosh: cdev lock_kernel() pushdown
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>
16 years agomips: cdev lock_kernel() pushdown
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>
16 years agocris: cdev lock_kernel() pushdown
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>
16 years agobsg: cdev lock_kernel() pushdown
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>
16 years agoLinux 2.6.26-rc3 v2.6.26-rc3
Linus Torvalds [Sun, 18 May 2008 21:36:41 +0000 (14:36 -0700)] 
Linux 2.6.26-rc3

16 years agoMerge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6
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

16 years agom68k: Add multi_defconfig
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>
16 years agom68k: Update defconfigs
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>
16 years agom68k: Correctly handle multi-ISA at runtime
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>
16 years agom68k: Prefix ISA type with ISA_TYPE_
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>
16 years agom68k: export m68k_mmutype
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>
16 years agom68k: Q40/Q60 floppy support is broken
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>
16 years agom68k: Return -ENODEV if no device is found
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>
16 years agom68k: Some input drivers do not check the platform
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>
16 years agom68k: Some network drivers do not check the platform
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>
16 years agom68k: dnfb doesnt check for Apollo
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>
16 years agom68k: macide doesnt check for Mac
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>
16 years agom68k: Correct jump if not running on HP300
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>
16 years agom68k: Make gcc aware that BUG() does not return
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>
16 years agom68k vme_scc: avoid global namespace pollution
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>
16 years agom68k: Kill CONFIG_WHIPPET_SERIAL
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>
16 years agom68k: FB_HP300 depends on DIO and doesnt need FB_CFB_FILLRECT
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>
16 years agom68k: Kill CONFIG_FB_DAFB
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>
16 years agom68k: Convert access_ok() to an inline function
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>
16 years agoi2c/max6875: Really prevent 24RF08 corruption
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>
16 years agoi2c-amd756: Fix functionality flags
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>
16 years agoi2c: Kill the old driver matching scheme
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>
16 years agoi2c: Convert remaining new-style drivers to use module aliasing
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>
16 years agoi2c: Switch pasemi to the new device/driver matching scheme
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>
16 years agoi2c: Clean up Blackfin BF527 I2C device declarations
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>
16 years agoi2c-nforce2: Disable the second SMBus channel on the DFI Lanparty NF4 Expert
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>
16 years agoi2c: New co-maintainer
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>
16 years agoMerge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm
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

16 years agoMerge branch 'omap-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind...
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

16 years agoMerge branch 'sa1100'
Russell King [Sat, 17 May 2008 21:55:51 +0000 (22:55 +0100)] 
Merge branch 'sa1100'