pandora-kernel.git
16 years agoARM: OMAP: Default configuration file for 3430 SDP v2.6.22-omap1
Syed Mohammed, Khasim [Wed, 11 Jul 2007 12:30:08 +0000 (05:30 -0700)]
ARM: OMAP: Default configuration file for 3430 SDP

Signed-off-by: Syed Mohammed Khasim <x0khasim@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Add support for 3430 SDP
Syed Mohammed, Khasim [Wed, 11 Jul 2007 12:28:24 +0000 (05:28 -0700)]
ARM: OMAP: Add support for 3430 SDP

Add support for 3430 SDP

Signed-off-by: Syed Mohammed Khasim <x0khasim@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoOMAP:DSP: plat-omap dsp updates for 3430
Syed Mohammed, Khasim [Wed, 11 Jul 2007 12:26:48 +0000 (05:26 -0700)]
OMAP:DSP: plat-omap dsp updates for 3430

plat-omap dsp updates for 3430

Signed-off-by: Syed Mohammed Khasim <x0khasim@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Add omap3430 support
Syed Mohammed, Khasim [Wed, 11 Jul 2007 12:24:50 +0000 (05:24 -0700)]
ARM: OMAP: Add omap3430 support

ARM: OMAP: Add omap3430 support

Signed-off-by: Syed Mohammed Khasim <x0khasim@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Clock updates for OMAP3430
Syed Mohammed, Khasim [Wed, 11 Jul 2007 12:14:19 +0000 (05:14 -0700)]
ARM: OMAP: Clock updates for OMAP3430

Signed-off-by: Syed Mohammed Khasim <x0khasim@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARMv7: Trust Zone updates for OMAP3
Syed Mohammed, Khasim [Wed, 11 Jul 2007 12:12:31 +0000 (05:12 -0700)]
ARMv7: Trust Zone updates for OMAP3

Signed-off-by: Syed Mohammed Khasim <x0khasim@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARMv7: NON V7 code changes to head.S
Syed Mohammed, Khasim [Wed, 11 Jul 2007 12:11:23 +0000 (05:11 -0700)]
ARMv7: NON V7 code changes to head.S

Signed-off-by: Syed Mohammed Khasim <x0khasim@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Kconfig and Makefile updates for OMAP3
Syed Mohammed, Khasim [Wed, 11 Jul 2007 12:07:29 +0000 (05:07 -0700)]
ARM: OMAP: Kconfig and Makefile updates for OMAP3

Kconfig and Makefile updates for OMAP3

Signed-off-by: Syed Mohammed Khasim <x0khasim@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Apollon Plus board support
Kyungmin Park [Wed, 11 Jul 2007 10:55:42 +0000 (03:55 -0700)]
ARM: OMAP: Apollon Plus board support

Now only enable LEDs and SWs.

Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Define more OMAP24XX GPIOs pinout
Kyungmin Park [Wed, 11 Jul 2007 10:51:18 +0000 (03:51 -0700)]
ARM: OMAP: Define more OMAP24XX GPIOs pinout

ARM: OMAP: Define more OMAP24XX GPIOs pinout

Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoMerge omap-drivers
Tony Lindgren [Wed, 11 Jul 2007 10:02:22 +0000 (03:02 -0700)]
Merge omap-drivers

Merge branches 'master' and 'omap-drivers'

Conflicts:

arch/arm/boot/.gitignore
arch/arm/configs/omap_h2_1610_defconfig
arch/arm/configs/omap_osk_5912_defconfig
arch/arm/mach-omap1/board-h2.c
arch/arm/mach-omap1/board-palmte.c
arch/arm/mach-omap1/board-palmtt.c
arch/arm/mach-omap1/board-palmz71.c
arch/arm/mach-omap1/board-sx1.c
arch/arm/mach-omap2/Kconfig
arch/arm/mach-omap2/Makefile
arch/arm/mach-omap2/board-2430sdp.c
arch/arm/mach-omap2/board-apollon-keys.c
arch/arm/mach-omap2/board-apollon.c
arch/arm/mach-omap2/board-h4.c
arch/arm/mach-omap2/board-n800-audio.c
arch/arm/mach-omap2/board-n800-dsp.c
arch/arm/mach-omap2/board-n800-usb.c
arch/arm/mach-omap2/board-n800.c
arch/arm/mach-omap2/devices.c
arch/arm/mach-omap2/io.c
arch/arm/mach-omap2/irq.c
arch/arm/mach-omap2/memory.c
arch/arm/mach-omap2/pm.c
arch/arm/mach-omap2/sleep.S
arch/arm/plat-omap/Makefile
arch/arm/plat-omap/common.c
arch/arm/plat-omap/dsp/dsp_common.c
arch/arm/plat-omap/dsp/dsp_common.h
arch/arm/plat-omap/dsp/omap2_dsp.h
arch/arm/plat-omap/timer32k.c
drivers/Makefile
drivers/i2c/busses/i2c-omap.c
drivers/i2c/chips/Kconfig
drivers/i2c/chips/Makefile
drivers/i2c/chips/menelaus.c
drivers/i2c/chips/tlv320aic23.c
drivers/i2c/chips/twl4030_core.c
drivers/mtd/onenand/omap2.c
drivers/spi/Kconfig
drivers/spi/omap2_mcspi.c
drivers/spi/tsc2101.c
drivers/spi/tsc2102.c
drivers/spi/tsc2301-core.c
drivers/video/omap/Kconfig
drivers/video/omap/Makefile
drivers/video/omap/dispc.c
drivers/video/omap/hwa742.c
drivers/video/omap/lcd_apollon.c
drivers/video/omap/lcd_h2.c
drivers/video/omap/lcd_h3.c
drivers/video/omap/lcd_h4.c
drivers/video/omap/lcd_inn1510.c
drivers/video/omap/lcd_inn1610.c
drivers/video/omap/lcd_mipid.c
drivers/video/omap/lcd_osk.c
drivers/video/omap/lcd_p2.c
drivers/video/omap/lcd_palmte.c
drivers/video/omap/lcd_palmtt.c
drivers/video/omap/lcd_palmz71.c
drivers/video/omap/lcd_sx1.c
drivers/video/omap/lcdc.c
drivers/video/omap/omapfb_main.c
drivers/video/omap/rfbi.c
drivers/video/omap/sossi.c
include/asm-arm/arch-omap/board-2430sdp.h
include/asm-arm/arch-omap/eac.h
include/asm-arm/arch-omap/gpio.h
include/asm-arm/arch-omap/hardware.h
include/asm-arm/arch-omap/io.h
include/asm-arm/arch-omap/menelaus.h
include/asm-arm/arch-omap/mmc.h
include/asm-arm/arch-omap/omap24xx.h
include/asm-arm/arch-omap/onenand.h
include/asm-arm/arch-omap/pm.h
include/asm-arm/arch-omap/twl4030.h
include/asm-arm/hardware/tsc2101.h
include/linux/spi/tsc2102.h
net/ipv4/netfilter/Kconfig

