Russell King [Tue, 7 Oct 2008 18:07:22 +0000 (19:07 +0100)]
Merge branch 'pxa-palm' into pxa-machines
Conflicts:
drivers/mfd/Kconfig
drivers/pcmcia/Makefile
Russell King [Tue, 7 Oct 2008 18:06:52 +0000 (19:06 +0100)]
Merge branch 'pxa-trizeps' into pxa-machines
Conflicts:
drivers/pcmcia/Makefile
Russell King [Tue, 7 Oct 2008 18:06:22 +0000 (19:06 +0100)]
Merge branches 'metronomefb', 'pxa-cm2xx', 'pxa-gumstix', 'pxa-misc', 'pxa-mitac', 'pxa-mp900', 'pxa-zylonite' and 'pxa-zaurus' into pxa-machines
Conflicts:
arch/arm/mach-pxa/poodle.c
Russell King [Tue, 7 Oct 2008 14:52:03 +0000 (15:52 +0100)]
[ARM] pxa: trizeps4: remove unused variable
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Mike Rapoport [Sun, 5 Oct 2008 09:30:42 +0000 (10:30 +0100)]
[ARM] 5285/1: pxa: update xm_x2xx_defconfig
Signed-off-by: Russ Dill <russ.dill@gmail.com>
Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Mike Rapoport [Sun, 5 Oct 2008 09:29:59 +0000 (10:29 +0100)]
[ARM] 5284/1: pxa: cm-x255: add NOR and NAND flash support
This patch adds support for NOR and NAND flashes on CM-X255.
The NAND flash support uses not yet merged GPIO NAND driver.
Signed-off-by: Russ Dill <russ.dill@gmail.com>
Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Mike Rapoport [Sun, 5 Oct 2008 09:27:22 +0000 (10:27 +0100)]
[ARM] 5283/1: pxa: add CM-X255 pcmcia support
Signed-off-by: Russ Dill <russ.dill@gmail.com>
Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Mike Rapoport [Sun, 5 Oct 2008 09:26:55 +0000 (10:26 +0100)]
[ARM] 5282/1: pxa: add CM-X255 support
Signed-off-by: Russ Dill <russ.dill@gmail.com>
Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Mike Rapoport [Sun, 5 Oct 2008 09:26:10 +0000 (10:26 +0100)]
[ARM] 5281/1: pxa: split cm-x2xx.c to cm-x2xx.c and cm-x270.c
Signed-off-by: Russ Dill <russ.dill@gmail.com>
Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Mike Rapoport [Sun, 5 Oct 2008 09:25:44 +0000 (10:25 +0100)]
[ARM] 5280/1: pxa: prepare cm-x2xx.c and cm-x2xx-pci.[ch] for addition of CM-X255
- Change CM-X255 and CM-X270 common function prefix from cmx270 to cmx2xx
- Split cmx2xx_init to common and CM-X270-specific parts
- Use dynamic assignement for DM9000 resources and led GPIOs.
Signed-off-by: Russ Dill <russ.dill@gmail.com>
Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Acked-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Mike Rapoport [Tue, 7 Oct 2008 10:58:25 +0000 (11:58 +0100)]
[ARM] 5286/2: pxa: rename cm-x270* to cm-x2xx* to allow addition of cm-x255 support
Signed-off-by: Russ Dill <russ.dill@gmail.com>
Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Acked-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Jürgen Schindele [Tue, 7 Oct 2008 09:40:18 +0000 (10:40 +0100)]
[ARM] 5294/1: Trizeps4 PCMCIA support
Support for Trizeps4 SOM PCMCIA
with ConXS or other baseboards.
with double GPIO-free fixed (sorry!)
replaces 5279/1
Signed-off-by: Jurgen Schindele <linux@schindele.name>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Dmitry Baryshkov [Thu, 27 Dec 2007 13:19:44 +0000 (14:19 +0100)]
[ARM] 4733/1: export sharpsl_param
EXPORT sharpsl_param which is necessary to support modular build of some depending drivers.
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Kristoffer Ericson [Thu, 2 Oct 2008 19:15:35 +0000 (20:15 +0100)]
[ARM] 5277/1: Add basic support for MobilePro 900/c
This patch adds basic support for the Mobilepro
900/c mini-laptop. At present it won't do much
more than build and boot.
Signed-off-by: Kristoffer Ericson <Kristoffer.Ericson@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Marek Vašut [Thu, 11 Sep 2008 18:37:32 +0000 (19:37 +0100)]
[ARM] 5248/1: wm97xx generic battery driver
This patch adds generic battery driver for wm97xx chips.
Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Acked-by: Anton Vorontsov <cbouatmailru@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Jürgen Schindele [Tue, 16 Sep 2008 20:36:30 +0000 (21:36 +0100)]
[ARM] 5251/1: remove old LED support for Trizeps4 SOM
Remove the old led support in arch/arm/mach-pxa/leds...
for TRIZEPS4 SOM. It is / will be replaced by generic
led driver drivers/leds/...
Signed-off-by: Jürgen Schindele <linux@schindele.name>
Acked-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Jürgen Schindele [Mon, 18 Aug 2008 20:45:03 +0000 (21:45 +0100)]
[ARM] 5204/1: Trizeps4 SOM update
- use MFP-API for GPIO
- support TRIZEPS4WL module
- cleanups
Signed-off-by: Jrgen Schindele <linux@schindele.name>
Acked-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Thu, 25 Sep 2008 13:35:48 +0000 (14:35 +0100)]
[ARM] pxa: make "gpio_leds" static
Magician's "gpio_leds" was global, but actually is supposed to be
private. Make it so.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Fri, 12 Sep 2008 02:45:41 +0000 (10:45 +0800)]
[ARM] pxa/pcm027: convert to use new MFP API
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Acked-by: Guennadi Liakhovetski <g.liakhovetski@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Thu, 11 Sep 2008 07:59:23 +0000 (15:59 +0800)]
[ARM] pxa/lpd270: use new .lcd_conn to specify LCD info
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Thu, 11 Sep 2008 07:53:50 +0000 (15:53 +0800)]
[ARM] pxa/lpd270: convert to use new MFP API
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Fri, 8 Aug 2008 06:33:29 +0000 (14:33 +0800)]
[ARM] pxa/idp: remove the unnecessary idp_init_irq()
TOUCH_PANEL_IRQ is never referenced, and set_irq_type() shouldn't
be called in this way, remove it, as well as the idp_init_irq(),
and use pxa25x_init_irq() instead.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Cc: Cliff Brake <cliff.brake@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Fri, 8 Aug 2008 06:17:57 +0000 (14:17 +0800)]
[ARM] pxa/idp: make use of "lcd_conn", add LCD pin configurations
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Cc: Cliff Brake <cliff.brake@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Fri, 8 Aug 2008 05:33:31 +0000 (13:33 +0800)]
[ARM] pxa/idp: convert to use new MFP API
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Cc: Cliff Brake <cliff.brake@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Fri, 8 Aug 2008 06:59:03 +0000 (14:59 +0800)]
[ARM] pxa/colibri: convert to use new MFP API
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Cc: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Thu, 11 Sep 2008 07:42:10 +0000 (15:42 +0800)]
[ARM] pxa/lubbock: add missing MFP pin configurations
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Wed, 3 Sep 2008 10:06:34 +0000 (18:06 +0800)]
[ARM] pxa: better MFP low power state support for pxa25x/pxa27x
When configured as a specific low power state: MFP_LPM_DRIVE_LOW,
MFP_LPM_DRIVE_HIGH, the corresponding GPDR register bit during
low power mode shall be re-configured as output (if they are not
configured so), thus the PGSRx bits can output.
Create an additional low power values GPDR registers, and properly
save/restore the GAFR + GPDR registers when doing suspend/resume.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Mon, 21 Jul 2008 08:20:54 +0000 (16:20 +0800)]
[ARM] pxa: fix typo in pxa25x MFP definitions
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Sergey Lapin [Fri, 29 Aug 2008 14:47:52 +0000 (15:47 +0100)]
[ARM] 5238/2: Very basic Palm Zire 72 support
This patch contains very basic support of Palm Zire 72.
Signed-off-by: Sergey Lapin <slapin@ossfans.org>
Acked-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Thu, 18 Sep 2008 18:15:08 +0000 (02:15 +0800)]
Documentation: fix the now deprecated reference to {set,reset}_scoop_gpio
Due to recent patches removing the now deprecated references to
{set,reset}_scoop_gpio() and converting them to the generic GPIO
API, the references in the documentation also need to be fixed.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Cc: Liam Girdwood <lrg@kernel.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Sun, 7 Sep 2008 03:30:06 +0000 (11:30 +0800)]
[ARM] corgi_lcd: use GPIO API for BACKLIGHT_ON and BACKLIGHT_CONT
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Sat, 6 Sep 2008 00:46:23 +0000 (08:46 +0800)]
[ARM] pxa/akita: use pca953x instead of akita-ioexp
Use generic pca953x which provides gpiolib interface instead of
akita-specific akita-ioexp with non-standard interface to pins.
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Fri, 5 Sep 2008 14:38:23 +0000 (22:38 +0800)]
[ARM] pxa/spitz: use leds-gpio for led driving and drop leds-spitz
Now as the scoop pins are covered by the generic gpio API,
we can use leds-gpio driver instead of special leds-spitz
Drop leds-spitz.c and the declarations of now un-referenced
spitzscoop_device, spitzscoop2_device.
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Fri, 5 Sep 2008 14:15:23 +0000 (22:15 +0800)]
[ARM] pxa/spitz: use generic GPIO API for SCOOP1/SCOOP2 GPIOs
Original patch from Dmitry Baryshkov's inital scoop gpio conversion
work at http://git.infradead.org/users/dbaryshkov/zaurus-2.6.git.
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Fri, 5 Sep 2008 10:36:21 +0000 (18:36 +0800)]
[ARM] pxa/corgi: use leds-gpio for led driving and drop leds-corgi
Now as the scoop pins are covered by the generic gpio API,
we can use leds-gpio driver instead of special leds-corgi
Drop leds-corgi.c and remove the declaration of now un-referenced
corgiscoop_device.
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Fri, 5 Sep 2008 10:15:22 +0000 (18:15 +0800)]
[ARM] pxa/corgi: use generic GPIO API for SCOOP GPIOs
Original patch from Dmitry Baryshkov's inital scoop gpio conversion
work at http://git.infradead.org/users/dbaryshkov/zaurus-2.6.git.
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Fri, 5 Sep 2008 08:21:48 +0000 (16:21 +0800)]
[ARM] pxa/poodle: prepare scoop for the generic GPIO API
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Sun, 31 Aug 2008 22:56:07 +0000 (06:56 +0800)]
[ARM] pxa/littleton: add support for SPI-based TDO24M LCD panel driver
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Wed, 3 Sep 2008 06:50:23 +0000 (14:50 +0800)]
[ARM] pxa/corgi: remove now unused corgi_ssp.c and corgi_lcd.c
Now poodle/corgi/spitz have been been converted to use SPI-based
drivers, remove the now unused corgi_ssp.c and corgi_lcd.c. And
as well as the unused reference of {corgi,spitz}ssp_device.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Wed, 3 Sep 2008 04:09:24 +0000 (12:09 +0800)]
[ARM] pxa/spitz: use SPI-based driver for ads7846, corgi-lcd and max1111
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Wed, 3 Sep 2008 02:00:38 +0000 (10:00 +0800)]
[ARM] pxa/spitz: use new .lcd_conn to specify the LCD info
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Wed, 3 Sep 2008 01:47:42 +0000 (09:47 +0800)]
[ARM] pxa/spitz: convert to use new MFP API
Original patch from Dmitry Baryshkov's initial scoop gpio conversion
work at http://git.infradead.org/users/dbaryshkov/zaurus-2.6.git.
TODO: figure out the MFP configuration of the SSP2 which looks like
to be already configured by the boot loader, though.
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Tue, 2 Sep 2008 09:34:33 +0000 (17:34 +0800)]
[ARM] pxa/spitz: convert to use new GPIO API
Original patch from Dmitry Baryshkov's initial scoop gpio conversion
work at http://git.infradead.org/users/dbaryshkov/zaurus-2.6.git.
Separated into this dedicated generic GPIO conversion patch for the
work of deprecating pxa_gpio_mode().
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Fri, 29 Aug 2008 00:09:48 +0000 (08:09 +0800)]
[ARM] pxa/corgi: use SPI-based driver for ads7846, corgi-lcd and max1111
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Wed, 27 Aug 2008 01:32:48 +0000 (09:32 +0800)]
[ARM] pxa/corgi: convert to use new MFP API
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Wed, 27 Aug 2008 01:16:30 +0000 (09:16 +0800)]
[ARM] pxa/corgi: convert to use new GPIO API
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Sun, 24 Aug 2008 09:32:15 +0000 (05:32 -0400)]
[ARM] pxa/poodle: use SPI based ads7846 touch screen driver
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Fri, 18 Jul 2008 01:05:17 +0000 (09:05 +0800)]
[ARM] pxa/poodle: convert to use the new MFP API to configure pins
The MFP configuration table is reverse engineered from those
magic GAFRx_{L|U} values, and it looks much better now.
Also, the deprecated pxa_gpio_mode() invocations are removed.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Acked-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Fri, 18 Jul 2008 00:59:04 +0000 (08:59 +0800)]
[ARM] pxa/poodle: convert to use the new GPIO API
Direct manipulation of GPIO registers are no longer encouraged, use
the new GPIO API instead. Since the GPIO has to be requested before
use, .startup and .shutdown are added to the IrDA device platform
data to request and free the GPIO.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Acked-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Fri, 18 Jul 2008 00:53:52 +0000 (08:53 +0800)]
[ARM] pxa/poodle: use new .lcd_conn to specify the LCD info
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Fri, 18 Jul 2008 00:51:07 +0000 (08:51 +0800)]
[ARM] pxa/poodle: use .gpio_pullup in USB device platform data
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Sat, 9 Aug 2008 09:54:22 +0000 (05:54 -0400)]
[ARM] pxa/poodle: move scoop/locomo device registration earlier
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Thu, 28 Aug 2008 22:19:32 +0000 (06:19 +0800)]
hwmon: add max1111_read_channel() for use by sharpsl_pm
This is not generic, and is added here for backward compatibility.
It is made an individual commit here to make it easier for revert
once the sharpsl_pm gets generic enough.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Thu, 28 Aug 2008 20:26:48 +0000 (04:26 +0800)]
hwmon: add max1111 Low-power Multichannel Serial 8-bit ADCs
Driver based on corgi_ssp.c and sharpsl_pm.c, previously done by Richard
Purdie and many others.
Now changed to generic HWMON device and expose all the ADC input value
through sysfs.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Sun, 31 Aug 2008 22:50:23 +0000 (06:50 +0800)]
lcd: add support for Toppoly TDO24M series LCD panels
This type of LCD panel can be found on PXA3xx/Littleton platforms.
Add LCD device and SPI-based driver for this.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Thu, 28 Aug 2008 21:57:20 +0000 (05:57 +0800)]
lcd: add corgibl_limit_intensity() to corgi_lcd
This is not generic enough, added here for backward compatibility.
And make this an individual commit so future revert will be a bit
easier.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Thu, 28 Aug 2008 20:21:44 +0000 (04:21 +0800)]
lcd: add SPI-based LCD and backlight driver for SHARP corgi/spitz
The driver is based on different source files including corgi_ssp.c,
corgi_lcd.c and corgi_bl.c, previously authored by Richard Purdie
and many others.
The LCD and Backlight device actually share the same SPI device, so
they are made into this single driver.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Thu, 28 Aug 2008 20:18:43 +0000 (04:18 +0800)]
lcd: allow lcd device to handle mode change events
Some LCD panels are capable of different resolutions, and is allowed
to change at run-time, so to make "struct lcd_device" to be able to
handle mode change events here.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Acked-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Eric Miao [Wed, 10 Sep 2008 16:06:15 +0000 (12:06 -0400)]
Input: ads7846 - introduce .gpio_pendown to get pendown state
The GPIO connected to ADS7846 nPENIRQ signal is usually used to get
the pendown state as well. Introduce a .gpio_pendown, and use this
to decide the pendown state if .get_pendown_state is NULL.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Linus Torvalds [Tue, 9 Sep 2008 23:27:49 +0000 (16:27 -0700)]
Linux 2.6.27-rc6
Linus Torvalds [Tue, 9 Sep 2008 23:25:58 +0000 (16:25 -0700)]
Merge git://git./linux/kernel/git/davem/net-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
ipv6: Fix OOPS in ip6_dst_lookup_tail().
ipsec: Restore larval states and socket policies in dump
[Bluetooth] Reject L2CAP connections on an insecure ACL link
[Bluetooth] Enforce correct authentication requirements
[Bluetooth] Fix reference counting during ACL config stage
Linus Torvalds [Tue, 9 Sep 2008 23:25:02 +0000 (16:25 -0700)]
Merge git://git./linux/kernel/git/davem/sparc-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
sparc64: Disable timer interrupts in fixup_irqs().
Neil Horman [Tue, 9 Sep 2008 20:51:35 +0000 (13:51 -0700)]
ipv6: Fix OOPS in ip6_dst_lookup_tail().
This fixes kernel bugzilla 11469: "TUN with 1024 neighbours:
ip6_dst_lookup_tail NULL crash"
dst->neighbour is not necessarily hooked up at this point
in the processing path, so blindly dereferencing it is
the wrong thing to do. This NULL check exists in other
similar paths and this case was just an oversight.
Also fix the completely wrong and confusing indentation
here while we're at it.
Based upon a patch by Evgeniy Polyakov.
Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Linus Torvalds [Tue, 9 Sep 2008 20:47:01 +0000 (13:47 -0700)]
Merge branch 'timers-fixes-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip
* 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
clockevents: remove WARN_ON which was used to gather information
Thomas Gleixner [Tue, 9 Sep 2008 19:38:57 +0000 (21:38 +0200)]
clockevents: remove WARN_ON which was used to gather information
The issue of the endless reprogramming loop due to a too small
min_delta_ns was fixed with the previous updates of the clock events
code, but we had no information about the spread of this problem. I
added a WARN_ON to get automated information via kerneloops.org and to
get some direct reports, which allowed me to analyse the affected
machines.
The WARN_ON has served its purpose and would be annoying for a release
kernel. Remove it and just keep the information about the increase of
the min_delta_ns value.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Linus Torvalds [Tue, 9 Sep 2008 19:23:41 +0000 (12:23 -0700)]
Merge branch 'x86-fixes-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip
* 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
x86: fix memmap=exactmap boot argument
x86: disable static NOPLs on 32 bits
xen: fix 2.6.27-rc5 xen balloon driver warnings
Prarit Bhargava [Tue, 9 Sep 2008 13:56:08 +0000 (09:56 -0400)]
x86: fix memmap=exactmap boot argument
When using kdump modifying the e820 map is yielding strange results.
For example starting with
BIOS-provided physical RAM map:
BIOS-e820:
0000000000000100 -
0000000000093400 (usable)
BIOS-e820:
0000000000093400 -
00000000000a0000 (reserved)
BIOS-e820:
0000000000100000 -
000000003fee0000 (usable)
BIOS-e820:
000000003fee0000 -
000000003fef3000 (ACPI data)
BIOS-e820:
000000003fef3000 -
000000003ff80000 (ACPI NVS)
BIOS-e820:
000000003ff80000 -
0000000040000000 (reserved)
BIOS-e820:
00000000e0000000 -
00000000f0000000 (reserved)
BIOS-e820:
00000000fec00000 -
00000000fec10000 (reserved)
BIOS-e820:
00000000fee00000 -
00000000fee01000 (reserved)
BIOS-e820:
00000000ff000000 -
0000000100000000 (reserved)
and booting with args
memmap=exactmap memmap=640K@0K memmap=5228K@16384K memmap=125188K@22252K memmap=76K#1047424K memmap=564K#1047500K
resulted in:
user-defined physical RAM map:
user:
0000000000000000 -
0000000000093400 (usable)
user:
0000000000093400 -
00000000000a0000 (reserved)
user:
0000000000100000 -
000000003fee0000 (usable)
user:
000000003fee0000 -
000000003fef3000 (ACPI data)
user:
000000003fef3000 -
000000003ff80000 (ACPI NVS)
user:
000000003ff80000 -
0000000040000000 (reserved)
user:
00000000e0000000 -
00000000f0000000 (reserved)
user:
00000000fec00000 -
00000000fec10000 (reserved)
user:
00000000fee00000 -
00000000fee01000 (reserved)
user:
00000000ff000000 -
0000000100000000 (reserved)
But should have resulted in:
user-defined physical RAM map:
user:
0000000000000000 -
00000000000a0000 (usable)
user:
0000000001000000 -
000000000151b000 (usable)
user:
00000000015bb000 -
0000000008ffc000 (usable)
user:
000000003fee0000 -
000000003ff80000 (ACPI data)
This is happening because of an improper usage of strcmp() in the
e820 parsing code. The strcmp() always returns !0 and never resets the
value for e820.nr_map and returns an incorrect user-defined map.
This patch fixes the problem.
Signed-off-by: Prarit Bhargava <prarit@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Linus Torvalds [Tue, 9 Sep 2008 18:53:05 +0000 (11:53 -0700)]
Merge branch 'for-linus' of git://git390.osdl.marist.edu/linux-2.6
* 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6:
[S390] cio: allow offline processing for disconnected devices
[S390] cio: handle ssch() return codes correctly.
[S390] cio: Correct cleanup on error.
[S390] CVE-2008-1514: prevent ptrace padding area read/write in 31-bit mode
Linus Torvalds [Tue, 9 Sep 2008 18:52:34 +0000 (11:52 -0700)]
Merge branch 'upstream' of git://ftp.linux-mips.org/upstream-linus
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
[MIPS] IP22: Fix detection of second HPC3 on Challenge S
Linus Torvalds [Tue, 9 Sep 2008 18:52:12 +0000 (11:52 -0700)]
Merge branch 'linux-next' of git://git.infradead.org/~dedekind/ubifs-2.6
* 'linux-next' of git://git.infradead.org/~dedekind/ubifs-2.6:
UBIFS: make minimum fanout 3
UBIFS: fix division by zero
UBIFS: amend f_fsid
UBIFS: fill f_fsid
UBIFS: improve statfs reporting even more
UBIFS: introduce LEB overhead
UBIFS: add forgotten gc_idx_lebs component
UBIFS: fix assertion
UBIFS: improve statfs reporting
UBIFS: remove incorrect index space check
UBIFS: push empty flash hack down
UBIFS: do not update min_idx_lebs in stafs
UBIFS: allow for racing between GC and TNC
UBIFS: always read hashed-key nodes under TNC mutex
UBIFS: fix zero-length truncations
James Bottomley [Thu, 4 Sep 2008 01:43:36 +0000 (20:43 -0500)]
lib: Correct printk %pF to work on all architectures
It was introduced by "vsprintf: add support for '%pS' and '%pF' pointer
formats" in commit
0fe1ef24f7bd0020f29ffe287dfdb9ead33ca0b2. However,
the current way its coded doesn't work on parisc64. For two reasons: 1)
parisc isn't in the #ifdef and 2) parisc has a different format for
function descriptors
Make dereference_function_descriptor() more accommodating by allowing
architecture overrides. I put the three overrides (for parisc64, ppc64
and ia64) in arch/kernel/module.c because that's where the kernel
internal linker which knows how to deal with function descriptors sits.
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Tony Luck <tony.luck@intel.com>
Acked-by: Kyle McMartin <kyle@mcmartin.ca>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Chris Snook [Tue, 9 Sep 2008 07:26:57 +0000 (03:26 -0400)]
MAINTAINERS: add Atheros maintainer for atlx
Jie Yang at Atheros is getting more directly involved with upstream work
on the atl* drivers. This patch changes the ATL1 entry to ATLX (atl2
support posted to netdev today) and adds him as a maintainer.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Christoph Hellwig [Tue, 9 Sep 2008 18:02:01 +0000 (20:02 +0200)]
update Documentation/filesystems/Locking for 2.6.27 changes
In the 2.6.27 circle ->fasync lost the BKL, and the last remaining
->open variant that takes the BKL is also gone. ->get_sb and ->kill_sb
didn't have BKL forever, so updated the entries while we're at that.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Herbert Xu [Tue, 9 Sep 2008 12:23:37 +0000 (05:23 -0700)]
ipsec: Restore larval states and socket policies in dump
The commit commit
4c563f7669c10a12354b72b518c2287ffc6ebfb3 ("[XFRM]:
Speed up xfrm_policy and xfrm_state walking") inadvertently removed
larval states and socket policies from netlink dumps. This patch
restores them.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Peter Oberparleiter [Tue, 9 Sep 2008 10:38:59 +0000 (12:38 +0200)]
[S390] cio: allow offline processing for disconnected devices
When disconnected ccw devices are removed, the device has to be set
offline, otherwise there will be side effects including a reference
count imbalance. This patch modifies ccw_device_offline to work for
devices in disconnecte/not operational state. ccw_device_offline is
called by cio for devices which are online during device removal.
Signed-off-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cornelia Huck [Tue, 9 Sep 2008 10:38:58 +0000 (12:38 +0200)]
[S390] cio: handle ssch() return codes correctly.
ssch() has two classes of return codes:
- condition codes (0-3) which need to be translated to Linux
error codes
- Linux error codes (-EIO on exceptions) which should be passed
to the caller (instead of erronously being handled like
condition code 3)
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cornelia Huck [Tue, 9 Sep 2008 10:38:57 +0000 (12:38 +0200)]
[S390] cio: Correct cleanup on error.
Fix cleanup on error in chp_new() and init_channel_subsystem()
(must not call kfree() on structures that had been registered).
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Jarod Wilson [Tue, 9 Sep 2008 10:38:56 +0000 (12:38 +0200)]
[S390] CVE-2008-1514: prevent ptrace padding area read/write in 31-bit mode
When running a 31-bit ptrace, on either an s390 or s390x kernel,
reads and writes into a padding area in struct user_regs_struct32
will result in a kernel panic.
This is also known as CVE-2008-1514.
Test case available here:
http://sources.redhat.com/cgi-bin/cvsweb.cgi/~checkout~/tests/ptrace-tests/tests/user-area-padding.c?cvsroot=systemtap
Steps to reproduce:
1) wget the above
2) gcc -o user-area-padding-31bit user-area-padding.c -Wall -ggdb2 -D_GNU_SOURCE -m31
3) ./user-area-padding-31bit
<panic>
Test status
-----------
Without patch, both s390 and s390x kernels panic. With patch, the test case,
as well as the gdb testsuite, pass without incident, padding area reads
returning zero, writes ignored.
Nb: original version returned -EINVAL on write attempts, which broke the
gdb test and made the test case slightly unhappy, Jan Kratochvil suggested
the change to return 0 on write attempts.
Signed-off-by: Jarod Wilson <jarod@redhat.com>
Tested-by: Jan Kratochvil <jan.kratochvil@redhat.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
David S. Miller [Tue, 9 Sep 2008 09:11:11 +0000 (02:11 -0700)]
Merge branch 'master' of git://git./linux/kernel/git/holtmann/bluetooth-2.6
Marcel Holtmann [Tue, 9 Sep 2008 05:19:20 +0000 (07:19 +0200)]
[Bluetooth] Reject L2CAP connections on an insecure ACL link
The Security Mode 4 of the Bluetooth 2.1 specification has strict
authentication and encryption requirements. It is the initiators job
to create a secure ACL link. However in case of malicious devices, the
acceptor has to make sure that the ACL is encrypted before allowing
any kind of L2CAP connection. The only exception here is the PSM 1 for
the service discovery protocol, because that is allowed to run on an
insecure ACL link.
Previously it was enough to reject a L2CAP connection during the
connection setup phase, but with Bluetooth 2.1 it is forbidden to
do any L2CAP protocol exchange on an insecure link (except SDP).
The new hci_conn_check_link_mode() function can be used to check the
integrity of an ACL link. This functions also takes care of the cases
where Security Mode 4 is disabled or one of the devices is based on
an older specification.
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Marcel Holtmann [Tue, 9 Sep 2008 05:19:20 +0000 (07:19 +0200)]
[Bluetooth] Enforce correct authentication requirements
With the introduction of Security Mode 4 and Simple Pairing from the
Bluetooth 2.1 specification it became mandatory that the initiator
requires authentication and encryption before any L2CAP channel can
be established. The only exception here is PSM 1 for the service
discovery protocol (SDP). It is meant to be used without any encryption
since it contains only public information. This is how Bluetooth 2.0
and before handle connections on PSM 1.
For Bluetooth 2.1 devices the pairing procedure differentiates between
no bonding, general bonding and dedicated bonding. The L2CAP layer
wrongly uses always general bonding when creating new connections, but it
should not do this for SDP connections. In this case the authentication
requirement should be no bonding and the just-works model should be used,
but in case of non-SDP connection it is required to use general bonding.
If the new connection requires man-in-the-middle (MITM) protection, it
also first wrongly creates an unauthenticated link key and then later on
requests an upgrade to an authenticated link key to provide full MITM
protection. With Simple Pairing the link key generation is an expensive
operation (compared to Bluetooth 2.0 and before) and doing this twice
during a connection setup causes a noticeable delay when establishing
a new connection. This should be avoided to not regress from the expected
Bluetooth 2.0 connection times. The authentication requirements are known
up-front and so enforce them.
To fulfill these requirements the hci_connect() function has been extended
with an authentication requirement parameter that will be stored inside
the connection information and can be retrieved by userspace at any
time. This allows the correct IO capabilities exchange and results in
the expected behavior.
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Marcel Holtmann [Tue, 9 Sep 2008 05:19:19 +0000 (07:19 +0200)]
[Bluetooth] Fix reference counting during ACL config stage
The ACL config stage keeps holding a reference count on incoming
connections when requesting the extended features. This results in
keeping an ACL link up without any users. The problem here is that
the Bluetooth specification doesn't define an ownership of the ACL
link and thus it can happen that the implementation on the initiator
side doesn't care about disconnecting unused links. In this case the
acceptor needs to take care of this.
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
David S. Miller [Tue, 9 Sep 2008 00:21:07 +0000 (17:21 -0700)]
sparc64: Disable timer interrupts in fixup_irqs().
When a CPU is offlined, we leave the timer interrupts disabled
because fixup_irqs() does not explicitly take care of that case.
Fix this by invoking tick_ops->disable_irq().
Based upon analysis done by Paul E. McKenney.
Signed-off-by: David S. Miller <davem@davemloft.net>
Linus Torvalds [Mon, 8 Sep 2008 22:55:18 +0000 (15:55 -0700)]
Merge branch 'master' of git://git./linux/kernel/git/hskinnemoen/avr32-2.6
* 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/hskinnemoen/avr32-2.6:
avr32: pm_standby low-power ram bug fix
avr32: Fix lockup after Java stack underflow in user mode
Linus Torvalds [Mon, 8 Sep 2008 22:54:32 +0000 (15:54 -0700)]
Merge branch 'merge' of git://git./linux/kernel/git/paulus/powerpc
* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
powerpc: Fix rare boot build breakage
powerpc/spufs: Fix possible scheduling of a context to multiple SPEs
powerpc/spufs: Fix race for a free SPU
powerpc/spufs: Fix multiple get_spu_context()
Linus Torvalds [Mon, 8 Sep 2008 22:51:12 +0000 (15:51 -0700)]
Merge git://git./linux/kernel/git/herbert/crypto-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
Revert "crypto: camellia - Use kernel-provided bitops, unaligned access helpers"
Linus Torvalds [Mon, 8 Sep 2008 22:50:19 +0000 (15:50 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm
* master.kernel.org:/home/rmk/linux-2.6-arm:
[ARM] 5241/1: provide ioremap_wc()
[ARM] omap: fix virtual vs physical address space confusions
[ARM] remove unused #include <version.h>
[ARM] omap: fix build error in ohci-omap.c
[ARM] omap: fix gpio.c build error
Linus Torvalds [Mon, 8 Sep 2008 22:47:21 +0000 (15:47 -0700)]
Merge branch 'sched-fixes-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip
* 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
sched: arch_reinit_sched_domains() must destroy domains to force rebuild
sched, cpuset: rework sched domains and CPU hotplug handling (v4)
Linus Torvalds [Mon, 8 Sep 2008 22:46:56 +0000 (15:46 -0700)]
Merge branch 'upstream-linus' of git://git./linux/kernel/git/jgarzik/libata-dev
* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
ahci: RAID mode SATA patch for Intel Ibex Peak DeviceIDs
pata_sil680: remove duplicate pcim_enable_device
libata-sff: kill spurious WARN_ON() in ata_hsm_move()
sata_nv: disable hardreset for generic
ahci: disable PMP for marvell ahcis
sata_mv: add RocketRaid 1720 PCI ID to driver
ahci, pata_marvell: play nicely together
Uwe Kleine-König [Mon, 8 Sep 2008 22:11:39 +0000 (00:11 +0200)]
Fix format of MAINTAINERS
... one entry lacked a colon which broke one of my scripts.
Signed-off-by: Uwe Kleine-König <ukleinek@informatik.uni-freiburg.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Mon, 8 Sep 2008 22:43:44 +0000 (15:43 -0700)]
Merge git://git./linux/kernel/git/davem/net-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
bridge: don't allow setting hello time to zero
netns : fix kernel panic in timewait socket destruction
pkt_sched: Fix qdisc state in net_tx_action()
netfilter: nf_conntrack_irc: make sure string is terminated before calling simple_strtoul
netfilter: nf_conntrack_gre: nf_ct_gre_keymap_flush() fixlet
netfilter: nf_conntrack_gre: more locking around keymap list
netfilter: nf_conntrack_sip: de-static helper pointers
Linus Torvalds [Mon, 8 Sep 2008 22:43:02 +0000 (15:43 -0700)]
Merge git://git./linux/kernel/git/davem/sparc-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
sparc64: Prevent sparc64 from invoking irq handlers on offline CPUs
sparc64: Fix IPI call locking.
Jason Wessel [Mon, 8 Sep 2008 13:53:37 +0000 (14:53 +0100)]
usb: fix null deferences in low level usb serial
The hw interface drivers for the usb serial devices deference the tty
structure to set up the parameters for the initial console. The tty
structure should be passed as a parameter to the set_termios() call.
Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Chuck Lever [Mon, 8 Sep 2008 15:58:13 +0000 (11:58 -0400)]
NFS: Restore missing hunk in NFS mount option parser
Automounter maps can contain mount options valid for other NFS
implementations but not for Linux. The Linux automounter uses the
mount command's "-s" command line option ("s" for "sloppy") so that
mount requests containing such options are not rejected.
Commit
f45663ce5fb30f76a3414ab3ac69f4dd320e760a attempted to address a
known regression with text-based NFS mount option parsing. Unrecognized
mount options would cause mount requests to fail, even if the "-s"
option was used on the mount command line.
Unfortunately, this commit was not complete as submitted. It adds a
new mount option, "sloppy". But it is missing a hunk, so it now allows
NFS mounts with unrecognized mount options, even if the "sloppy" option
is not present. This could be a problem if a required critical mount
option such as "sync" is misspelled, for example, and is considered a
regression from 2.6.26.
This patch restores the missing hunk. Now, the default behavior of
text-based NFS mount options is as before: any unrecognized mount option
will cause the mount to fail.
Please include this in 2.6.27-rc.
Thanks to Neil Brown for reporting this.
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Acked-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Stephen Hemminger [Mon, 8 Sep 2008 20:44:40 +0000 (13:44 -0700)]
bridge: don't allow setting hello time to zero
Dushan Tcholich reports that on his system ksoftirqd can consume
between %6 to %10 of cpu time, and cause ~200 context switches per
second.
He then correlated this with a report by bdupree@techfinesse.com:
http://marc.info/?l=linux-kernel&m=
119613299024398&w=2
and the culprit cause seems to be starting the bridge interface.
In particular, when starting the bridge interface, his scripts
are specifying a hello timer interval of "0".
The bridge hello time can't be safely set to values less than 1
second, otherwise it is possible to end up with a runaway timer.
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Daniel Lezcano [Mon, 8 Sep 2008 20:17:27 +0000 (13:17 -0700)]
netns : fix kernel panic in timewait socket destruction
How to reproduce ?
- create a network namespace
- use tcp protocol and get timewait socket
- exit the network namespace
- after a moment (when the timewait socket is destroyed), the kernel
panics.
# BUG: unable to handle kernel NULL pointer dereference at
0000000000000007
IP: [<
ffffffff821e394d>] inet_twdr_do_twkill_work+0x6e/0xb8
PGD
119985067 PUD
11c5c0067 PMD 0
Oops: 0000 [1] SMP
CPU 1
Modules linked in: ipv6 button battery ac loop dm_mod tg3 libphy ext3 jbd
edd fan thermal processor thermal_sys sg sata_svw libata dock serverworks
sd_mod scsi_mod ide_disk ide_core [last unloaded: freq_table]
Pid: 0, comm: swapper Not tainted 2.6.27-rc2 #3
RIP: 0010:[<
ffffffff821e394d>] [<
ffffffff821e394d>]
inet_twdr_do_twkill_work+0x6e/0xb8
RSP: 0018:
ffff88011ff7fed0 EFLAGS:
00010246
RAX:
ffffffffffffffff RBX:
ffffffff82339420 RCX:
ffff88011ff7ff30
RDX:
0000000000000001 RSI:
ffff88011a4d03c0 RDI:
ffff88011ac2fc00
RBP:
ffffffff823392e0 R08:
0000000000000000 R09:
ffff88002802a200
R10:
ffff8800a5c4b000 R11:
ffffffff823e4080 R12:
ffff88011ac2fc00
R13:
0000000000000001 R14:
0000000000000001 R15:
0000000000000000
FS:
0000000041cbd940(0000) GS:
ffff8800bff839c0(0000)
knlGS:
0000000000000000
CS: 0010 DS: 0018 ES: 0018 CR0:
000000008005003b
CR2:
0000000000000007 CR3:
00000000bd87c000 CR4:
00000000000006e0
DR0:
0000000000000000 DR1:
0000000000000000 DR2:
0000000000000000
DR3:
0000000000000000 DR6:
00000000ffff0ff0 DR7:
0000000000000400
Process swapper (pid: 0, threadinfo
ffff8800bff9e000, task
ffff88011ff76690)
Stack:
ffffffff823392e0 0000000000000100 ffffffff821e3a3a
0000000000000008
0000000000000000 ffffffff821e3a61 ffff8800bff7c000 ffffffff8203c7e7
ffff88011ff7ff10 ffff88011ff7ff10 0000000000000021 ffffffff82351108
Call Trace:
<IRQ> [<
ffffffff821e3a3a>] ? inet_twdr_hangman+0x0/0x9e
[<
ffffffff821e3a61>] ? inet_twdr_hangman+0x27/0x9e
[<
ffffffff8203c7e7>] ? run_timer_softirq+0x12c/0x193
[<
ffffffff820390d1>] ? __do_softirq+0x5e/0xcd
[<
ffffffff8200d08c>] ? call_softirq+0x1c/0x28
[<
ffffffff8200e611>] ? do_softirq+0x2c/0x68
[<
ffffffff8201a055>] ? smp_apic_timer_interrupt+0x8e/0xa9
[<
ffffffff8200cad6>] ? apic_timer_interrupt+0x66/0x70
<EOI> [<
ffffffff82011f4c>] ? default_idle+0x27/0x3b
[<
ffffffff8200abbd>] ? cpu_idle+0x5f/0x7d
Code: e8 01 00 00 4c 89 e7 41 ff c5 e8 8d fd ff ff 49 8b 44 24 38 4c 89 e7
65 8b 14 25 24 00 00 00 89 d2 48 8b 80 e8 00 00 00 48 f7 d0 <48> 8b 04 d0
48 ff 40 58 e8 fc fc ff ff 48 89 df e8 c0 5f 04 00
RIP [<
ffffffff821e394d>] inet_twdr_do_twkill_work+0x6e/0xb8
RSP <
ffff88011ff7fed0>
CR2:
0000000000000007
This patch provides a function to purge all timewait sockets related
to a network namespace. The timewait sockets life cycle is not tied with
the network namespace, that means the timewait sockets stay alive while
the network namespace dies. The timewait sockets are for avoiding to
receive a duplicate packet from the network, if the network namespace is
freed, the network stack is removed, so no chance to receive any packets
from the outside world. Furthermore, having a pending destruction timer
on these sockets with a network namespace freed is not safe and will lead
to an oops if the timer callback which try to access data belonging to
the namespace like for example in:
inet_twdr_do_twkill_work
-> NET_INC_STATS_BH(twsk_net(tw), LINUX_MIB_TIMEWAITED);
Purging the timewait sockets at the network namespace destruction will:
1) speed up memory freeing for the namespace
2) fix kernel panic on asynchronous timewait destruction
Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
Acked-by: Denis V. Lunev <den@openvz.org>
Acked-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Linus Torvalds [Fri, 5 Sep 2008 16:30:14 +0000 (09:30 -0700)]
x86: disable static NOPLs on 32 bits
On 32-bit, at least the generic nops are fairly reasonable, but the
default nops for 64-bit really look pretty sad, and the P6 nops really do
look better.
So I would suggest perhaps moving the static P6 nop selection into the
CONFIG_X86_64 thing.
The alternative is to just get rid of that static nop selection, and just
have two cases: 32-bit and 64-bit, and just pick obviously safe cases for
them.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Jeremy Fitzhardinge [Mon, 8 Sep 2008 16:54:49 +0000 (09:54 -0700)]
xen: fix 2.6.27-rc5 xen balloon driver warnings
Set the class so it doesn't clash with the normal memory class.
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
===================================================================
Thomas Bogendoerfer [Thu, 4 Sep 2008 21:05:45 +0000 (23:05 +0200)]
[MIPS] IP22: Fix detection of second HPC3 on Challenge S
The second HPC3 could be found only on Guiness systems (Challenge-S),
but not on fullhouse (Indigo2) systems.
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Seth Heasley [Wed, 27 Aug 2008 23:47:22 +0000 (16:47 -0700)]
ahci: RAID mode SATA patch for Intel Ibex Peak DeviceIDs
Add the Intel Ibex Peak (PCH) SATA RAID Controller DeviceIDs.
Signed-off-by: Seth Heasley <seth.heasley@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>