]> pilppa.com Git - linux-2.6-omap-h63xx.git/log
linux-2.6-omap-h63xx.git
16 years agoMerge branch 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6
Linus Torvalds [Fri, 8 Aug 2008 01:05:39 +0000 (18:05 -0700)]
Merge branch 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6

* 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
  hwmon: (it87) Support for 16-bit fan reading in it8705 >= rev 0x03
  hwmon: (it87) Support for 16-bit fan reading in it8712 >= rev 0x07
  hwmon: (hwmon-vid) Add 6-bit vid codes for AMD NPT 0Fh cpus
  hwmon: (hwmon-vid) Trivial format multi-line comments per CodingStyle
  hwmon: ad7414 driver
  hwmon: (thmc50) Add support for critical temperature limits
  hwmon: (adm9240) Remove EXPERIMENTAL dependency
  hwmon: (w83627hf) Drop reset module parameter
  hwmon: (w83627hf) Add pwm_enable sysfs interface
  hwmon: (w83791d) Use fan divisor bits from vbat register
  hwmon: (f71882fg) Delete needless forward declarations
  hwmon: (dme1737) Add support for the SMSC SCH5027
  hwmon: (dme1737) Skip detection if forced
  hwmon: (dme1737) Cleanups

16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog
Linus Torvalds [Fri, 8 Aug 2008 01:05:09 +0000 (18:05 -0700)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog

* git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog: (70 commits)
  [WATCHDOG] more coding style clean-up's
  [WATCHDOG] sbc8360.c - move stop code into a function
  [WATCHDOG] Coding style - Indentation - part 2
  [WATCHDOG] Coding style - Indentation - part 1
  [WATCHDOG] mpc8xxx_wdt: add support for MPC8xx watchdogs
  [WATCHDOG] mpc8xxx_wdt: fix build
  [WATCHDOG] mpc8xxx_wdt: various renames, mostly s/mpc83xx/mpc8xxx/g
  [WATCHDOG] mpc83xx_wdt: rename to mpc8xxx_wdt
  [WATCHDOG] mpc83xx_wdt: add support for MPC86xx CPUs
  [WATCHDOG] mpc83xx_wdt: convert to the OF platform driver
  [WATCHDOG] pcwd: a couple of watchdogs escaped conversion
  [WATCHDOG] Clean-up includes
  [WATCHDOG] hpwdt.c - fix double includes
  [WATCHDOG 57/57] wdt501/pci: Clean up, coding style and switch to unlocked_ioctl
  [WATCHDOG 56/57] wdt977: clean up, coding style and switch to unlocked_ioctl
  [WATCHDOG 55/57] wdt285: switch to unlocked_ioctl and tidy up oddments of coding style
  [WATCHDOG 54/57] wdrtas: clean up, coding style, switch to unlocked_ioctl
  [WATCHDOG 53/57] wafer5823wdt: Clean up, coding style, switch to unlocked_ioctl
  [WATCHDOG 52/57] w83977f_wdt: clean up, coding style and switch to unlocked_ioctl
  [WATCHDOG 51/57] w83877f_wdt: clean up code, coding style, switch to unlocked_ioctl
  ...

16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes
Linus Torvalds [Fri, 8 Aug 2008 01:04:28 +0000 (18:04 -0700)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes

* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes:
  kbuild: a better way to generate cscope database change
  Kconfig: Extend "menuconfig" for modules to simplify Kconfig file
  bugfix for scripts/patch-kernel in 2.6 sublevel stepping
  kbuild: fix O=.. build with arm

16 years agoRevert "pcm_native.c: remove unused label"
Linus Torvalds [Thu, 7 Aug 2008 02:24:47 +0000 (19:24 -0700)]
Revert "pcm_native.c: remove unused label"

This reverts commit 680db0136e0778a0d7e025af7572c6a8d82279e2.  The label
is actually used, but hidden behind CONFIG_SND_DEBUG and the horrible
snd_assert() macro.

That macro could probably be improved to be along the lines of

#define snd_assert(expr, args...) do { if ((void)(expr),0) { args; } } while (0)

or similar to make sure that we always both evaluate 'expr' and parse
'args', but while gcc should optimize it all away, I'm too lazy to
really verify that.  So I'll just admit defeat and will continue to live
with the annoying warning.

Noted-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Linus "Grr.." Torvalds
16 years agoiSeries: Fix up viotty_ioctl BKL locking fallout
Linus Torvalds [Thu, 7 Aug 2008 00:36:23 +0000 (17:36 -0700)]
iSeries: Fix up viotty_ioctl BKL locking fallout

The bogus code to call into the n_tty layer got removed in commit
8bc5fb6abb670fa9079cd1994f016a39f99698fe ("Remove bogons from the
iSeries console"), but it left a now uninitialized "return ret;" around.

Not that this code has ever even compiled since the BKL pushdown, since
not only is "ret" no longer initialized, it was never actually declared
even originally.

Replace it with a "return -ENOIOCTLCMD"

Pointed-out-by: Paul Mackerras <paulus@samba.org>
Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agopcm_native.c: remove unused label
Linus Torvalds [Wed, 6 Aug 2008 22:14:13 +0000 (15:14 -0700)]
pcm_native.c: remove unused label

This fixes the warning

  sound/core/pcm_native.c: In function 'snd_pcm_fasync':
  sound/core/pcm_native.c:3262: warning: label 'out' defined but not used

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agohwmon: (it87) Support for 16-bit fan reading in it8705 >= rev 0x03
Andrew Paprocki [Wed, 6 Aug 2008 20:41:06 +0000 (22:41 +0200)]
hwmon: (it87) Support for 16-bit fan reading in it8705 >= rev 0x03

The it8705 chip supports 16-bit fan tachometers in revisions at least
>= 0x03 (Version G). This patch enables 16-bit fan readings on all
revisions >= 0x03 just like the it8712, it8716, and it8718 chips.

Signed-off-by: Andrew Paprocki <andrew@ishiboo.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
16 years agohwmon: (it87) Support for 16-bit fan reading in it8712 >= rev 0x07
Andrew Paprocki [Wed, 6 Aug 2008 20:41:06 +0000 (22:41 +0200)]
hwmon: (it87) Support for 16-bit fan reading in it8712 >= rev 0x07

The it8712 chip supports 16-bit fan tachometers in revisions >= 0x07.
Revisions >= 0x08 dropped support for 8-bit fan divisor registers. The
patch enables 16-bit fan readings on all revisions >= 0x07 just like
the it8716 and it8718 chips.

Signed-off-by: Andrew Paprocki <andrew@ishiboo.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
16 years agohwmon: (hwmon-vid) Add 6-bit vid codes for AMD NPT 0Fh cpus
Frank Myhr [Wed, 6 Aug 2008 20:41:06 +0000 (22:41 +0200)]
hwmon: (hwmon-vid) Add 6-bit vid codes for AMD NPT 0Fh cpus

AMD NPT 0Fh cpus use 6 bit VID codes. Successive codes with msb 0
describe 25mV decrements, while those with msb 1 describe 12.5mV
decrements. Existing hwmon-vid.c is correct only for codes with msb 0;
add support for the codes with msb 1.

Ref:
p 309, Table 71
AMD Publication 32559, BIOS and Kernel Developer's Guide for AMD NPT Family 0Fh Processors
http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/32559.pdf

Signed-off-by: Frank Myhr <fmyhr@fhmtech.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
16 years agohwmon: (hwmon-vid) Trivial format multi-line comments per CodingStyle
Frank Myhr [Wed, 6 Aug 2008 20:41:06 +0000 (22:41 +0200)]
hwmon: (hwmon-vid) Trivial format multi-line comments per CodingStyle

Signed-off-by: Frank Myhr <fmyhr@fhmtech.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
16 years agohwmon: ad7414 driver
Sean MacLennan [Wed, 6 Aug 2008 20:41:05 +0000 (22:41 +0200)]
hwmon: ad7414 driver

Driver for the Analog Devices AD7414 temperature monitoring chip.

Signed-off-by: Sean MacLennan <smaclennan@pikatech.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
16 years agohwmon: (thmc50) Add support for critical temperature limits
Krzysztof Helt [Wed, 6 Aug 2008 20:41:05 +0000 (22:41 +0200)]
hwmon: (thmc50) Add support for critical temperature limits

Add critical temperature limits to the driver. These limits are read
only.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
16 years agohwmon: (adm9240) Remove EXPERIMENTAL dependency
Grant Coady [Wed, 6 Aug 2008 20:41:05 +0000 (22:41 +0200)]
hwmon: (adm9240) Remove EXPERIMENTAL dependency

The adm9240 driver is in the kernel for three years now, time to
remove the EXPERIMENTAL dependency.

Signed-off-by: Grant Coady <gcoady.lk@gmail.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
16 years agohwmon: (w83627hf) Drop reset module parameter
Jean Delvare [Wed, 6 Aug 2008 20:41:04 +0000 (22:41 +0200)]
hwmon: (w83627hf) Drop reset module parameter

Drop the reset parameter of the w83627hf driver. It seems it wasn't
that useful. It was dropped from the Linux 2.4 version of this driver
back in July 2004.

The only users who have reported that they were still using this
parameter, needed it to switch the chip from automatic fan speed
control back to manual mode. Now that the driver creates pwmN_enable
sysfs files, users will be able to use these files instead, which is
way less agressive.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Dominik Geyer <dominik.geyer@gmx.de>
16 years agohwmon: (w83627hf) Add pwm_enable sysfs interface
Dominik Geyer [Wed, 6 Aug 2008 20:41:04 +0000 (22:41 +0200)]
hwmon: (w83627hf) Add pwm_enable sysfs interface

Adds support for pwm_enable sysfs interface for the w83627hf driver.

Signed-off-by: Dominik Geyer <dominik.geyer@gmx.de>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
16 years agohwmon: (w83791d) Use fan divisor bits from vbat register
Marc Hulsman [Wed, 6 Aug 2008 20:41:04 +0000 (22:41 +0200)]
hwmon: (w83791d) Use fan divisor bits from vbat register

Update w83791d with fan bits in vbat mon register (7.48 of the
datasheet). This change allows all fans to have a divisor of 128,
and fixes a problem with incorrectly reported fan speeds.

Signed-off-by: Marc Hulsman <m.hulsman@tudelft.nl>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
16 years agohwmon: (f71882fg) Delete needless forward declarations
Jean Delvare [Wed, 6 Aug 2008 20:41:04 +0000 (22:41 +0200)]
hwmon: (f71882fg) Delete needless forward declarations

These functions aren't used before being defined, so there's no point
in forward-declaring them.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Hans de Goede <j.w.r.degoede@hhs.nl>
16 years agohwmon: (dme1737) Add support for the SMSC SCH5027
Juerg Haefliger [Wed, 6 Aug 2008 20:41:03 +0000 (22:41 +0200)]
hwmon: (dme1737) Add support for the SMSC SCH5027

Add support for the SCH5027. The differences to the DME1737 are:
- No support for programmable temp offsets
- In auto mode, PWM outputs stay on min value if temp goes below low threshold
  and can't be programmed to fully turn off
- Different voltage scaling
- No VID input

Signed-off-by: Juerg Haefliger <juergh@gmail.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
16 years agohwmon: (dme1737) Skip detection if forced
Juerg Haefliger [Wed, 6 Aug 2008 20:41:03 +0000 (22:41 +0200)]
hwmon: (dme1737) Skip detection if forced

Skip the checking of the device ID register in the hwmon register
block if the force_id option is used.

Signed-off-by: Juerg Haefliger <juergh@gmail.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
16 years agohwmon: (dme1737) Cleanups
Juerg Haefliger [Wed, 6 Aug 2008 20:41:03 +0000 (22:41 +0200)]
hwmon: (dme1737) Cleanups

Fix names of attribute structs to make them more consistent with the
rest of the code. Minor comment changes.

Signed-off-by: Juerg Haefliger <juergh at gmail.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
16 years agom68k/amiserial: fix fallout of tty break handling rework
Geert Uytterhoeven [Wed, 6 Aug 2008 20:19:39 +0000 (22:19 +0200)]
m68k/amiserial: fix fallout of tty break handling rework

commit 9e98966c7bb94355689478bc84cc3e0c190f977e (tty: rework break handling)
forgot to update one exit point of rs_break() in the Amiga serial driver.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years ago[WATCHDOG] more coding style clean-up's
Wim Van Sebroeck [Wed, 6 Aug 2008 20:19:41 +0000 (20:19 +0000)]
[WATCHDOG] more coding style clean-up's

More coding style clean-up's.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
16 years agokbuild: a better way to generate cscope database change
Denis ChengRq [Mon, 4 Aug 2008 01:51:40 +0000 (09:51 +0800)]
kbuild: a better way to generate cscope database change

It's a problem about cscope target of kernel Makefile, and the cscope
plugin of emacs:
1. `make cscope` will generate cscope.files cscope.{in,po,}.out;
2. the cscope plugin expect a cscope.out.{in,po,};
3. the default `cscope -b` would generate cscope.{in,po,}.out;

There are three approach to solve it:
1. modify the cscope C code;
2. modify the cscope emacs plugin lisp code;
3. modify the Makefile;

I have tried to communicate with the cscope upstream, but later I
realize the third approach is most meaningful.

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
16 years agoKconfig: Extend "menuconfig" for modules to simplify Kconfig file
Robert P. J. Day [Mon, 4 Aug 2008 17:31:32 +0000 (13:31 -0400)]
Kconfig: Extend "menuconfig" for modules to simplify Kconfig file

Given that the init/Kconfig file uses a "menuconfig" directive for
modules already, might as well wrap all the submenu entries in an "if"
to toss all those dependencies.

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Acked-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
16 years agobugfix for scripts/patch-kernel in 2.6 sublevel stepping
Erkki Lintunen [Wed, 6 Aug 2008 20:11:33 +0000 (22:11 +0200)]
bugfix for scripts/patch-kernel in 2.6 sublevel stepping

scripts/patch-kernel script can't patch a tree, say, from 2.6.25 to
2.6.26.1, because of a wrong comparison in context of patching 2.6.x base.
 Fix it.

Acked-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
16 years agokbuild: fix O=.. build with arm
Sam Ravnborg [Wed, 6 Aug 2008 19:56:53 +0000 (21:56 +0200)]
kbuild: fix O=.. build with arm

With a make O=... build kbuild would only create
the include2/asm symlink for archs that not yet
had moved headers to include/$ARCH/include

There is no longer any reason to avoid the symlink
for archs that has moved their headers so create it
unconditionally.

This fixes arm because kbuild checked for include/asm-$ARCH/errno.h
and that file was not present for arm but the platform files
are not yet moved.

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Cc: Russell King <rmk@arm.linux.org.uk>
16 years agoMerge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx
Linus Torvalds [Wed, 6 Aug 2008 19:07:36 +0000 (12:07 -0700)]
Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx

* 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx:
  async_tx: fix missing braces in async_xor_zero_sum

16 years agoRevert duplicate "mm/hugetlb.c must #include <asm/io.h>"
Linus Torvalds [Wed, 6 Aug 2008 19:04:54 +0000 (12:04 -0700)]
Revert duplicate "mm/hugetlb.c must #include <asm/io.h>"

This reverts commit 7cb93181629c613ee2b8f4ffe3446f8003074842, since we
did that patch twice, and the problem was already fixed earlier by
78a34ae29bf1c9df62a5bd0f0798b6c62a54d520.

Reported-by: Andi Kleen <andi@firstfloor.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394...
Linus Torvalds [Wed, 6 Aug 2008 19:03:43 +0000 (12:03 -0700)]
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
  firewire: Preserve response data alignment bug when it is harmless

16 years agoMerge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
Linus Torvalds [Wed, 6 Aug 2008 18:46:39 +0000 (11:46 -0700)]
Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6

* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
  [IA64] Update generic config
  [IA64] Fix uniprocessor build w.r.t. SGI_XP and SGI_GRU
  [IA64] Eliminate trailing backquote in IA64_SGI_UV
  [IA64] update generic_defconfig to support sn2.
  [IA64] update generic_defconfig for 2.6.27-rc1
  [IA64] Allow ia64 to CONFIG_NR_CPUS up to 4096
  [IA64] Cleanup generated file not ignored by .gitignore
  [IA64] pv_ops: fix ivt.S paravirtualization

16 years agoRemove bogons from the iSeries console
Alan Cox [Wed, 6 Aug 2008 13:06:29 +0000 (14:06 +0100)]
Remove bogons from the iSeries console

The iSeries driver calls into the n_tty ldisc code directly for some
bizarre reason. I previously tagged this with a query but this actually
does need fixing as n_tty methods when you have a different ldisc set are
not a good thing to call.

In n_tty mode this change should have no effect, the core tty layer has
always called the ldisc ioctl method *anyway* and will call the one for
the right ldisc.

Signed-off-by: Alan Cox <alan@redhat.com>
Acked-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agodocbook: fix v4l fatal filename error
Randy Dunlap [Wed, 6 Aug 2008 17:08:56 +0000 (10:08 -0700)]
docbook: fix v4l fatal filename error

docproc: /var/linsrc/lin2627-rc2/drivers/media/video/videodev.c: No such file or directory
make[1]: *** [Documentation/DocBook/videobook.xml] Error 1

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
cc: mchehab@infradead.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years ago[WATCHDOG] sbc8360.c - move stop code into a function
Wim Van Sebroeck [Fri, 18 Jul 2008 19:59:48 +0000 (19:59 +0000)]
[WATCHDOG] sbc8360.c - move stop code into a function

Move the sbc8360.c watchdog stop code into a seperate function.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
16 years ago[WATCHDOG] Coding style - Indentation - part 2
Wim Van Sebroeck [Fri, 18 Jul 2008 11:41:17 +0000 (11:41 +0000)]
[WATCHDOG] Coding style - Indentation - part 2

This brings the watchdog drivers into line with coding style.
This patch takes cares of the indentation as described in chapter 1.
Main changes:
* Re-structure the ioctl switch call for all drivers as follows:
switch (cmd) {
case WDIOC_GETSUPPORT:
case WDIOC_GETSTATUS:
case WDIOC_GETBOOTSTATUS:
case WDIOC_GETTEMP:
case WDIOC_SETOPTIONS:
case WDIOC_KEEPALIVE:
case WDIOC_SETTIMEOUT:
case WDIOC_GETTIMEOUT:
case WDIOC_GETTIMELEFT:
default:
}

This to make the migration from the drivers to the uniform watchdog
device driver easier in the future.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
16 years ago[WATCHDOG] Coding style - Indentation - part 1
Wim Van Sebroeck [Thu, 17 Jul 2008 18:08:47 +0000 (18:08 +0000)]
[WATCHDOG] Coding style - Indentation - part 1

This brings the watchdog drivers into line with coding style.
This patch takes cares of the indentation as described in chapter 1:
  The preferred way to ease multiple indentation levels in a switch
  statement is to align the "switch" and its subordinate "case"
  labels in the same column instead of "double-indenting" the "case"
  labels.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
16 years ago[WATCHDOG] mpc8xxx_wdt: add support for MPC8xx watchdogs
Anton Vorontsov [Fri, 4 Jul 2008 06:51:36 +0000 (23:51 -0700)]
[WATCHDOG] mpc8xxx_wdt: add support for MPC8xx watchdogs

The mpc8xxx_wdt driver is using two registers: SWSRR to push magic
numbers, and SWCRR to control the watchdog.  Both registers are available
on the MPC8xx, and seem to have the same offsets and semantics as in
MPC83xx/MPC86xx watchdogs.  The only difference is prescale value.  So
this driver simply works on the MPC8xx CPUs.

One quirk is needed for the MPC8xx, though.  It has small prescale value
and slow CPU, so the watchdog resets board prior to the driver has time to
load.  To solve this we should split initialization in two steps: start
ping the watchdog early, and register the watchdog userspace interface
later.

MPC823 seem to be the first CPU in MPC8xx line, so we use fsl,mpc823-wdt
compatible matching.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Tested-by: Jochen Friedrich <jochen@scram.de>
Cc: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
16 years ago[WATCHDOG] mpc8xxx_wdt: fix build
Anton Vorontsov [Fri, 4 Jul 2008 06:51:36 +0000 (23:51 -0700)]
[WATCHDOG] mpc8xxx_wdt: fix build

  CC      drivers/watchdog/mpc8xxx_wdt.o
drivers/watchdog/mpc8xxx_wdt.c: In function 'mpc8xxx_wdt_ioctl':
drivers/watchdog/mpc8xxx_wdt.c:156: error: 'cmd' undeclared (first use in this function)
drivers/watchdog/mpc8xxx_wdt.c:156: error: (Each undeclared identifier is reported only once
drivers/watchdog/mpc8xxx_wdt.c:156: error: for each function it appears in.)
drivers/watchdog/mpc8xxx_wdt.c: At top level:
drivers/watchdog/mpc8xxx_wdt.c:176: warning: initialization from incompatible pointer type

This patch ought to be folded into
mpc8xxx_wdt-various-renames-mostly-s-mpc83xx-mpc8xxx-g.patch

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Cc: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
16 years ago[WATCHDOG] mpc8xxx_wdt: various renames, mostly s/mpc83xx/mpc8xxx/g
Anton Vorontsov [Fri, 4 Jul 2008 06:51:35 +0000 (23:51 -0700)]
[WATCHDOG] mpc8xxx_wdt: various renames, mostly s/mpc83xx/mpc8xxx/g

mpc83xx_wdt.c renamed to mpc8xxx_wdt.c, now we can do various renames in
the file itself.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Cc: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
16 years ago[WATCHDOG] mpc83xx_wdt: rename to mpc8xxx_wdt
Anton Vorontsov [Fri, 4 Jul 2008 06:51:34 +0000 (23:51 -0700)]
[WATCHDOG] mpc83xx_wdt: rename to mpc8xxx_wdt

Rename the driver because now we support some MPC86xx processors.

There are no changes to the mpc83xx_wdt.c file, yet.  When possible, we do
file renames and changes separately (because Linus once asked so, because
it helps git to track the renamed files).

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Cc: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
16 years ago[WATCHDOG] mpc83xx_wdt: add support for MPC86xx CPUs
Anton Vorontsov [Fri, 4 Jul 2008 06:51:34 +0000 (23:51 -0700)]
[WATCHDOG] mpc83xx_wdt: add support for MPC86xx CPUs

On MPC86xx the watchdog could be enabled only at power-on-reset, and could
not be disabled afterwards.  We must ping the watchdog from the kernel
until the userspace handles it.

MPC83xx CPUs are only differ in a way that watchdog could be disabled
once, but after it was enabled via software it becomes just the same as
MPC86xx.

Thus, to support MPC86xx I added the kernel timer which pings the watchdog
until the userspace opens it.

Since we implemented the timer, now we're able to implement proper
handling for the CONFIG_WATCHDOG_NOWAYOUT case, for MPC83xx and MPC86xx.

Also move the probe code into subsys_initcall, because we want start
pinging the watchdog ASAP, and misc devices are available in
subsys_initcall.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Cc: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
16 years ago[WATCHDOG] mpc83xx_wdt: convert to the OF platform driver
Anton Vorontsov [Fri, 4 Jul 2008 06:51:32 +0000 (23:51 -0700)]
[WATCHDOG] mpc83xx_wdt: convert to the OF platform driver

This patch simply converts mpc83xx_wdt to the OF platform driver so we can
directly work with the device tree without passing various stuff through
platform data.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Acked-by: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
16 years ago[WATCHDOG] pcwd: a couple of watchdogs escaped conversion
Alan Cox [Fri, 4 Jul 2008 06:51:32 +0000 (23:51 -0700)]
[WATCHDOG] pcwd: a couple of watchdogs escaped conversion

Fix them up.  Once we know the long term plan the watchdogs can all get
shrunk massively anyway

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
16 years ago[WATCHDOG] Clean-up includes
Wim Van Sebroeck [Tue, 15 Jul 2008 11:46:11 +0000 (11:46 +0000)]
[WATCHDOG] Clean-up includes

Use #include <linux/io.h> instead of <asm/io.h>
Use #include <linux/uaccess.h> instead of <asm/uaccess.h>
Clean-up includes.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
16 years ago[WATCHDOG] hpwdt.c - fix double includes
Wim Van Sebroeck [Tue, 15 Jul 2008 11:18:04 +0000 (11:18 +0000)]
[WATCHDOG] hpwdt.c - fix double includes

The last clean-up created 2 times the same include. delete the doubles.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
16 years ago[WATCHDOG] Merge code clean-up's from Alan Cox.
Wim Van Sebroeck [Wed, 6 Aug 2008 11:58:26 +0000 (11:58 +0000)]
[WATCHDOG] Merge code clean-up's from Alan Cox.

Merge branch 'alan' of ../linux-2.6-watchdog-mm
Fixed Conflicts in the following files:
drivers/watchdog/booke_wdt.c
drivers/watchdog/mpc5200_wdt.c
drivers/watchdog/sc1200wdt.c

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
16 years agoLinux 2.6.27-rc2 v2.6.27-rc2
Linus Torvalds [Wed, 6 Aug 2008 04:49:54 +0000 (21:49 -0700)]
Linux 2.6.27-rc2

16 years agoRe-introduce "[SCSI] extend the last_sector_bug flag to cover more sectors"
Linus Torvalds [Wed, 6 Aug 2008 04:42:21 +0000 (21:42 -0700)]
Re-introduce "[SCSI] extend the last_sector_bug flag to cover more sectors"

This re-introduces commit 2b142900784c6e38c8d39fa57d5f95ef08e735d8,
which was reverted due to the regression it caused by commit
fca082c9f1e11ec07efa8d2f9f13688521253f36.

That regression was not root-caused by the original commit, it was just
uncovered by it, and the real fix was done by Alan Stern in commit
580da34847488b404218d1d7f53b156f245f5555 ("Fix USB storage hang on
command abort").

We can thus re-introduce the change that was confirmed by Alan Jenkins
to be still required by his odd card reader.

Cc: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
Cc: Alan Stern <stern@rowland.harvard.edu>
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Wed, 6 Aug 2008 02:37:42 +0000 (19:37 -0700)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (78 commits)
  AX.25: Fix sysctl registration if !CONFIG_AX25_DAMA_SLAVE
  pktgen: mac count
  pktgen: random flow
  bridge: Eliminate unnecessary forward delay
  bridge: fix compile warning in net/bridge/br_netfilter.c
  ipv4: remove unused field in struct flowi (include/net/flow.h).
  tg3: Fix 'scheduling while atomic' errors
  net: Kill plain NET_XMIT_BYPASS.
  net_sched: Add qdisc __NET_XMIT_BYPASS flag
  net_sched: Add qdisc __NET_XMIT_STOLEN flag
  iwl3945: fix merge mistake for packet injection
  iwlwifi: grap nic access before accessing periphery registers
  iwlwifi: decrement rx skb counter in scan abort handler
  iwlwifi: fix unhandled interrupt when HW rfkill is on
  iwlwifi: implement iwl5000_calc_rssi
  iwlwifi: memory allocation optimization
  iwlwifi: HW bug fixes
  p54: Fix potential concurrent access to private data
  rt2x00: Disable link tuning in rt2500usb
  iwlwifi: Don't use buffer allocated on the stack for led names
  ...

16 years agoAX.25: Fix sysctl registration if !CONFIG_AX25_DAMA_SLAVE
Ralf Baechle [Wed, 6 Aug 2008 01:46:57 +0000 (18:46 -0700)]
AX.25: Fix sysctl registration if !CONFIG_AX25_DAMA_SLAVE

Since 49ffcf8f99e8d33ec8afb450956804af518fd788 ("sysctl: update
sysctl_check_table") setting struct ctl_table.procname = NULL does no
longer work as it used to the way the AX.25 code is expecting it to
resulting in the AX.25 sysctl registration code to break if
CONFIG_AX25_DAMA_SLAVE was not set as in some distribution kernels.
Kernel releases from 2.6.24 are affected.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years agopktgen: mac count
Robert Olsson [Wed, 6 Aug 2008 01:45:05 +0000 (18:45 -0700)]
pktgen: mac count

dst_mac_count and src_mac_count patch from Eneas Hunguana
We have sent one mac address to much.

Signed-off-by: Robert Olsson <robert.olsson@its.uu.se>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years agopktgen: random flow
Robert Olsson [Wed, 6 Aug 2008 01:44:26 +0000 (18:44 -0700)]
pktgen: random flow

Random flow generation has not worked. This fixes it.

Signed-off-by: Robert Olsson <robert.olsson@its.uu.se>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years agobridge: Eliminate unnecessary forward delay
Stephen Hemminger [Wed, 6 Aug 2008 01:42:51 +0000 (18:42 -0700)]
bridge: Eliminate unnecessary forward delay

From: Stephen Hemminger <shemminger@vyatta.com>

Based upon original patch by Herbert Xu, which contained
the following problem description:

--------------------
When the forward delay is set to zero, we still delay the setting
of the forwarding state by one or possibly two timers depending
on whether STP is enabled.  This could either turn out to be
instantaneous, or horribly slow depending on the load of the
machine.

As there is nothing preventing us from enabling forwarding straight
away, this patch eliminates this potential delay by executing the
code directly if the forward delay is zero.

The effect of this problem is that immediately after the carrier
comes on a port, the bridge will drop all packets received from
that port until it enters forwarding mode, thus causing unnecessary
packet loss.

Note that this patch doesn't fully remove the delay due to the
link watcher.  We should also check the carrier state when we
are about to drop an incoming packet because the port is disabled.
But that's for another patch.
--------------------

This version of the fix takes a different approach, in that
it just does the state change directly.

Signed-off-by: David S. Miller <davem@davemloft.net>
16 years agodocbook: fix s390 fatal error after header files moved
Randy Dunlap [Tue, 5 Aug 2008 21:59:29 +0000 (14:59 -0700)]
docbook: fix s390 fatal error after header files moved

Fix (fatal error) s390 docbook file to handle renamed header files.

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agodrivers/media/video/vino.c needs v4l2-ioctl.h
Andrew Morton [Tue, 5 Aug 2008 20:01:42 +0000 (13:01 -0700)]
drivers/media/video/vino.c needs v4l2-ioctl.h

mips allmodconfig:

  drivers/media/video/vino.c: In function `vino_free_buffer_with_count':
  drivers/media/video/vino.c:811: warning: passing arg 1 of `virt_to_phys' makes pointer from integer without a cast
  drivers/media/video/vino.c: In function `vino_allocate_buffer':
  drivers/media/video/vino.c:889: warning: passing arg 1 of `virt_to_phys' makes pointer from integer without a cast
  drivers/media/video/vino.c: In function `vino_ioctl':
  drivers/media/video/vino.c:4364: error: implicit declaration of function `video_usercopy'

The patch fixes the error, but not the warnings.

Cc: Mauro Carvalho Chehab <mchehab@infradead.org>
Cc: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agomm: fix uninitialized variables for find_vma_prepare callers
Benny Halevy [Tue, 5 Aug 2008 20:01:41 +0000 (13:01 -0700)]
mm: fix uninitialized variables for find_vma_prepare callers

gcc 4.3.0 correctly emits the following warnings.
When a vma covering addr is found, find_vma_prepare indeed returns without
setting pprev, rb_link, and rb_parent.

  mm/mmap.c: In function `insert_vm_struct':
  mm/mmap.c:2085: warning: `rb_parent' may be used uninitialized in this function
  mm/mmap.c:2085: warning: `rb_link' may be used uninitialized in this function
  mm/mmap.c:2084: warning: `prev' may be used uninitialized in this function
  mm/mmap.c: In function `copy_vma':
  mm/mmap.c:2124: warning: `rb_parent' may be used uninitialized in this function
  mm/mmap.c:2124: warning: `rb_link' may be used uninitialized in this function
  mm/mmap.c:2123: warning: `prev' may be used uninitialized in this function
  mm/mmap.c: In function `do_brk':
  mm/mmap.c:1951: warning: `rb_parent' may be used uninitialized in this function
  mm/mmap.c:1951: warning: `rb_link' may be used uninitialized in this function
  mm/mmap.c:1949: warning: `prev' may be used uninitialized in this function
  mm/mmap.c: In function `mmap_region':
  mm/mmap.c:1092: warning: `rb_parent' may be used uninitialized in this function
  mm/mmap.c:1092: warning: `rb_link' may be used uninitialized in this function
  mm/mmap.c:1089: warning: `prev' may be used uninitialized in this function

Hugh adds: in fact, none of find_vma_prepare's callers use those values
when a vma is found to be already covering addr, it's either an error or
an occasion to munmap and repeat.  Okay, let's quieten the compiler (but I
would prefer it if pprev, rb_link and rb_parent were meaningful in that
case, rather than whatever's in them from descending the tree).

Signed-off-by: Benny Halevy <bhalevy@panasas.com>
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Cc: "Ryan Hope" <rmh3093@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agopm_qos: spelling fixes
Richard Hughes [Tue, 5 Aug 2008 20:01:35 +0000 (13:01 -0700)]
pm_qos: spelling fixes

A documentation cleanup patch.  With a minor tweak to clarify units for
kbs.

[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: mark gross <mgross@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoproc: fix warnings
Alexander Beregalov [Tue, 5 Aug 2008 20:01:34 +0000 (13:01 -0700)]
proc: fix warnings

proc: fix warnings

 fs/proc/base.c:2429: warning: format '%llu' expects type 'long long unsigned int', but argument 3 has type 'u64'
 fs/proc/base.c:2429: warning: format '%llu' expects type 'long long unsigned int', but argument 4 has type 'u64'
 fs/proc/base.c:2429: warning: format '%llu' expects type 'long long unsigned int', but argument 5 has type 'u64'
 fs/proc/base.c:2429: warning: format '%llu' expects type 'long long unsigned int', but argument 6 has type 'u64'
 fs/proc/base.c:2429: warning: format '%llu' expects type 'long long unsigned int', but argument 7 has type 'u64'
 fs/proc/base.c:2429: warning: format '%llu' expects type 'long long unsigned int', but argument 8 has type 'u64'
 fs/proc/base.c:2429: warning: format '%llu' expects type 'long long unsigned int', but argument 9 has type 'u64'

Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Acked-by: Andrea Righi <righi.andrea@gmail.com>
Cc: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agodrivers/misc/sgi-gru/grutlbpurge.c: removed duplicated #include
Huang Weiyi [Tue, 5 Aug 2008 20:01:33 +0000 (13:01 -0700)]
drivers/misc/sgi-gru/grutlbpurge.c: removed duplicated #include

Removed duplicated include <linux/delay.h> in
drivers/misc/sgi-gru/grutlbpurge.c.

Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com>
Cc: Jack Steiner <steiner@sgi.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoomfs: fix warning
Alexander Beregalov [Tue, 5 Aug 2008 20:01:33 +0000 (13:01 -0700)]
omfs: fix warning

fs/omfs/inode.c:495: warning: format '%llx' expects type 'long long
unsigned int', but argument 2 has type 'u64'
fs/omfs/inode.c:495: warning: format '%llx' expects type 'long
long unsigned int', but argument 3 has type '__be64'

Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Acked-by: Bob Copeland <me@bobcopeland.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agokernel-doc: skip nested struct/union cleanly
Randy Dunlap [Tue, 5 Aug 2008 20:01:32 +0000 (13:01 -0700)]
kernel-doc: skip nested struct/union cleanly

Fix handling of nested structs or unions.  The regex to strip (eliminate)
nested structs or unions was limited to only 0 or 1 matches.  This can
cause an uneven number of left/right braces to be stripped, which causes
this:

Warning(linux-2.6.27-rc1-git2//include/net/mac80211.h:336): No description found for parameter '}'

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agodma: fix order calculation in dma_mark_declared_memory_occupied()
Jan Beulich [Tue, 5 Aug 2008 20:01:31 +0000 (13:01 -0700)]
dma: fix order calculation in dma_mark_declared_memory_occupied()

get_order() takes byte-sized input, not a page-granular one.

Irrespective of this fix I'm inclined to believe that this doesn't work
right anyway - bitmap_allocate_region() has an implicit assumption of
'pos' being suitable for 'order', which this function doesn't seem to
enforce (and since it's being called with a byte-granular value there's no
reason to believe that the callers would make sure device_addr is passed
accordingly - it's also not documented that way).

Signed-off-by: Jan Beulich <jbeulich@novell.com>
Cc: James E.J. Bottomley <James.Bottomley@HansenPartnership.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Dmitry Baryshkov <dbaryshkov@gmail.com>
Cc: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoatyfb_base.c: fix warning
Alexander Beregalov [Tue, 5 Aug 2008 20:01:29 +0000 (13:01 -0700)]
atyfb_base.c: fix warning

drivers/video/aty/atyfb_base.c:2663: warning: 'aty_resume_chip' defined
but not used

Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Cc: Ville Syrjala <syrjala@sci.fi>
Cc: Antonino A. Daplas <adaplas@pol.net>
Cc: Mark Asselstine <asselsm@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agodrivers/video/fsl-diu-fb.c: add missing of_node_put
Julia Lawall [Tue, 5 Aug 2008 20:01:28 +0000 (13:01 -0700)]
drivers/video/fsl-diu-fb.c: add missing of_node_put

of_node_put is needed before discarding a value received from
of_find_node_by_type, eg in error handling code.

The semantic patch that makes the change is as follows:
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@@
struct device_node *n;
struct device_node *n1;
struct device_node *n2;
statement S;
identifier f1,f2;
expression E1,E2;
constant C;
@@

n = of_find_node_by_type(...)
...
if (!n) S
... when != of_node_put(n)
    when != n1 = f1(n,...)
    when != E1 = n
    when any
    when strict
(
+ of_node_put(n);
  return -C;
|
  of_node_put(n);
|
  n2 = f2(n,...)
|
  E2 = n
|
  return ...;
)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Acked-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Cc: Timur Tabi <timur@freescale.com>
Cc: York Sun <yorksun@freescale.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoradeonfb: give i2c buses nicer names
Jean Delvare [Tue, 5 Aug 2008 20:01:27 +0000 (13:01 -0700)]
radeonfb: give i2c buses nicer names

The name of the i2c buses shows in the output of "i2cdetect -l", so
it's important to give informative names.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agofbcon: fix scrolling after logo is cleared
Krzysztof Helt [Tue, 5 Aug 2008 20:01:26 +0000 (13:01 -0700)]
fbcon: fix scrolling after logo is cleared

If the 'clear' command is used on the frame buffer with a logo the upper
area is filled by few lines but not scrolled anymore.

Fix this by removing the protected area for the logo if any part of the
logo is cleared.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoradeon: misc corrections
David Miller [Tue, 5 Aug 2008 20:01:25 +0000 (13:01 -0700)]
radeon: misc corrections

I have a new PCI-E radeon RV380 series card (PCI device ID 5b64) that
hangs in my sparc64 boxes when the init scripts set the font.  The problem
goes away if I disable acceleration.

I haven't figured out that bug yet, but along the way I found some
corrections to make based upon some auditing.

1) The RB2D_DC_FLUSH_ALL value used by the kernel fb driver
   and the XORG video driver differ.  I've made the kernel
   match what XORG is using.

2) In radeonfb_engine_reset() we have top-level code structure
   that roughly looks like:

if (family is 300, 350, or V350)
do this;
else
do that;
...
if (family is NOT 300, OR
    family is NOT 350, OR
    family is NOT V350)
do another thing;

   this last conditional makes no sense, is always true,
   and obviously was likely meant to be "family is NOT
   300, 350, or V350".  So I've made the code match the
   intent.

Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Tested-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoRemove the deprecated cli() sti() functions
Mark Asselstine [Tue, 5 Aug 2008 20:01:24 +0000 (13:01 -0700)]
Remove the deprecated cli() sti() functions

These functions have been deprecated for some time now but remained until
all legacy callers could be removed.  With a few commits in 2.6.26 this
has happened so now we can remove these deprecated functions.

Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Reviewed-by: Matthew Wilcox <willy@linux.intel.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agobacklight: add MODULE_ALIAS() to pwm_backlight driver
Ben Dooks [Tue, 5 Aug 2008 20:01:24 +0000 (13:01 -0700)]
backlight: add MODULE_ALIAS() to pwm_backlight driver

Add the missing MODULE_ALIAS() to the pwm_backlight driver.

Cc: Russell King <rmk@arm.linux.org.uk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Cc: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agobacklight: add more information output to pwm_backlight
Ben Dooks [Tue, 5 Aug 2008 20:01:22 +0000 (13:01 -0700)]
backlight: add more information output to pwm_backlight

Make the error paths in the pwm_backlight driver more informative in the
probe path, especially for the times that it finds an error.

Cc: Russell King <rmk@arm.linux.org.uk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Cc: Richard Purdie <rpurdie@rpsys.net>
Acked-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoblackfin RTC driver: drop PIE/stopwatch code since the hardware can only do a max...
Mike Frysinger [Tue, 5 Aug 2008 20:01:21 +0000 (13:01 -0700)]
blackfin RTC driver: drop PIE/stopwatch code since the hardware can only do a max of 1HZ and this same functionality is provided by UIE

Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Cc: David Brownell <david-b@pacbell.net>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoblackfin RTC driver: convert PIE handling to irq_set_state() as pointed out by David...
Mike Frysinger [Tue, 5 Aug 2008 20:01:21 +0000 (13:01 -0700)]
blackfin RTC driver: convert PIE handling to irq_set_state() as pointed out by David Brownell

Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Cc: David Brownell <david-b@pacbell.net>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoblackfin RTC driver: wait for the write complete interrupt complete before sleeping
Mike Frysinger [Tue, 5 Aug 2008 20:01:20 +0000 (13:01 -0700)]
blackfin RTC driver: wait for the write complete interrupt complete before sleeping

Since we use the write complete interrupt, wait for it
to complete before sleeping so we don't wake right back up due to it

Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Cc: David Brownell <david-b@pacbell.net>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoblackfin RTC driver: disable the write complete irq upon close
Mike Frysinger [Tue, 5 Aug 2008 20:01:19 +0000 (13:01 -0700)]
blackfin RTC driver: disable the write complete irq upon close

Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Cc: David Brownell <david-b@pacbell.net>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoblackfin RTC driver: don't bother passing the rtc struct down to bfin_rtc_int_{set...
Mike Frysinger [Tue, 5 Aug 2008 20:01:18 +0000 (13:01 -0700)]
blackfin RTC driver: don't bother passing the rtc struct down to bfin_rtc_int_{set,clear} since it isnt needed (shaves off ~100bytes)

Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <bryan.wu@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Cc: David Brownell <david-b@pacbell.net>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoblackfin RTC driver: add support for power management framework
Mike Frysinger [Tue, 5 Aug 2008 20:01:18 +0000 (13:01 -0700)]
blackfin RTC driver: add support for power management framework

Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <bryan.wu@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Cc: David Brownell <david-b@pacbell.net>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoblackfin RTC driver: Fix bug Only RTC interrupt can wake up deeper sleep core
Sonic Zhang [Tue, 5 Aug 2008 20:01:17 +0000 (13:01 -0700)]
blackfin RTC driver: Fix bug Only RTC interrupt can wake up deeper sleep core

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Bryan Wu <bryan.wu@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Cc: David Brownell <david-b@pacbell.net>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoblackfin RTC driver: if we dont define irq_set_freq, the common rtc-dev layer will...
Mike Frysinger [Tue, 5 Aug 2008 20:01:15 +0000 (13:01 -0700)]
blackfin RTC driver: if we dont define irq_set_freq, the common rtc-dev layer will give us the same behavior of returning ENOTTY

Signed-off-by: Mike Frysinger <michael.frysinger@analog.com>
Signed-off-by: Bryan Wu <bryan.wu@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Cc: David Brownell <david-b@pacbell.net>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agogenirq: better warning on irqchip->set_type() failure
David Brownell [Tue, 5 Aug 2008 20:01:14 +0000 (13:01 -0700)]
genirq: better warning on irqchip->set_type() failure

While I'm glad to finally see the hole fixed whereby passing an invalid
IRQ trigger type to request_irq() would be ignored, the current diagnostic
isn't quite useful.  Fixed by also listing the trigger type which was
rejected.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Acked-by: Uwe Kleine-König <Uwe.Kleine-Koenig@digi.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agosemaphore: __down_common: use signal_pending_state()
Oleg Nesterov [Tue, 5 Aug 2008 20:01:13 +0000 (13:01 -0700)]
semaphore: __down_common: use signal_pending_state()

Change __down_common() to use signal_pending_state() instead of open
coding.

The changes in kernel/semaphore.o are just artifacts, the state checks are
optimized away.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Matthew Wilcox <matthew@wil.cx>
Cc: Roland McGrath <roland@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agorelay: fix "full buffer with exactly full last subbuffer" accounting problem
Tom Zanussi [Tue, 5 Aug 2008 20:01:10 +0000 (13:01 -0700)]
relay: fix "full buffer with exactly full last subbuffer" accounting problem

In relay's current read implementation, if the buffer is completely full
but hasn't triggered the buffer-full condition (i.e. the last write
didn't cross the subbuffer boundary) and the last subbuffer is exactly
full, the subbuffer accounting code erroneously finds nothing available.
This patch fixes the problem.

Signed-off-by: Tom Zanussi <tzanussi@gmail.com>
Cc: Eduard - Gabriel Munteanu <eduard.munteanu@linux360.ro>
Cc: Pekka Enberg <penberg@cs.helsinki.fi>
Cc: Jens Axboe <jens.axboe@oracle.com>
Cc: Mathieu Desnoyers <compudj@krystal.dyndns.org>
Cc: Andrea Righi <righi.andrea@gmail.com>
Cc: <stable@kernel.org> [2.6.25.x, 2.6.26.x]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agospi: new orion_spi driver
Shadi Ammouri [Tue, 5 Aug 2008 20:01:09 +0000 (13:01 -0700)]
spi: new orion_spi driver

This adds an SPI driver for the SPI controller found in various Marvell
Orion ARM SoCs.  It currently supports only one slave, which must use SPI
mode 0.

[dbrownell@users.sourceforge.net: cleanups, meet specs, pass "sparse"]
Signed-off-by: Shadi Ammouri <shadi@marvell.com>
Signed-off-by: Saeed Bishara <saeed@marvell.com>
Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoblock/cciss.c: remove pointless curr_queue calculation
Hannes Reinecke [Tue, 5 Aug 2008 20:01:08 +0000 (13:01 -0700)]
block/cciss.c: remove pointless curr_queue calculation

curr_queue is a local variable in a for loop, and it's being initialized
at the start of each loop.  So any assignment at the end of the loop is
pointless.

Signed-off-by: Hannes Reinecke <hare@suse.de>
Cc: Mike Miller <mike.miller@hp.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agovt8623fb: fix kernel oops
Ondrej Zajicek [Tue, 5 Aug 2008 20:01:06 +0000 (13:01 -0700)]
vt8623fb: fix kernel oops

commit 20e061fb750d36ec0ffcb2e44ed7dafa9018223b
  Author: Ondrej Zajicek <santiago@crfreenet.org>
  Date:   Mon Apr 28 02:15:18 2008 -0700

      fbdev: framebuffer_alloc() fixes

      Correct the dev arg of framebuffer_alloc() in arkfb, s3fb and vt8623fb.

causes a null-pointer deref because "info->dev is NULL, info was just
kzallocated".

Signed-off-by: Ondrej Zajicek <santiago@crfreenet.org>
Reported-by: "MadLoisae@gmx.net" <MadLoisae@gmx.net>
Tested-by: "MadLoisae@gmx.net" <MadLoisae@gmx.net>
Cc: Alexey Dobriyan <adobriyan@gmail.com>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Cc: Krzysztof Helt <krzysztof.h1@poczta.fm>
Cc: <stable@kernel.org> [2.6.26.x]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agokdump: report actual value of VMCOREINFO_OSRELEASE in VMCOREINFO
Bernhard Walle [Tue, 5 Aug 2008 20:01:05 +0000 (13:01 -0700)]
kdump: report actual value of VMCOREINFO_OSRELEASE in VMCOREINFO

The current implementation reports the structure name as
VMCOREINFO_OSRELEASE in VMCOREINFO, e.g.

        VMCOREINFO_OSRELEASE=init_uts_ns.name.release

That doesn't make sense because it's always the same. Instead, use the
value, e.g.

        VMCOREINFO_OSRELEASE=2.6.26-rc3

That's also what the 'makedumpfile -g' does.

Signed-off-by: Bernhard Walle <bwalle@suse.de>
Cc: "Ken'ichi Ohmichi" <oomichi@mxs.nes.nec.co.jp>
Acked-by: Vivek Goyal <vgoyal@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agopowerpc: 86xx: mpc8610_hpcd: add watchdog node
Anton Vorontsov [Tue, 5 Aug 2008 20:01:02 +0000 (13:01 -0700)]
powerpc: 86xx: mpc8610_hpcd: add watchdog node

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Cc: Kumar Gala <galak@kernel.crashing.org>
Cc: Wim Van Sebroeck <wim@iguana.be>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agomm_init.c: avoid ifdef-inside-macro-expansion
Andrew Morton [Tue, 5 Aug 2008 20:01:01 +0000 (13:01 -0700)]
mm_init.c: avoid ifdef-inside-macro-expansion

gcc-3.2:

  mm/mm_init.c:77:1: directives may not be used inside a macro argument
  mm/mm_init.c:76:47: unterminated argument list invoking macro "mminit_dprintk"
  mm/mm_init.c: In function `mminit_verify_pageflags_layout':
  mm/mm_init.c:80: `mminit_dprintk' undeclared (first use in this function)
  mm/mm_init.c:80: (Each undeclared identifier is reported only once
  mm/mm_init.c:80: for each function it appears in.)
  mm/mm_init.c:80: syntax error before numeric constant

Also fix a typo in a comment.

Reported-by: Adrian Bunk <bunk@kernel.org>
Cc: Mel Gorman <mel@csn.ul.ie>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6
Linus Torvalds [Tue, 5 Aug 2008 18:39:33 +0000 (11:39 -0700)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6:
  ide: ->cable_detect method cannot be marked __devinit
  ide: ->quirkproc method cannot be marked __devinit
  cs5520: add enablebits checking
  cdrom: don't check CDC_PLAY_AUDIO in cdrom_count_tracks()
  ide-cd: fix endianity for the error message in cdrom_read_capacity
  ide: remove CONFIG_IDE_MAX_HWIFS
  remove unneeded #include <linux/ide.h>'s
  ide: fix regression caused by ide_device_{get,put}() addition (take 2)
  remove unnecessary <linux/hdreg.h> includes
  ide: sanitize struct ide_port_ops documentation (take 2)
  ide: fix ide_fix_driveid()
  ide: fix pre-EIDE SWDMA support on big-endian

16 years agoasync_tx: fix missing braces in async_xor_zero_sum
Dan Williams [Tue, 5 Aug 2008 17:22:05 +0000 (10:22 -0700)]
async_tx: fix missing braces in async_xor_zero_sum

Found-by: Yuri Tikhonov <yur@emcraft.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
16 years agoFix USB storage hang on command abort
Alan Stern [Tue, 5 Aug 2008 17:05:17 +0000 (13:05 -0400)]
Fix USB storage hang on command abort

Okay, I found the cause of the hang.  It is a simple bug in the USB
scatter-gather library, caused by changes added in response to the S-G
chaining modification.

This patch (as1125) fixes a bug in the USB scatter-gather library.
Early exit from the S-G initialization loop does not reset the count of
outstanding URBs.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Cc: Matthew Dharm <mdharm-usb@one-eyed-alien.net>
Cc: David Brownell <david-b@pacbell.net>
Cc: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoide: ->cable_detect method cannot be marked __devinit
Bartlomiej Zolnierkiewicz [Tue, 5 Aug 2008 16:17:04 +0000 (18:17 +0200)]
ide: ->cable_detect method cannot be marked __devinit

Now that we have warm-plug support ->cable_detect method no longer
can be be marked __devinit.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: ->quirkproc method cannot be marked __devinit
Bartlomiej Zolnierkiewicz [Tue, 5 Aug 2008 16:17:03 +0000 (18:17 +0200)]
ide: ->quirkproc method cannot be marked __devinit

Now that we have warm-plug support ->quirkproc method no longer
can be be marked __devinit.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agocs5520: add enablebits checking
Bartlomiej Zolnierkiewicz [Tue, 5 Aug 2008 16:17:03 +0000 (18:17 +0200)]
cs5520: add enablebits checking

Based on sparse comments in OpenFirmware code
(no Cx5510/Cx5520 datasheet here).

This fixes 2.6.26 regression reported by TAKADA
and caused by addition of warm-plug support.

Tested-by: TAKADA Yoshihito <takada@mbf.nifty.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agocdrom: don't check CDC_PLAY_AUDIO in cdrom_count_tracks()
Tejun Heo [Tue, 5 Aug 2008 16:17:02 +0000 (18:17 +0200)]
cdrom: don't check CDC_PLAY_AUDIO in cdrom_count_tracks()

According to MMC-3 (or any later versions) READ TOCs are mandatory
commands and have nothing to do with CDC_PLAY_AUDIO.  I have no idea why
the check was put there in the first place but it now only breaks
automatic actions on certain drives.

Note that this test was only effective when ide-cdrom was being used
as sr didn't mask CDC_PLAY_AUDIO according to the capabilities.

Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Jens Axboe <jens.axboe@oracle.com>
Cc: Borislav Petkov <petkovbb@googlemail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide-cd: fix endianity for the error message in cdrom_read_capacity
Petr Tesarik [Tue, 5 Aug 2008 16:17:02 +0000 (18:17 +0200)]
ide-cd: fix endianity for the error message in cdrom_read_capacity

Aesthetic regards aside, commit e8e7b9eb11c34ee18bde8b7011af41938d1ad667
still leaves a bug in the error message, because it uses the unconverted
big-endian value for printk.

Fix this by using a local variable in machine byte order. The result is
correct, more readable, and also produces slightly shorter code on i386.

Signed-off-by: Petr Tesarik <ptesarik@suse.cz>
Cc: Jens Axboe <jens.axboe@oracle.com>
Cc: Jan Kara <jack@suse.cz>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: <stable@kernel.org>
Acked-by: Borislav Petkov <petkovbb@gmail.com>
[bart: __u32 -> u32]
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: remove CONFIG_IDE_MAX_HWIFS
Adrian Bunk [Tue, 5 Aug 2008 16:17:01 +0000 (18:17 +0200)]
ide: remove CONFIG_IDE_MAX_HWIFS

The benefits of a user settable CONFIG_IDE_MAX_HWIFS have become pretty
tiny and are no longer considered worth the trouble of an own option.

Simply always #define MAX_HWIFS to 10.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoremove unneeded #include <linux/ide.h>'s
Adrian Bunk [Tue, 5 Aug 2008 16:17:00 +0000 (18:17 +0200)]
remove unneeded #include <linux/ide.h>'s

This patch remove unneeded #include <linux/ide.h>'s.

It also adds a required #include <linux/interrupt.h> that was previously
implicitely pulled by ide.h

Signed-off-by: Adrian Bunk <bunk@kernel.org>
[bart: revert change to tests/lkdtm.c (spotted by Stephen Rothwell)]
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: fix regression caused by ide_device_{get,put}() addition (take 2)
Bartlomiej Zolnierkiewicz [Tue, 5 Aug 2008 16:16:59 +0000 (18:16 +0200)]
ide: fix regression caused by ide_device_{get,put}() addition (take 2)

On Monday 28 July 2008, Benjamin Herrenschmidt wrote:

[...]

> Vector: 300 (Data Access) at [c58b7b80]
>     pc: c014f264: elv_may_queue+0x10/0x44
>     lr: c0152750: get_request+0x2c/0x2c0
>     sp: c58b7c30
>    msr: 1032
>    dar: c
>  dsisr: 40000000
>   current = 0xc58aaae0
>     pid   = 854, comm = media-bay
> enter ? for help
> mon> t
> [c58b7c40c0152750 get_request+0x2c/0x2c0
> [c58b7c70c0152a08 get_request_wait+0x24/0xec
> [c58b7cc0c0225674 ide_cd_queue_pc+0x58/0x1a0
> [c58b7d40c022672c ide_cdrom_packet+0x9c/0xdc
> [c58b7d70c0261810 cdrom_get_disc_info+0x60/0xd0
> [c58b7dc0c026208c cdrom_mrw_exit+0x1c/0x11c
> [c58b7e30c0260f7c unregister_cdrom+0x84/0xe8
> [c58b7e50c022395c ide_cd_release+0x80/0x84
> [c58b7e70c0163650 kref_put+0x54/0x6c
> [c58b7e80c0223884 ide_cd_put+0x40/0x5c
> [c58b7ea0c0211100 generic_ide_remove+0x28/0x3c
> [c58b7eb0c01e9d34 __device_release_driver+0x78/0xb4
> [c58b7ec0c01e9e44 device_release_driver+0x28/0x44
> [c58b7ee0c01e8f7c bus_remove_device+0xac/0xd8
> [c58b7f00c01e7424 device_del+0x104/0x198
> [c58b7f20c01e74d0 device_unregister+0x18/0x30
> [c58b7f40c02121c4 __ide_port_unregister_devices+0x6c/0x88
> [c58b7f60c0212398 ide_port_unregister_devices+0x38/0x80
> [c58b7f80c0208ca4 media_bay_step+0x1cc/0x5c0
> [c58b7fb0c0209124 media_bay_task+0x8c/0xcc
> [c58b7fd0c00485c0 kthread+0x48/0x84
> [c58b7ff0c0011b20 kernel_thread+0x44/0x60

The guilty commit turned out to be 08da591e14cf87247ec09b17c350235157a92fc3
("ide: add ide_device_{get,put}() helpers").  ide_device_put() is called
before kref_put() in ide_cd_put() so IDE device is already gone by the time
ide_cd_release() is reached.

Fix it by calling ide_device_get() before kref_get() and ide_device_put()
after kref_put() in all affected device drivers.

v2:
Brown paper bag time.  In v1 cd->drive was referenced after dropping last
reference on cd object (which could result in OOPS in ide_device_put() as
reported/debugged by Mariusz Kozlowski).  Fix it by caching cd->drive in
the local variable (fix other device drivers too).

Reported-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Reported-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
Cc: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Cc: Borislav Petkov <petkovbb@gmail.com>
Tested-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
Tested-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoremove unnecessary <linux/hdreg.h> includes
Bartlomiej Zolnierkiewicz [Tue, 5 Aug 2008 16:16:58 +0000 (18:16 +0200)]
remove unnecessary <linux/hdreg.h> includes

Following files don't need <linux/hdreg.h> at all:

- arch/mips/jazz/setup.c
- arch/sh/boards/mach-systemh/irq.c
- drivers/macintosh/mediabay.c
- drivers/scsi/hptiop.c
- drivers/usb/storage/freecom.c
- arch/powerpc/include/asm/ide.h
- init/main.c

Cc: Christoph Hellwig <hch@infradead.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: sanitize struct ide_port_ops documentation (take 2)
Bartlomiej Zolnierkiewicz [Tue, 5 Aug 2008 16:16:57 +0000 (18:16 +0200)]
ide: sanitize struct ide_port_ops documentation (take 2)

v2:
Add missing '@'-s.  (Noticed by Randy Dunlap)

Cc: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoide: fix ide_fix_driveid()
Bartlomiej Zolnierkiewicz [Tue, 5 Aug 2008 16:16:56 +0000 (18:16 +0200)]
ide: fix ide_fix_driveid()

Fix byte-swapping for id->words161_175[], id->words206_254[]
and id->words206_254[].

Luckily all words previously left in little-endian byte-order
are marked as reserved so this fix shouldn't affect user-space
applications.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>