16 years agoARM: OMAP: Fix warning in lcdc.c
Dirk Behme [Tue, 1 May 2007 13:25:16 +0000 (15:25 +0200)]
ARM: OMAP: Fix warning in lcdc.c

Fix warning

drivers/video/omap/lcdc.c:878: warning: initialization from
incompatible pointer type

Signed-off-by: Dirk Behme <dirk.behme@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoI2C: Add high-speed support to omap-i2c
Syed Mohammed Khasim [Thu, 26 Apr 2007 18:32:39 +0000 (18:32 +0000)]
I2C: Add high-speed support to omap-i2c

Omap2430 has additional support for high-speed I2C.

This patch moves I2C speed parameter (from module) to platform data.
Also added basic High Speed support based on I2C bus speed.

This patch is tested for high speed I2C (with TWL4030 Keypad) and works as
expected.

Signed-off-by: Syed Mohammed Khasim <x0khasim@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoFormating changes for Basic OMAP2430 High speed I2C
Syed Mohammed, Khasim [Tue, 24 Apr 2007 00:49:36 +0000 (19:49 -0500)]
Formating changes for Basic OMAP2430 High speed I2C

Resubmitting after incorporating review comments

This patch contains the formatting changes.

Signed-off-by: Syed Mohammed Khasim <x0khasim@ti.com>
Files:
 drivers/i2c/busses/i2c-omap.c
=============================================================================
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoWATCHDOG: use base address from platform resources and make 2430 boot again
Nishanth Menon [Thu, 26 Apr 2007 18:07:06 +0000 (18:07 +0000)]
WATCHDOG: use base address from platform resources and make 2430 boot again

Modfied watchdog driver to use base address provided in platform defn
Cleaned up a bunch of statics used.
Added 2430 baseaddress defn
Addressed review comments for patch1 and 2 reported by Trilok Soni and Tony

Signed-off-by: Nishanth Menon <menon.nishanth@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Add DSP common code
Toshihiro Kobayashi [Fri, 8 Dec 2006 00:20:22 +0000 (16:20 -0800)]
ARM: OMAP: Add DSP common code

Add DSP common code for OMAP. This patch adds code to idle the
OMAP DSP.

Signed-off-by: Toshihiro Kobayashi <toshihiro.kobayashi@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoSPI: Add support for TSC2301 protocol driver
Jarkko Nikula [Mon, 2 Apr 2007 17:21:35 +0000 (13:21 -0400)]
SPI: Add support for TSC2301 protocol driver

This adds a driver for TSC2301 including support for audio, keypad and
touchscreen. Patch is originally developed for Nokia N800 by Imre Deak,
Jarkko Nikula, Jarkko Oikarinen and Juha Yrjola.

Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
16 years agoSPI: Add TSC2102 main SPI driver
Andrzej Zaborowski [Mon, 2 Apr 2007 17:15:00 +0000 (13:15 -0400)]
SPI: Add TSC2102 main SPI driver

This adds a driver for the TSC2102 chip by Texas Instruments. This
driver is responsible for all communication with the chip and doesn't
export anything for user-space, but for other drivers controlling
devices connected to the chip.

Signed-off-by: Andrzej Zaborowski <balrog@zabor.org>
16 years agoSPI: Add support for TSC2101
Imre Deak [Mon, 2 Apr 2007 17:11:36 +0000 (13:11 -0400)]
SPI: Add support for TSC2101

The new driver is functionally the same as the old
drivers/ssi/omap-tsc2101 driver in the linux-omap tree.

Signed-off-by: Imre Deak <imre.deak@solidboot.com>
16 years agoSPI: Add an SPI master driver for the OMAP2 McSPI controller
Juha Yrjola [Tue, 3 Apr 2007 19:06:04 +0000 (15:06 -0400)]
SPI: Add an SPI master driver for the OMAP2 McSPI controller

Add an SPI master driver for the OMAP2 McSPI controller

Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com>
16 years agoMTD: Add onenand support for omap24xx
Jarkko Lavinen [Mon, 2 Apr 2007 16:14:47 +0000 (12:14 -0400)]
MTD: Add onenand support for omap24xx

Add onenand support for omap24xx

Signed-off-by: Jarkko Lavinen <jarkko.lavinen@nokia.com>
16 years agoNF: Add iptables IDLETIMER target
Timo Teräs [Mon, 5 Mar 2007 13:40:46 +0000 (05:40 -0800)]
NF: Add iptables IDLETIMER target

Each matching packet resets the timer associated with input and/or output
interfaces. Timer expiry causes a kobject uevent. Idle timer can be read via
sysfs.

Signed-off-by: Hiroshi DOYU <hiroshi.doyu@nokia.com>
Signed-off-by: Juha Yrjölä <juha.yrjola@nokia.com>
Updated for 2.6.21-rc1 by Arnaud Patard.

Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agosmc91x: Add code to detect errors caused by bad memory timings
Tony Lindgren [Wed, 28 Feb 2007 12:28:25 +0000 (04:28 -0800)]
smc91x: Add code to detect errors caused by bad memory timings

Add code to detect errors caused by bad memory timings

Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoserial: 8250 changes for omap
Tony Lindgren [Wed, 28 Feb 2007 12:34:11 +0000 (04:34 -0800)]
serial: 8250 changes for omap

8250 changes for omap

Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agosmc91x: Clean up omap machine type handling
Tony Lindgren [Wed, 28 Feb 2007 12:27:19 +0000 (04:27 -0800)]
smc91x: Clean up omap machine type handling

Level handling is different for omap1 and omap2.

Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoAdd Nokia CBUS support
Juha Yrjola [Mon, 2 Apr 2007 16:06:45 +0000 (12:06 -0400)]
Add Nokia CBUS support

Add Nokia CBUS support

Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com>
16 years agoi2c: Merge omap i2c drivers from omap-historic
Tony Lindgren [Wed, 28 Feb 2007 11:39:28 +0000 (03:39 -0800)]
i2c: Merge omap i2c drivers from omap-historic

Merge omap i2c drivers from omap-historic

Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoFB: Add support for OMAP framebuffer
Imre Deak [Tue, 3 Apr 2007 18:15:01 +0000 (14:15 -0400)]
FB: Add support for OMAP framebuffer

Add support for OMAP framebuffer

Signed-off-by: Imre Deak <imre.deak@solidboot.com>
16 years agoARM: OMAP: Add apollon gpio keys using gpio-keys input
Kyungmin Park [Thu, 8 Mar 2007 04:12:28 +0000 (13:12 +0900)]
ARM: OMAP: Add apollon gpio keys using gpio-keys input

Add apollon gpio keys using gpio-keys input

Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Replace mach-omap/omap2 with mach-omap2
Trilok Soni [Tue, 6 Feb 2007 21:20:34 +0000 (13:20 -0800)]
ARM: OMAP: Replace mach-omap/omap2 with mach-omap2

Update board Apollon with correct file path.

Signed-off-by: Trilok Soni <soni.trilok@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Merge board specific files from N800 tree
Kai Svahn [Fri, 26 Jan 2007 20:39:48 +0000 (12:39 -0800)]
ARM: OMAP: Merge board specific files from N800 tree

This patch merges board specific files from N800 tree.
Nokia has published the files at:

http://repository.maemo.org/pool/maemo3.0/free/source/
kernel-source-rx-34_2.6.18.orig.tar.gz
kernel-source-rx-34_2.6.18-osso29.diff.gz

Signed-off-by: Kai Svahn <kai.svahn@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: cleanup apollon board
Kyungmin Park [Fri, 26 Jan 2007 00:25:48 +0000 (16:25 -0800)]
ARM: OMAP: cleanup apollon board

- Add etherent gpmc handling
- Remove unused mux setting
- Add MMC switch pin comments

Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Sync H4 board init with linux-omap
Tony Lindgren [Thu, 7 Dec 2006 21:58:17 +0000 (13:58 -0800)]
ARM: OMAP: Sync H4 board init with linux-omap

This patch syncs H4 board init with linux-omap tree.

Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Fix typo in board-h4.h
Komal Shah [Thu, 7 Dec 2006 01:14:11 +0000 (17:14 -0800)]
ARM: OMAP: Fix typo in board-h4.h

Replace OMAP1610 with OMAP2420.

Signed-off-by: Komal Shah <komal_shah802003@yahoo.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: USB peripheral support on H4
David Brownell [Thu, 7 Dec 2006 01:14:06 +0000 (17:14 -0800)]
ARM: OMAP: USB peripheral support on H4

H4 has two peripheral ports, one for "download" and one for OTG.
The one to use is selected through Kconfig.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Fix PRCM base register usage for 243x
Kevin Hilman [Wed, 21 Mar 2007 00:07:50 +0000 (17:07 -0700)]
ARM: OMAP: Fix PRCM base register usage for 243x

The PRCM base register is different on 242x and 243x.  Use
the #ifdef'd #define from omap24xx.h instead of the locally
defined one.

Signed-off-by: Kevin Hilman <khilman@mvista.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Device init for OMAP24xx Enhanced Audio Controller
Jarkko Nikula [Thu, 29 Mar 2007 20:04:17 +0000 (16:04 -0400)]
ARM: OMAP: Device init for OMAP24xx Enhanced Audio Controller

Device init for OMAP24xx Enhanced Audio Controller

Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: 243x: Add mappings for SDRC and SMS
Kevin Hilman [Tue, 20 Mar 2007 18:19:32 +0000 (14:19 -0400)]
ARM: OMAP: 243x: Add mappings for SDRC and SMS

Add mappings for SDRC ans SMS so that omap2_memory_init() works on the
2430.  This also allows the mpurate= command-line option to work.

Signed-off-by: Kevin Hilman <khilman@mvista.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Merge PM code from N800 tree
Kai Svahn [Fri, 26 Jan 2007 21:05:41 +0000 (13:05 -0800)]
ARM: OMAP: Merge PM code from N800 tree

This patch merges omap2 PM code from N800 tree.

Patch adds support for sleep while idle for omap2
and handy serial console debbugging code. It also
moves code from pm-domain.c to pm.c.

This code can be used as a base for developing
power management for all omap24xx boards.

Signed-off-by: Kai Svahn <kai.svahn@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Merge driver headers from N800 tree
Kai Svahn [Fri, 26 Jan 2007 21:14:34 +0000 (13:14 -0800)]
ARM: OMAP: Merge driver headers from N800 tree

This patch merges omap specific driver headers from
N800 tree.

Signed-off-by: Kai Svahn <kai.svahn@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Merge gpmc changes from N800 tree
Kai Svahn [Fri, 26 Jan 2007 20:29:40 +0000 (12:29 -0800)]
ARM: OMAP: Merge gpmc changes from N800 tree

This patch merges gpmc changes from N800 tree
and adds gpmc_get_fclk_period() to gpmc.h.

Signed-off-by: Kai Svahn <kai.svahn@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: TUSB EVM init
David Brownell [Thu, 7 Dec 2006 22:03:49 +0000 (14:03 -0800)]
ARM: OMAP: TUSB EVM init

Add init support for the TUSB6010 EVM board, as connected to H4.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Tabify mux.c
Tony Lindgren [Thu, 7 Dec 2006 22:01:29 +0000 (14:01 -0800)]
ARM: OMAP: Tabify mux.c

Tabify mux.c, no functional changes.

Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Add minimal OMAP2430 support
Syed Mohammed Khasim [Thu, 7 Dec 2006 01:14:05 +0000 (17:14 -0800)]
ARM: OMAP: Add minimal OMAP2430 support

This patch adds minimal OMAP2430 support to get the kernel booting on 2430SDP.

Signed-off-by: Syed Mohammed Khasim <x0khasim@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: abstract debug card setup (smc, leds)
David Brownell [Thu, 7 Dec 2006 01:14:03 +0000 (17:14 -0800)]
ARM: OMAP: abstract debug card setup (smc, leds)

Additional cleanup for debug boards on H2/P2/H3/H4:  move the init
code that's not board-specific into a new file where it can be easily
shared between all the different boards (avoiding code duplication,
and making it easier to support more devices).  Make H4 use that.

This should be easy to drop in to the OMAP1 boards using these debug
cards; the only difference seems to be that the p2 does an extra reset
of the smc using the fpga (probably all boards could do that, if it's
necessary) and doesn't use the gpio mux or request APIs.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: omap2/gpmc updates
David Brownell [Thu, 7 Dec 2006 01:13:55 +0000 (17:13 -0800)]
ARM: OMAP: omap2/gpmc updates

GPMC updates:
 - bugfixes: wrong/missing flags, omitted write, wrong test
 - don't map memory segments starting at zero
 - improve debug messaging
 - export gpmc_get_fclk_perio]d() since it's needed to calc timings
 - expect gpmc_cs_set_timings() caller to have initialized sync vs async

Note that this API is glitchy; likely the best fix would be to add
a member to "struct gpmc_timings" to hold GPMC_CONFIG1, since that
holds one key aspect of the GPMC timings (the gpmc_fclk divisor,
and sync vs. async == whether that divisor matters).

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: omap2/memory.c compile fixes
David Brownell [Thu, 7 Dec 2006 01:13:54 +0000 (17:13 -0800)]
ARM: OMAP: omap2/memory.c compile fixes

Remove some conflicting declarations in omap2/memory.c so that the
file builds again.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Board Apollon update, fix boot
Kyungmin Park [Thu, 7 Dec 2006 01:13:53 +0000 (17:13 -0800)]
ARM: OMAP: Board Apollon update, fix boot

Update Apollon board init to initialize NAND, USB,
and LEDs. Also configure GPMC memory for smc91x Ethernet.

Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Optimize INTC register accesses and enable autoidling
Juha Yrjola [Thu, 7 Dec 2006 01:13:50 +0000 (17:13 -0800)]
ARM: OMAP: Optimize INTC register accesses and enable autoidling

Use virtual addresses directly instead of physical addresses to
avoid having to recalculate the virtual address with every
register access.

Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP2: Place SMS and SDRC into smart idle mode
Juha Yrjola [Thu, 7 Dec 2006 01:13:46 +0000 (17:13 -0800)]
ARM: OMAP2: Place SMS and SDRC into smart idle mode

Place SMS and SDRC into smart idle mode

Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: H2 lcd updates for SPI framework
Eduardo Valentin [Tue, 3 Apr 2007 18:59:27 +0000 (14:59 -0400)]
ARM: OMAP: H2 lcd updates for SPI framework

This is an updated patch to fix lcd for H2 board. It uses platform_data
field to pass spi_device to lcd driver.

Signed-off-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: TSC2101: add platform init / registration to board files
Imre Deak [Wed, 14 Mar 2007 15:52:42 +0000 (17:52 +0200)]
ARM: OMAP: TSC2101: add platform init / registration to board files

H2 / H3 boards use this chip, update their board files.

Signed-off-by: Imre Deak <imre.deak@solidboot.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: N770: add missing LCD, LCD controller, touchscreen device registration
Imre Deak [Tue, 6 Mar 2007 16:20:00 +0000 (18:20 +0200)]
ARM: OMAP: N770: add missing LCD, LCD controller, touchscreen device registration

These were left out from the board file when merging these drivers,
add them here.

Call GPIO init from the board file as well, since the platform device init
code uses the GPIO API.

Signed-off-by: Imre Deak <imre.deak@solidboot.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: osk+mistral backlight, power, board specific
David Brownell [Fri, 26 Jan 2007 00:24:01 +0000 (16:24 -0800)]
ARM: OMAP: osk+mistral backlight, power, board specific

Mistral-specific:

  - Add PWL-driven LCD backlight device

  - Apply power to the board even when the LCD isn't configured; things
    like EEPROM, temperature sensor, and wakeup switch depend on it.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Add omap osk defconfig
Tony Lindgren [Fri, 8 Dec 2006 00:32:55 +0000 (16:32 -0800)]
ARM: OMAP: Add omap osk defconfig

Add omap osk defconfig

Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Update omap h2 defconfig
Tony Lindgren [Fri, 8 Dec 2006 00:22:18 +0000 (16:22 -0800)]
ARM: OMAP: Update omap h2 defconfig

Update omap h2 defconfig

Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Sync board specific files with linux-omap
Tony Lindgren [Thu, 7 Dec 2006 21:58:17 +0000 (13:58 -0800)]
ARM: OMAP: Sync board specific files with linux-omap

This patch syncs omap board specific files with linux-omap tree.

Patch consists mostly of driver updates done in linux-omap
tree for drivers not yet in mainline kernel.

Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Basic support for siemens sx1
Vladimir Ananiev [Thu, 7 Dec 2006 01:14:08 +0000 (17:14 -0800)]
ARM: OMAP: Basic support for siemens sx1

This adds basic support for Siemens SX1. More patches are available,
with video driver, mixer, and serial ports working. That is enough to
do gsm calls with right userland.

Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Palm Tungsten|T support
Marek Vasut [Thu, 7 Dec 2006 01:14:07 +0000 (17:14 -0800)]
ARM: OMAP: Palm Tungsten|T support

This patch adds board file and necessary includes for Palm Tungsten|T.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Register tsc2102 on Palm Tungsten E
Andrzej Zaborowski [Thu, 7 Dec 2006 01:13:58 +0000 (17:13 -0800)]
ARM: OMAP: Register tsc2102 on Palm Tungsten E

Add palmte board config bits for TSC2102 controlled devices. This will
enable touchscreen, audio and APM code to report battery level.

If there are other boards at some point that use a TSC2102, similar
code can be used.

Signed-off-by: Andrzej Zaborowski <balrog@zabor.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: PalmZ71 support
Marek Vasut [Thu, 7 Dec 2006 01:13:57 +0000 (17:13 -0800)]
ARM: OMAP: PalmZ71 support

Palmz71 specific things - board file.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Add support for Amstrad Delta keypad
Jonathan McDowell [Thu, 7 Dec 2006 01:13:52 +0000 (17:13 -0800)]
ARM: OMAP: Add support for Amstrad Delta keypad

This adds support for the keypad on the top of the Amstrad Delta. It's
just a standard omap-keypad so all we need to do is add the keypad
layout and platform data to the board definition file.

Signed-off-by: Jonathan McDowell <noodles@earth.li>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Palm Tungsten E board update
Andrzej Zaborowski [Thu, 7 Dec 2006 01:13:51 +0000 (17:13 -0800)]
ARM: OMAP: Palm Tungsten E board update

General update of the board file for Palm Tungsten E. Registers the
platform devices contained in the PDA (ROM chip, keypad, infra-red)
and updates the configuration for USB and MMC, whose config values
were previously guessed in most cases due to lack of documentation
(and now are confirmed by a number of users). Macros for GPIO pins are
moved to a file in include/asm-arm/arch-omap.

Signed-off-by: Andrzej Zaborowski <balrog@zabor.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: add SoSSI clock (remove manual checking of SoSSI state from idle)
Imre Deak [Mon, 5 Mar 2007 15:34:05 +0000 (17:34 +0200)]
ARM: OMAP: add SoSSI clock (remove manual checking of SoSSI state from idle)

The SoSSI driver should already take care of this by enabling / disabling
its clock when necessary, so this legacy callout from the PM idle code
is not needed any more.

Signed-off-by: Imre Deak <imre.deak@solidboot.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: add SoSSI clock
Imre Deak [Mon, 5 Mar 2007 15:22:58 +0000 (17:22 +0200)]
ARM: OMAP: add SoSSI clock

This is needed, so that disabling the SoSSI clock during idle can
be prevented.

Signed-off-by: Imre Deak <imre.deak@solidboot.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: omap camera builds again; Mistral init and mux
David Brownell [Mon, 11 Dec 2006 22:14:11 +0000 (14:14 -0800)]
ARM: OMAP: omap camera builds again; Mistral init and mux

Support the camera connector on the OSK Mistral add-on board:

  - define muxing for both camera controllers
  - mux both of them for Mistral
  - teach ov9640 glue about mistral powerup/powerdown

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Enable DSP clocks for McBSP on omap310
Marek Vasut [Thu, 7 Dec 2006 01:13:55 +0000 (17:13 -0800)]
ARM: OMAP: Enable DSP clocks for McBSP on omap310

This patch enables some clock on omap310.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Enable serial idling and wakeup features
Juha Yrjola [Thu, 7 Dec 2006 01:13:49 +0000 (17:13 -0800)]
ARM: OMAP: Enable serial idling and wakeup features

Enable serial idling and wakeup features

Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP2: Force APLLs always active
Juha Yrjola [Thu, 7 Dec 2006 01:13:47 +0000 (17:13 -0800)]
ARM: OMAP2: Force APLLs always active

The APLLs are most efficiently idled by hardware.

Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: H3 workqueue fixes
Dirk Behme [Fri, 26 Jan 2007 00:26:46 +0000 (16:26 -0800)]
ARM: OMAP: H3 workqueue fixes

Signed-off-by: Dirk Behme <dirk.behme@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: OSK led fixes
David Brownell [Mon, 2 Apr 2007 19:48:10 +0000 (12:48 -0700)]
ARM: OMAP: OSK led fixes

Bugfixes for the OSK led support:

 - Fix Kconfig merge glitches:  Mistral handles idle and timer leds just fine
 - Fix pm_suspend() runtime botch:  can't sleep, so can't touch tps65010 leds

Improvements:
 - Switch sense of Mistral idle led, so idle == off

Probably the TPS65010 leds should be handled only by the "new led" API.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: fix OMAP1 dmtimer build warning
David Brownell [Mon, 2 Apr 2007 19:45:50 +0000 (12:45 -0700)]
ARM: OMAP: fix OMAP1 dmtimer build warning

Remove the OMAP1 version of omap_dm_timer_get_fclk(), and its associated
compile-time warning.  It would only BUG() if called, while it's only
called on OMAP2.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoARM: OMAP: Fix 32k timer unsupported one-shot mode
Kevin Hilman [Wed, 16 May 2007 15:52:05 +0000 (08:52 -0700)]
ARM: OMAP: Fix 32k timer unsupported one-shot mode

Fix unsupported one-shot mode in set_mode hook.

Signed-off-by: Kevin Hilman <khilman@mvista.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoLinux 2.6.22 v2.6.22
Linus Torvalds [Sun, 8 Jul 2007 23:32:17 +0000 (16:32 -0700)]
Linux 2.6.22

Woo-hoo. I'm sure somebody will report a "this doesn't compile, and
I have a new root exploit" five minutes after release, but it still
feels good ;)

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6
Linus Torvalds [Sun, 8 Jul 2007 19:14:27 +0000 (12:14 -0700)]
Merge /pub/scm/linux/kernel/git/bart/ide-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6:
  qd65xx: fix PIO mode selection
  sis5513: adding PCI-ID

16 years agoFix permission checking for the new utimensat() system call
Linus Torvalds [Sun, 8 Jul 2007 19:02:55 +0000 (12:02 -0700)]
Fix permission checking for the new utimensat() system call

Commit 1c710c896eb461895d3c399e15bb5f20b39c9073 added the utimensat()
system call, but didn't handle the case of checking for the writability
of the target right, when the target was a file descriptor, not a
filename.

We cannot use vfs_permission(MAY_WRITE) for that case, and need to
simply check whether the file descriptor is writable.  The oops from
using the wrong function was noticed and narrowed down by Markus
Trippelsdorf.

Cc: Ulrich Drepper <drepper@redhat.com>
Cc: Markus Trippelsdorf <markus@trippelsdorf.de>
Cc: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Al Viro <viro@ftp.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agomm: double mark_page_accessed() in read_cache_page_async()
Peter Zijlstra [Sun, 8 Jul 2007 08:13:06 +0000 (01:13 -0700)]
mm: double mark_page_accessed() in read_cache_page_async()

Fix a post-2.6.21 regression.

read_cache_page_async() has two invocations of mark_page_accessed() which will
launch pages right onto the active list.

Remove the first one, keeping the latter one.  This avoids marking unwanted
pages active (in the retry loop).

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Acked-by: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoqd65xx: fix PIO mode selection
Bartlomiej Zolnierkiewicz [Sun, 8 Jul 2007 13:21:58 +0000 (15:21 +0200)]
qd65xx: fix PIO mode selection

PIO4 is a maximum PIO mode supported by a driver.  Using "255" as a max_mode
argument to ide_get_best_pio_mode() could result in wrong timings being used
by a driver (for "pio" equal to 5) or OOPS (for "pio" values > 5 && < 255).

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Reviewed-by: Alan Cox <alan@lxorguk.ukuu.org.uk>
16 years agosis5513: adding PCI-ID
Uwe Koziolek [Sun, 8 Jul 2007 13:21:58 +0000 (15:21 +0200)]
sis5513: adding PCI-ID

The SiS966 has one additional PCI-ID 1180.

If the chipset is using this PCI-ID, the primary channel is connected to the
first PATA-port. The secondary channel is connected to SATA-ports in IDE
emulation mode.  The legacy IO-ports are used.

The including of the PCI-ID into pata_sis is not sufficient, because the legacy
driver in drivers/ide is initialized before pata_sis.

Signed-off-by: Uwe Koziolek <uwe.koziolek@gmx.net>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
16 years agoDLM must depend on SYSFS
Adrian Bunk [Sat, 7 Jul 2007 04:14:02 +0000 (06:14 +0200)]
DLM must depend on SYSFS

The dependency of DLM on SYSFS got lost in
commit 6ed7257b46709e87d79ac2b6b819b7e0c9184998 resulting in the
following compile error with CONFIG_DLM=y, CONFIG_SYSFS=n:

<--  snip  -->

...
  LD      .tmp_vmlinux1
fs/built-in.o: In function `dlm_lockspace_init':
/home/bunk/linux/kernel-2.6/linux-2.6.22-rc6-mm1/fs/dlm/lockspace.c:231: undefined reference to `kernel_subsys'
fs/built-in.o: In function `configfs_init':
/home/bunk/linux/kernel-2.6/linux-2.6.22-rc6-mm1/fs/configfs/mount.c:143: undefined reference to `kernel_subsys'
make[1]: *** [.tmp_vmlinux1] Error 1

<--  snip  -->

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoClean up E7520/7320/7525 quirk printk.
Dave Jones [Fri, 6 Jul 2007 18:59:43 +0000 (14:59 -0400)]
Clean up E7520/7320/7525 quirk printk.

The printk level in this printk is bogus, as the previous printk
didn't have a terminating \n resulting in ..

Intel E7520/7320/7525 detected.<6>Disabling irq balancing and affinity

It also never printed a \n at all in the case where we didn't do
the quirk.

Change it to only make noise if it actually does something useful.

Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoinclude/linux/kallsyms.h must #include <linux/errno.h>
Adrian Bunk [Fri, 6 Jul 2007 22:54:09 +0000 (00:54 +0200)]
include/linux/kallsyms.h must #include <linux/errno.h>

This patch fixes the following 2.6.22 regression with CONFIG_KALLSYMS=n:

<--  snip  -->

...
  CC      arch/m32r/kernel/traps.o
In file included from /home/bunk/linux/kernel-2.6/linux-2.6.22-rc6-mm1/arch/m32r/kernel/traps.c:14:
/home/bunk/linux/kernel-2.6/linux-2.6.22-rc6-mm1/include/linux/kallsyms.h: In function 'lookup_symbol_name':
/home/bunk/linux/kernel-2.6/linux-2.6.22-rc6-mm1/include/linux/kallsyms.h:66: error: 'ERANGE' undeclared (first use in this function)
/home/bunk/linux/kernel-2.6/linux-2.6.22-rc6-mm1/include/linux/kallsyms.h:66: error: (Each undeclared identifier is reported only once
/home/bunk/linux/kernel-2.6/linux-2.6.22-rc6-mm1/include/linux/kallsyms.h:66: error: for each function it appears in.)
/home/bunk/linux/kernel-2.6/linux-2.6.22-rc6-mm1/include/linux/kallsyms.h: In function 'lookup_symbol_attrs':
/home/bunk/linux/kernel-2.6/linux-2.6.22-rc6-mm1/include/linux/kallsyms.h:71: error: 'ERANGE' undeclared (first use in this function)
make[2]: *** [arch/m32r/kernel/traps.o] Error 1

<--  snip  -->

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoFix use-after-free oops in Bluetooth HID.
David Woodhouse [Sat, 7 Jul 2007 18:58:39 +0000 (14:58 -0400)]
Fix use-after-free oops in Bluetooth HID.

When cleaning up HIDP sessions, we currently close the ACL connection
before deregistering the input device. Closing the ACL connection
schedules a workqueue to remove the associated objects from sysfs, but
the input device still refers to them -- and if the workqueue happens to
run before the input device removal, the kernel will oops when trying to
look up PHYSDEVPATH for the removed input device.

Fix this by deregistering the input device before closing the
connections.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoslub: remove useless EXPORT_SYMBOL
Christoph Lameter [Fri, 6 Jul 2007 18:17:32 +0000 (11:17 -0700)]
slub: remove useless EXPORT_SYMBOL

kmem_cache_open is static. EXPORT_SYMBOL was leftover from some earlier
time period where kmem_cache_open was usable outside of slub.

(Fixes powerpc build error)

Signed-off-by: Chrsitoph Lameter <clameter@sgi.com>
Cc: Johannes Berg <johannes@sipsolutions.net>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoMAINTAINERS new kernel janitors ml
maximilian attems [Fri, 6 Jul 2007 18:17:32 +0000 (11:17 -0700)]
MAINTAINERS new kernel janitors ml

davem kindly moved the list from osdl to vger.

Signed-of-by: maximilian attems <max@stro.at>
Cc: Alexey Dobriyan <adobriyan@gmail.com>
Cc: 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 agoGEODE: reboot fixup for geode machines with CS5536 boards
Andres Salomon [Fri, 6 Jul 2007 18:17:30 +0000 (11:17 -0700)]
GEODE: reboot fixup for geode machines with CS5536 boards

Writing to MSR 0x51400017 forces a hard reset on CS5536-based machines,
this has the reboot fixup do just that if such a board is detected.

Acked-by: Jordan Crouse <jordan.crouse@amd.com>
Signed-off-by: Andres Salomon <dilinger@debian.org>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoMerge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Fri, 6 Jul 2007 17:30:12 +0000 (10:30 -0700)]
Merge branch 'master' of /linux/kernel/git/davem/net-2.6

* 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
  [NETPOLL]: Fixups for 'fix soft lockup when removing module'
  [NET]: net/core/netevent.c should #include <net/netevent.h>
  [NETFILTER]: nf_conntrack_h323: add checking of out-of-range on choices' index values
  [NET] skbuff: remove export of static symbol
  SCTP: Add scope_id validation for link-local binds
  SCTP: Check to make sure file is valid before setting timeout
  SCTP: Fix thinko in sctp_copy_laddrs()

16 years agoMerge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
Linus Torvalds [Fri, 6 Jul 2007 17:29:33 +0000 (10:29 -0700)]
Merge branch 'upstream' of git://ftp.linux-mips.org/upstream-linus

* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
  [MIPS] Fix scheduling latency issue on 24K, 34K and 74K cores
  [MIPS] Add macros to encode processor revisions.
  [MIPS] RM7000: Enable ICACHE_REFILLS_WORKAROUND_WAR.
  [MIPS] SMTC: Fix cut'n'paste bug in Kconfig.debug
  [MIPS] Change libgcc-style functions from lib-y to obj-y
  [MIPS] Fix timer/performance interrupt detection
  [MIPS] AP/SP: Avoid triggering the 34K E125 performance issue
  [MIPS] 64-bit TO_PHYS_MASK macro for RM9000 processors

16 years agomm: fixup /proc/vmstat output
Peter Zijlstra [Fri, 6 Jul 2007 11:35:34 +0000 (13:35 +0200)]
mm: fixup /proc/vmstat output

Line up the vmstat_text with zone_stat_item

enum zone_stat_item {
/* First 128 byte cacheline (assuming 64 bit words) */
NR_FREE_PAGES,
NR_INACTIVE,
NR_ACTIVE,

We current have nr_active and nr_inactive reversed.

[ "OK with patch, though using initializers canbe handy to prevent such
   things in future:

static const char * const vmstat_text[] = {
[NR_FREE_PAGES] = "nr_free_pages",
..."
 - Alexey ]

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Acked-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agopotential compiler error, irqfunc caller sites update
Yoann Padioleau [Fri, 6 Jul 2007 09:39:56 +0000 (02:39 -0700)]
potential compiler error, irqfunc caller sites update

In 7d12e780e003f93433d49ce78cfedf4b4c52adc5 David Howells performed
this evolution:
 "IRQ: Maintain regs pointer globally rather than passing to IRQ handlers"

He correctly updated many of the function definitions that were using this
extra regs pointer parameter but forgot to update some caller sites of
those functions.  The reason the modifications was not properly done on all
drivers is that some drivers were rarely compiled because they are for
AMIGA, or that some code sites were inside #ifdefs where the option is not
set or inside #if 0.

Here is the semantic patch that found the occurences
and fixed the problem.

@ rule1 @
identifier fn;
identifier irq, dev_id;
typedef irqreturn_t;
@@

static irqreturn_t fn(int irq, void *dev_id)
{
   ...
}

@@
identifier rule1.fn;
expression E1, E2, E3;
@@

 fn(E1, E2
-   ,E3
   )

Signed-off-by: Yoann Padioleau <padator@wanadoo.fr>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Jeff Garzik <jeff@garzik.org>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoi386: es7000 build breakage fix
Vivek Goyal [Fri, 6 Jul 2007 09:39:55 +0000 (02:39 -0700)]
i386: es7000 build breakage fix

o Commit 1833d6bc72893265f22addd79cf52e6987496e0f broke the build if
  compiled with CONFIG_ES7000=y and CONFIG_X86_GENERICARCH=n

arch/i386/kernel/built-in.o(.init.text+0x4fa9): In function `acpi_parse_madt':
: undefined reference to `acpi_madt_oem_check'
arch/i386/kernel/built-in.o(.init.text+0x7406): In function `smp_read_mpc':
: undefined reference to `mps_oem_check'
arch/i386/kernel/built-in.o(.init.text+0x8990): In function
`connect_bsp_APIC':
: undefined reference to `enable_apic_mode'
make: *** [.tmp_vmlinux1] Error 1

o Fix the build issue. Provided the definitions of missing functions.

o Don't have ES7000 machine. Only compile tested.

Cc: Len Brown <lenb@kernel.org>
Cc: Natalie Protasevich <protasnb@gmail.com>
Cc: Roland Dreier <rolandd@cisco.com>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoPNP SMCf010 quirk: work around Toshiba Portege 4000 ACPI issues
Bjorn Helgaas [Fri, 6 Jul 2007 09:39:54 +0000 (02:39 -0700)]
PNP SMCf010 quirk: work around Toshiba Portege 4000 ACPI issues

When we enable the SMCf010 IR device, the Toshiba Portege 4000 BIOS claims
the device is working, but it really isn't configured correctly.  The BIOS
*will* configure it, but only if we call _SRS after (1) reversing the order
of the SIR and FIR I/O port regions and (2) changing the IRQ from
active-high to active-low.

This patch addresses the 2.6.22 regression:
    "no irda0 interface (2.6.21 was OK), smsc does not find chip"

I tested this on a Portege 4000.  The smsc-ircc2 driver correctly detects
the device, and "irattach irda0 -s && irdadump" shows transmitted and
received packets.

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Andrey Borzenkov <arvidjaar@mail.ru>
Cc: Samuel Ortiz <samuel@sortiz.org>
Cc: "Linus Walleij (LD/EAB)" <linus.walleij@ericsson.com>
Cc: Michal Piotrowski <michal.k.k.piotrowski@gmail.com>
Cc: Adam Belay <ambx1@neo.rr.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agofix logic error in ipc compat semctl()
Alexander Graf [Fri, 6 Jul 2007 09:39:53 +0000 (02:39 -0700)]
fix logic error in ipc compat semctl()

When calling a semctl(IPC_STAT) without IPC_64 the check if the memory is
unevaluated.  This patch fixes this.

Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agox86_64: fix headers_install
David Woodhouse [Fri, 6 Jul 2007 09:39:52 +0000 (02:39 -0700)]
x86_64: fix headers_install

A bug in headers_install for ARCH=x86_64 yields an asm/ directory full of
files all of which are using the same #ifdef guard, "__ASM_STUB_" with no
postfix.  So the second and later asm files #included in the same C file
(often through standard headers like ioctl.h) yields no symbols.

Strangeness with the Ubuntu 'tell me if I support something that's not
explcitly mentioned in POSIX, and I'll strip it out' shell, I believe.

We don't need the 'export' but we do need a semicolon at the end of the
FNAME line:

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Rob Landley <rob@landley.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoMTRR: Fix race causing set_mtrr to go into infinite loop
Loic Prylli [Fri, 6 Jul 2007 09:39:52 +0000 (02:39 -0700)]
MTRR: Fix race causing set_mtrr to go into infinite loop

Processors synchronization in set_mtrr requires the .gate field to be set
after .count field is properly initialized.  Without an explicit barrier,
the compiler was reordering those memory stores.  That was sometimes
causing a processor (in ipi_handler) to see the .gate change and decrement
.count before the latter is set by set_mtrr() (which then hangs in a
infinite loop with irqs disabled).

Signed-off-by: Loic Prylli <loic@myri.com>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoi386: fix regression, endless loop in ptrace singlestep over an int80
Jason Wessel [Fri, 6 Jul 2007 09:39:50 +0000 (02:39 -0700)]
i386: fix regression, endless loop in ptrace singlestep over an int80

The commit 635cf99a80f4ebee59d70eb64bb85ce829e4591f introduced a
regression.  Executing a ptrace single step after certain int80
accesses will infinitely loop and never advance the PC.

The TIF_SINGLESTEP check should be done on the return from the syscall
and not before it.

I loops on each single step on the pop right after the int80 which writes out
to the console.  At that point you can issue as many single steps as you want
and it will not advance any further.

The test case is below:

/* Test whether singlestep through an int80 syscall works.
 */
#define _GNU_SOURCE
#include <stdio.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/ptrace.h>
#include <sys/wait.h>
#include <sys/mman.h>
#include <asm/user.h>
#include <string.h>

static int child, status;
static struct user_regs_struct regs;

static void do_child()
{
char str[80] = "child: int80 test\n";

ptrace(PTRACE_TRACEME, 0, 0, 0);
kill(getpid(), SIGUSR1);
write(fileno(stdout),str,strlen(str));
asm ("int $0x80" : : "a" (20)); /* getpid */
}

static void do_parent()
{
unsigned long eip, expected = 0;
again:
waitpid(child, &status, 0);
if (WIFEXITED(status) || WIFSIGNALED(status))
return;

if (WIFSTOPPED(status)) {
ptrace(PTRACE_GETREGS, child, 0, &regs);
eip = regs.eip;
if (expected)
fprintf(stderr, "child stop @ %08lx, expected %08lx %s\n",
eip, expected,
eip == expected ? "" : " <== ERROR");

if (*(unsigned short *)eip == 0x80cd) {
fprintf(stderr, "int 0x80 at %08x\n", (unsigned int)eip);
expected = eip + 2;
} else
expected = 0;

ptrace(PTRACE_SINGLESTEP, child, NULL, NULL);
}
goto again;
}

int main(int argc, char * const argv[])
{
child = fork();
if (child)
do_parent();
else
do_child();
return 0;
}

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: <stable@kernel.org>
Cc: Chuck Ebbert <76306.1226@compuserve.com>
Acked-by: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoFix elf_core_dump() when writing arch specific notes (spu coredumps)
Michael Ellerman [Fri, 6 Jul 2007 09:39:49 +0000 (02:39 -0700)]
Fix elf_core_dump() when writing arch specific notes (spu coredumps)

elf_core_dump() supports dumping arch specific ELF notes, via the #define
ELF_CORE_WRITE_EXTRA_NOTES.  Currently the only user of this is the powerpc
spu coredump code.

There is a bug in the handling of foffset WRT the arch notes, which causes
us to erroneously increment foffset by the size of the arch notes, leaving
a block of zeroes in the file, and causing all subsequent data in the file
to be at <supposed position> + <arch note size>.  eg:

  LOAD  0x050000 0x00100000 0x00000000 0x20000 0x20000 R E 0x10000

Tells us we should have a chunk of data at 0x50000.  The truth is the data
is at 0x90dbc = 0x50000 + 0x40dbc (the size of the arch notes).

This bug prevents gdb from reading the core file correctly.

The simplest fix is to simply remember the size of the arch notes, and add
it to foffset after we've written the arch notes.  The only drawback is
that if the arch code doesn't write as many bytes as it said it would, we
end up with a broken core dump again.  For now I think that's a reasonable
requirement.

Tested on a Cell blade, gdb no longer complains about the core file being
bogus.

While I'm here I should point out that the spu coredump code does not work
if we're dumping to a pipe - we'll have to wait for 23 to fix that.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years ago[MIPS] Fix scheduling latency issue on 24K, 34K and 74K cores
Ralf Baechle [Wed, 20 Jun 2007 23:22:34 +0000 (00:22 +0100)]
[MIPS] Fix scheduling latency issue on 24K, 34K and 74K cores

The idle loop goes to sleep using the WAIT instruction if !need_resched().
This has is suffering from from a race condition that if if just after
need_resched has returned 0 an interrupt might set TIF_NEED_RESCHED but
we've just completed the test so go to sleep anyway.  This would be
trivial to fix by just disabling interrupts during that sequence as in:

        local_irq_disable();
        if (!need_resched())
                __asm__("wait");
        local_irq_enable();

but the processor architecture leaves it undefined if a processor calling
WAIT with interrupts disabled will ever restart its pipeline and indeed
some processors have made use of the freedom provided by the architecture
definition.  This has been resolved and the Config7.WII bit indicates that
the use of WAIT is safe on 24K, 24KE and 34K cores.  It also is safe on
74K starting revision 2.1.0 so enable the use of WAIT with interrupts
disabled for 74K based on a c0_prid of at least that.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
16 years ago[MIPS] Add macros to encode processor revisions.
Ralf Baechle [Fri, 6 Jul 2007 13:40:05 +0000 (14:40 +0100)]
[MIPS] Add macros to encode processor revisions.

Older processors used to encode processor version and revision in two
4-bit bitfields, the 4K seems to simply count up and even newer MTI cores
have switched to use the 8-bits as 3:3:2 bitfield with the last field as
the patch number.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
16 years ago[MIPS] RM7000: Enable ICACHE_REFILLS_WORKAROUND_WAR.
Ralf Baechle [Thu, 5 Jul 2007 07:14:21 +0000 (08:14 +0100)]
[MIPS] RM7000: Enable ICACHE_REFILLS_WORKAROUND_WAR.

The RM7000 processors and the E9000 cores have a bug (though PMC-Sierra
opposes it being called that) where invalid instructions in the same
I-cache line worth of instructions being fetched may case spurious
exceptions.

The workaround for this was only enabled for E9000 cores; enable it also
for all RM7000-based platforms.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>