safe/jmp/linux-2.6
15 years agoatmel-mci: Driver for Atmel on-chip MMC controllers
Haavard Skinnemoen [Mon, 30 Jun 2008 16:35:03 +0000 (18:35 +0200)]
atmel-mci: Driver for Atmel on-chip MMC controllers

This is a driver for the MMC controller on the AP7000 chips from
Atmel. It should in theory work on AT91 systems too with some
tweaking, but since the DMA interface is quite different, it's not
entirely clear if it's worth merging this with the at91_mci driver.

This driver has been around for a while in BSPs and kernel sources
provided by Atmel, but this particular version uses the generic DMA
Engine framework (with the slave extensions) instead of an
avr32-only DMA controller framework.

This driver can also use PIO transfers when no DMA channels are
available, and for transfers where using DMA may be difficult or
impractical for some reason (e.g. the DMA setup overhead is usually
not worth it for very short transfers, and badly aligned buffers or
lengths are difficult to handle.)

Currently, the driver only support PIO transfers. DMA support has been
split out to a separate patch to hopefully make it easier to review.

The driver has been tested using mmc-block and ext3fs on several SD,
SDHC and MMC+ cards. Reads and writes work fine, with read transfer
rates up to 3.5 MiB/s on fast cards with debugging disabled.

The driver has also been tested using the mmc_test module on the same
cards. All tests except 7, 9, 15 and 17 succeed. The first two are
unsupported by all the cards I have, so I don't know if the driver
handles this correctly. The last two fail because the hardware flags a
Data CRC Error instead of a Data Timeout error. I'm not sure how to deal
with that.

Documentation for this controller can be found in many data sheets from
Atmel, including the AT32AP7000 data sheet which can be found here:

http://www.atmel.com/dyn/products/datasheets.asp?family_id=682

Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agommc: fix sdio_io sparse errors
Tomas Winkler [Mon, 30 Jun 2008 07:50:24 +0000 (10:50 +0300)]
mmc: fix sdio_io sparse errors

This patch fixes sdio_io sparse errors.
This fix changes signature of API functions,
changing
unsigned char -> u8
unsigned short -> u16
unsigned long -> u32 - this was probably a bug in 64 bit platforms

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agommc: wbsd.c fix shadowing of 'dma' variable
Tomas Winkler [Mon, 30 Jun 2008 07:50:23 +0000 (10:50 +0300)]
mmc: wbsd.c fix shadowing of 'dma' variable

This patch fix warning :shadowing dma variable
and made use of module_param_named instead of module_param

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoMMC: S3C24XX: Refuse incorrectly aligned transfers
Ben Dooks [Mon, 30 Jun 2008 21:40:39 +0000 (22:40 +0100)]
MMC: S3C24XX: Refuse incorrectly aligned transfers

The hardware does not support any multi-block transfers
with an block-size that is not 32bit aligned. Also the driver
itself does not support single block non-32bit transfers
either.

Ensure that the s3cmci_setup_data() returns the appropriate
error if we encounter this.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoMMC: S3C24XX: Add maintainer entry
Ben Dooks [Mon, 30 Jun 2008 21:40:38 +0000 (22:40 +0100)]
MMC: S3C24XX: Add maintainer entry

Add Ben Dooks as S3C24XX SD/MMC driver maintainer.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoMMC: S3C24XX: Update error debugging.
Ben Dooks [Mon, 30 Jun 2008 21:40:37 +0000 (22:40 +0100)]
MMC: S3C24XX: Update error debugging.

Add better debugging to show where errors are being
generated, as some error codes can come from several
different code paths.

Also fix the error return path from s3cmci_setup_data()
to return the error it returned to the request.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoMMC: S3C24XX: Add media presence test to request handling.
Ben Dooks [Mon, 30 Jun 2008 21:40:36 +0000 (22:40 +0100)]
MMC: S3C24XX: Add media presence test to request handling.

Ensure that we have physical media present before attempting to
send a request to a card. This ensures that we do not get flooded
by errors from commands that can never be completed timing out.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoMMC: S3C24XX: Fix use of msecs where jiffies are needed
Ben Dooks [Mon, 30 Jun 2008 21:40:35 +0000 (22:40 +0100)]
MMC: S3C24XX: Fix use of msecs where jiffies are needed

mmc_detect_change() takes jiffies, not msecs. Convert the
previous value of msecs into jiffies before calling.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoMMC: S3C24XX: Add MODULE_ALIAS() entries for the platform devices
Ben Dooks [Mon, 30 Jun 2008 21:40:34 +0000 (22:40 +0100)]
MMC: S3C24XX: Add MODULE_ALIAS() entries for the platform devices

Add MODULE_ALIAS() declerations for all the supported platform
devices for this driver.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoMMC: S3C24XX: Fix s3c2410_dma_request() return code check.
Ben Dooks [Mon, 30 Jun 2008 21:40:33 +0000 (22:40 +0100)]
MMC: S3C24XX: Fix s3c2410_dma_request() return code check.

The driver should be checking for a negative error code from
s3c2410_dma_request(), not non-zero. Newer kernels now return
the DMA channel number that was allocated by the request.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoMMC: S3C24XX: Allow card-detect on non-IRQ capable pin
Ben Dooks [Mon, 30 Jun 2008 21:40:32 +0000 (22:40 +0100)]
MMC: S3C24XX: Allow card-detect on non-IRQ capable pin

Add support to the S3C24XX MMC driver to have the card detect be on
a pin that is not IRQ capable.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoMMC: S3C24XX: Ensure host->mrq->data is valid
Ben Dooks [Mon, 30 Jun 2008 21:40:31 +0000 (22:40 +0100)]
MMC: S3C24XX: Ensure host->mrq->data is valid

Fix a crash if host->mrq->data is NULL on ending a transfer.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoMMC: S3C24XX: Add support to invert write protect line
Ben Dooks [Mon, 30 Jun 2008 21:40:30 +0000 (22:40 +0100)]
MMC: S3C24XX: Add support to invert write protect line

Support for inverting the sense of the MMC driver's write
protect detection line.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoMMC: S3C24XX: Add platform data for MMC/SD driver
Ben Dooks [Mon, 30 Jun 2008 21:40:29 +0000 (22:40 +0100)]
MMC: S3C24XX: Add platform data for MMC/SD driver

This patch adds platform data support to the s3mci driver.  This allows
flexible board-specific configuration of set_power, card detect and read only
pins.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoMMC: Fix S3C24XX IRQ enable during PIO transfers
Roman Moracik [Mon, 30 Jun 2008 21:40:28 +0000 (22:40 +0100)]
MMC: Fix S3C24XX IRQ enable during PIO transfers

Fix Bug #677 - I/O errors on heavy microSD writes for 2.6.22.x.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoFix the request finalisation by ensuring the controller
Thomas Kleffel [Mon, 30 Jun 2008 21:40:27 +0000 (22:40 +0100)]
Fix the request finalisation by ensuring the controller
is stopped.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Harald Welte <laforge@openmoko.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoMMC: DMA free fix for S3C24XX SD/MMC driver
Harald Welte [Mon, 30 Jun 2008 21:40:26 +0000 (22:40 +0100)]
MMC: DMA free fix for S3C24XX SD/MMC driver

Bugfix to ensure DMA channel allocated is freed on exit.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoMMC: S3C24XX MMC/SD driver write fixes
Harald Welte [Mon, 30 Jun 2008 21:40:25 +0000 (22:40 +0100)]
MMC: S3C24XX MMC/SD driver write fixes

This patch is a workaround of some S3C2410 MMC chip bug

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoMMC: S3C24XX MMC/SD driver.
Thomas Kleffel [Mon, 30 Jun 2008 21:40:24 +0000 (22:40 +0100)]
MMC: S3C24XX MMC/SD driver.

This is the latest S3C MMC/SD driver by Thomas Kleffel
with cleanups as suggested by AKPM done by Ben Dooks.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Thomas Kleffel <tk@maintech.de>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agosdhci: graceful handling of bad addresses
Pierre Ossman [Mon, 30 Jun 2008 19:15:49 +0000 (21:15 +0200)]
sdhci: graceful handling of bad addresses

Be a bit more robust and fall back to PIO if someone is feeding us
bogus addresses.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agommc_test: cleanup
Pierre Ossman [Mon, 30 Jun 2008 07:09:27 +0000 (09:09 +0200)]
mmc_test: cleanup

Clean up and reorganise the mmc_test driver so that it (hopefully)
is easier to extend with more complex tests.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agommc_block: wait for card even on failures
Pierre Ossman [Sun, 29 Jun 2008 10:19:47 +0000 (12:19 +0200)]
mmc_block: wait for card even on failures

Many failures are non-permanent, but the card might need some time to
finish what it is doing before becoming responsive again. Make sure we
wait for it to finish programming before dealing with the error.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agosdhci: scatter-gather (ADMA) support
Pierre Ossman [Sat, 28 Jun 2008 16:28:51 +0000 (18:28 +0200)]
sdhci: scatter-gather (ADMA) support

Add support for the scatter-gather DMA mode present on newer controllers.
As the mode requires 32-bit alignment, non-aligned chunks are handled by
using a bounce buffer.

Also add some new quirks to handle controllers that have bugs in the
ADMA engine.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agosdhci-pci: don't penalize newer jmicron chips
Pierre Ossman [Sat, 28 Jun 2008 16:21:41 +0000 (18:21 +0200)]
sdhci-pci: don't penalize newer jmicron chips

The upcoming JMicron chips will have solved all the currently known
bugs, so don't penalize them for older problems.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agommc_test: only bind to supported cards
Pierre Ossman [Sat, 28 Jun 2008 15:51:27 +0000 (17:51 +0200)]
mmc_test: only bind to supported cards

We can only perform the tests on MMC and SD cards, so avoid binding
to any other type.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agosdio: clean up handling of byte mode transfer size
Pierre Ossman [Sat, 28 Jun 2008 11:22:40 +0000 (13:22 +0200)]
sdio: clean up handling of byte mode transfer size

Make sure that the maximum size for a byte mode transfer is identical
in all places. Also tweak the transfer helper so that a single byte
mode transfer is preferred over (possibly multiple) block mode
request(s).

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agommc,sdio: helper function for transfer padding
Pierre Ossman [Sat, 28 Jun 2008 10:52:45 +0000 (12:52 +0200)]
mmc,sdio: helper function for transfer padding

There are a lot of crappy controllers out there that cannot handle
all the request sizes that the MMC/SD/SDIO specifications require.
In case the card driver can pad the data to overcome the problems,
this commit adds a helper that calculates how much that padding
should be.

A corresponding helper is also added for SDIO, but it can also deal
with all the complexities of splitting up a large transfer efficiently.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoau1xmmc: remove custom carddetect poll implementation.
Manuel Lauss [Fri, 27 Jun 2008 16:25:18 +0000 (18:25 +0200)]
au1xmmc: remove custom carddetect poll implementation.

The MMC core provides a carddetect poll feature, time to
remove the driver's own implementation of it.

Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoau1xmmc: new maintainer.
Manuel Lauss [Mon, 9 Jun 2008 06:40:35 +0000 (08:40 +0200)]
au1xmmc: new maintainer.

Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoau1xmmc: abort requests early if no card is present.
Manuel Lauss [Mon, 9 Jun 2008 06:39:11 +0000 (08:39 +0200)]
au1xmmc: abort requests early if no card is present.

Don't process an MMC request if no card is present.

Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoau1xmmc: codingstyle tidying.
Manuel Lauss [Mon, 9 Jun 2008 06:38:35 +0000 (08:38 +0200)]
au1xmmc: codingstyle tidying.

Clean up the codebase, no functional changes.
- merge the au1xmmc.h header contents into the driver file,
- indentation, spelling and style fixes.

Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoau1xmmc: SDIO IRQ support.
Manuel Lauss [Mon, 9 Jun 2008 06:38:03 +0000 (08:38 +0200)]
au1xmmc: SDIO IRQ support.

Wire up the SD controllers' SDIO IRQ capability.

Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoau1xmmc: enable 4 bit transfer mode
Manuel Lauss [Mon, 9 Jun 2008 06:37:33 +0000 (08:37 +0200)]
au1xmmc: enable 4 bit transfer mode

Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoau1xmmc: remove db1200 board code, rewrite probe.
Manuel Lauss [Mon, 9 Jun 2008 06:36:13 +0000 (08:36 +0200)]
au1xmmc: remove db1200 board code, rewrite probe.

Remove the DB1200 board-specific functions (card present, read-only,
activity LED methods) and instead add platform data which is passed
to the driver.  This also allows for platforms to implement other
carddetect schemes (e.g. dedicated irq) without having to pollute the
driver code.  The poll timer (used for pb1200) is kept for compatibility.

With the board-specific stuff gone, the driver's ->probe() code can be
cleaned up considerably.

Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoat91_mci: Fix byte mode transitions.
Ville Syrjala [Mon, 9 Jun 2008 19:06:45 +0000 (22:06 +0300)]
at91_mci: Fix byte mode transitions.

The byte mode support fails to clear the byte mode bit in the command
register, possibly leaving byte mode enabled with the counters programmed
in non-byte mode.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoat91_mci: Cover more AT91RM9200 and AT91SAM9261 errata.
Ville Syrjala [Mon, 9 Jun 2008 19:06:44 +0000 (22:06 +0300)]
at91_mci: Cover more AT91RM9200 and AT91SAM9261 errata.

According to the documentation the AT91SAM9261 MCI shares the block size
limitations of the AT91RM9200 MCI. Also the errata documentation for
AT91RM9200 and AT91SAM9261 state that stream commands are not supported.
This has not been tested on actual hardware.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoat91_mci: AT91SAM9260/9263 12 byte write erratum (v2)
Ville Syrjala [Sat, 14 Jun 2008 17:27:20 +0000 (20:27 +0300)]
at91_mci: AT91SAM9260/9263 12 byte write erratum (v2)

AT91SAM926[0/3] PDC must write at least 12 bytes. The code compiles and runs
but the actual condition for this erratum did not trigger in my tests so it's
unclear if it actually works as intended.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoat91_mci: manage cmd error and data error independently
Nicolas Ferre [Tue, 10 Jun 2008 09:27:29 +0000 (11:27 +0200)]
at91_mci: manage cmd error and data error independently

In at91_mci_completed_command() function, this patch distinguishes
command error and data error. It reports it in the corresponding
error field.

Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agommc: at91_mci: do not read irq status twice as it will forget some errors
Nicolas Ferre [Fri, 30 May 2008 12:28:45 +0000 (14:28 +0200)]
mmc: at91_mci: do not read irq status twice as it will forget some errors

Reading AT91_MCI_SR again at the end of transfer can corrupt the
error reporting. Some fields in the SR register are read-and-clear.

Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agommc: at91_mci: add sdio irq management
Eric Benard [Fri, 30 May 2008 12:26:05 +0000 (14:26 +0200)]
mmc: at91_mci: add sdio irq management

Enable SDIO interrupt handling.

Signed-off-by: Eric Benard <ebenard@free.fr>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agommc: at91_mci: add multiwrite switch
Nicolas Ferre [Fri, 30 May 2008 12:08:56 +0000 (14:08 +0200)]
mmc: at91_mci: add multiwrite switch

at91_mci is capable of multiwrite. Enable it before it disappears.

Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agommc: at91_mci: update bytes_xfered value once xfer done
Nicolas Ferre [Fri, 30 May 2008 12:18:57 +0000 (14:18 +0200)]
mmc: at91_mci: update bytes_xfered value once xfer done

Modify bytes_xfered value after a write.

That will report, as accurately as possible, the amount of
sectors that are effectively written.

This update introduces the check of the busy signal given by
the card.

Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agommc: at91_mci: avoid timeouts
Marc Pignat [Fri, 30 May 2008 12:07:47 +0000 (14:07 +0200)]
mmc: at91_mci: avoid timeouts

The at91 mci controller internal state machine seems to often crash. This can
be fixed by resetting the controller after each command for at91rm9200 and by
setting the MCI_BLKR register on at91sam926*.

Signed-off-by: Marc Pignat <marc.pignat@hevs.ch>
Signed-off-by: Hans J Koch <hjk@linutronix.de>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agommc: at91_mci: show timeouts
Marc Pignat [Fri, 30 May 2008 12:06:32 +0000 (14:06 +0200)]
mmc: at91_mci: show timeouts

Detect command timeout (or mci controller hangs).

Signed-off-by: Marc Pignat <marc.pignat@hevs.ch>
Signed-off-by: Hans J Koch <hjk@linutronix.de>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agommc: at91_mci: support for block size not modulo 4
Marc Pignat [Fri, 30 May 2008 12:05:24 +0000 (14:05 +0200)]
mmc: at91_mci: support for block size not modulo 4

Implement transfer with size not modulo 4 for at91sam9*. Please note that the
at91rm9200 simply can't handle this.

Signed-off-by: Marc Pignat <marc.pignat@hevs.ch>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoMMC: Trivial comment cleanup
Deepak Saxena [Tue, 17 Jun 2008 02:20:57 +0000 (19:20 -0700)]
MMC: Trivial comment cleanup

Make the variable name in the comments match the actual name
of the variable.

Signed-off-by: Deepak Saxena <dsaxena@laptop.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agommc: change .get_ro() callback semantics
Anton Vorontsov [Tue, 17 Jun 2008 14:17:39 +0000 (18:17 +0400)]
mmc: change .get_ro() callback semantics

Now get_ro() callback must return 0/1 values for its logical states, and
negative errno values in case of error. If particular host instance doesn't
support RO/WP switch, it should return -ENOSYS.

This patch changes some hosts in two ways:

1. Now functions should be smart to not return negative values in
   "RO asserted" case (particularly gpio_ calls could return negative
   values for the outermost GPIOs).

   Also, board code usually passes get_ro() callbacks that directly return
   gpioreg & bit result, so at91_mci, imxmmc, pxamci and mmc_spi's get_ro()
   handlers need take special care when returning platform's values to the
   mmc core.

2. In case of host instance didn't implement get_ro() callback, it should
   really return -ENOSYS and let the mmc core decide what to do about it
   (mmc core thinks the same way as the hosts, so it isn't functional
   change).

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agommc_spi: add support for card-detection polling
Anton Vorontsov [Tue, 17 Jun 2008 14:17:21 +0000 (18:17 +0400)]
mmc_spi: add support for card-detection polling

This patch adds new platform data variable "caps", so platforms
could pass theirs capabilities into MMC core (for example, platforms
without interrupt on the CD line will most probably want to pass
MMC_CAP_NEEDS_POLL).

New platform get_cd() callback provided to optimize polling.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agommc: add support for card-detection polling
Anton Vorontsov [Tue, 17 Jun 2008 14:17:15 +0000 (18:17 +0400)]
mmc: add support for card-detection polling

Some hosts (and boards that use mmc_spi) do not use interrupts on the CD
line, so they can't trigger mmc_detect_change. We want to poll the card
and see if there was a change. 1 second poll interval seems resonable.

This patch also implements .get_cd() host operation, that could be used
by the hosts that are able to report card-detect status without need to
talk MMC.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agoinclude/linux/mmc/mmc.h: remove CVS tags
Adrian Bunk [Mon, 19 May 2008 21:57:27 +0000 (00:57 +0300)]
include/linux/mmc/mmc.h: remove CVS tags

This patch removes a CVS tag that wasn't updated for a long time.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agosdhci-pci: unaligned data with ricoh controllers
Pierre Ossman [Wed, 28 May 2008 07:54:50 +0000 (09:54 +0200)]
sdhci-pci: unaligned data with ricoh controllers

The Ricoh controllers cannot handle unaligned data blocks.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agommc_test: add test case control
Pierre Ossman [Sat, 24 May 2008 20:36:31 +0000 (22:36 +0200)]
mmc_test: add test case control

Add the ability to run just a single test case by writing the test
case number into the sysfs "test" file.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agosdhci: handle hot-remove
Pierre Ossman [Wed, 16 Apr 2008 17:13:13 +0000 (19:13 +0200)]
sdhci: handle hot-remove

Gracefully handle when the device is suddenly removed. Do a test read
and avoid any further access if that read returns -1.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agosdhci: support JMicron secondary interface
Pierre Ossman [Fri, 4 Apr 2008 17:36:59 +0000 (19:36 +0200)]
sdhci: support JMicron secondary interface

JMicron chips sometimes have two interfaces to work around limitations
in Microsoft's sdhci driver. This patch allows us to use either interface.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agosdhci: toggle JMicron PMOS setting
Pierre Ossman [Mon, 24 Mar 2008 12:09:09 +0000 (13:09 +0100)]
sdhci: toggle JMicron PMOS setting

Some of the JMicron chips requires us to manually enable the power
output stages of the chip. Add the necessary hooks and functions to
manage this.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agosdhci: make workaround for timeout bug more general
Pierre Ossman [Fri, 4 Jul 2008 22:25:15 +0000 (00:25 +0200)]
sdhci: make workaround for timeout bug more general

Give the quirk for broken timeout handling a better chance of handling
more controllers by simply classifying the system as broken and setting
a fixed value.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agosdhci: more complex quirks handling
Pierre Ossman [Sun, 23 Mar 2008 18:33:23 +0000 (19:33 +0100)]
sdhci: more complex quirks handling

Extend the quirks handling in the PCI driver to be able to have
callbacks and not just flags.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agosdhci: remove forced dma quirks
Pierre Ossman [Sat, 22 Mar 2008 21:05:40 +0000 (22:05 +0100)]
sdhci: remove forced dma quirks

Remove the quirk to force DMA on the Ricoh and TI controllers as it is
no longer needed. The only bug they have is that they use an incorrect
PCI interface value, and that is not respected anymore.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agosdhci: move pci stuff to separate module
Pierre Ossman [Tue, 18 Mar 2008 16:35:49 +0000 (17:35 +0100)]
sdhci: move pci stuff to separate module

The SDHCI interface is not PCI specific, yet the Linux driver was
intimitely connected to the PCI bus. This patch properly separates
the PCI specific portion from the bus independent code.

This patch is based on work by Ben Dooks but he did not have time
to complete it.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agosdhci: don't check block count for progress
Pierre Ossman [Fri, 18 Apr 2008 18:41:49 +0000 (20:41 +0200)]
sdhci: don't check block count for progress

The specification is insufficiently strict when it comes to how the
hardware should update the block count register, making it useless
for checking transfer progress.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
15 years agofirmware: Correct dependency on CONFIG_EXTRA_FIRMWARE_DIR
David Woodhouse [Tue, 15 Jul 2008 00:50:24 +0000 (17:50 -0700)]
firmware: Correct dependency on CONFIG_EXTRA_FIRMWARE_DIR

When CONFIG_EXTRA_FIRMWARE_DIR gets changed, the filename in the .S file
(which uses .incbin to include the binary) needs to change. When we
renamed the BUILTIN_FIRMWARE_DIR option to EXTRA_FIRMWARE_DIR, we forgot
to update the manual dependency in firmware/Makefile, so it was
depending on a non-existent file in include/config/

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoMerge branch 'for-2.6.27' of git://git.infradead.org/users/dwmw2/firmware-2.6
Linus Torvalds [Mon, 14 Jul 2008 23:54:07 +0000 (16:54 -0700)]
Merge branch 'for-2.6.27' of git://git.infradead.org/users/dwmw2/firmware-2.6

* 'for-2.6.27' of git://git.infradead.org/users/dwmw2/firmware-2.6: (64 commits)
  firmware: convert sb16_csp driver to use firmware loader exclusively
  dsp56k: use request_firmware
  edgeport-ti: use request_firmware()
  edgeport: use request_firmware()
  vicam: use request_firmware()
  dabusb: use request_firmware()
  cpia2: use request_firmware()
  ip2: use request_firmware()
  firmware: convert Ambassador ATM driver to request_firmware()
  whiteheat: use request_firmware()
  ti_usb_3410_5052: use request_firmware()
  emi62: use request_firmware()
  emi26: use request_firmware()
  keyspan_pda: use request_firmware()
  keyspan: use request_firmware()
  ttusb-budget: use request_firmware()
  kaweth: use request_firmware()
  smctr: use request_firmware()
  firmware: convert ymfpci driver to use firmware loader exclusively
  firmware: convert maestro3 driver to use firmware loader exclusively
  ...

Fix up trivial conflicts with BKL removal in drivers/char/dsp56k.c and
drivers/char/ip2/ip2main.c manually.

15 years agoMerge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Mon, 14 Jul 2008 23:06:58 +0000 (16:06 -0700)]
Merge branch 'for-linus' of /home/rmk/linux-2.6-arm

* 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm: (241 commits)
  [ARM] 5171/1: ep93xx: fix compilation of modules using clocks
  [ARM] 5133/2: at91sam9g20 defconfig file
  [ARM] 5130/4: Support for the at91sam9g20
  [ARM] 5160/1: IOP3XX: gpio/gpiolib support
  [ARM] at91: Fix NAND FLASH timings for at91sam9x evaluation kits.
  [ARM] 5084/1: zylonite: Register AC97 device
  [ARM] 5085/2: PXA: Move AC97 over to the new central device declaration model
  [ARM] 5120/1: pxa: correct platform driver names for PXA25x and PXA27x UDC drivers
  [ARM] 5147/1: pxaficp_ir: drop pxa_gpio_mode calls, as pin setting
  [ARM] 5145/1: PXA2xx: provide api to control IrDA pins state
  [ARM] 5144/1: pxaficp_ir: cleanup includes
  [ARM] pxa: remove pxa_set_cken()
  [ARM] pxa: allow clk aliases
  [ARM] Feroceon: don't disable BPU on boot
  [ARM] Orion: LED support for HP mv2120
  [ARM] Orion: add RD88F5181L-FXO support
  [ARM] Orion: add RD88F5181L-GE support
  [ARM] Orion: add Netgear WNR854T support
  [ARM] s3c2410_defconfig: update for current build
  [ARM] Acer n30: Minor style and indentation fixes.
  ...

15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
David Woodhouse [Mon, 14 Jul 2008 22:49:04 +0000 (15:49 -0700)]
Merge git://git./linux/kernel/git/torvalds/linux-2.6.git

Conflicts:

sound/pci/Kconfig

15 years ago[ARM] Merge most of the PXA work for initial merge
Russell King [Mon, 14 Jul 2008 20:28:25 +0000 (21:28 +0100)]
[ARM] Merge most of the PXA work for initial merge

This includes PXA work up to the SPI changes for the initial merge,
since e172274ccc55d20536fbdceb6131f38e288541e0 depends on the SPI
tree being merged.

Conflicts:

arch/arm/configs/em_x270_defconfig
arch/arm/configs/xm_x270_defconfig

15 years agoMerge branch 'core/softirq' of git://git.kernel.org/pub/scm/linux/kernel/git/tip...
Linus Torvalds [Mon, 14 Jul 2008 22:28:42 +0000 (15:28 -0700)]
Merge branch 'core/softirq' of git://git./linux/kernel/git/tip/linux-2.6-tip

* 'core/softirq' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  softirq: remove irqs_disabled warning from local_bh_enable
  softirq: remove initialization of static per-cpu variable
  Remove argument from open_softirq which is always NULL

15 years agoMerge branch 'core/rodata' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux...
Linus Torvalds [Mon, 14 Jul 2008 22:28:10 +0000 (15:28 -0700)]
Merge branch 'core/rodata' of git://git./linux/kernel/git/tip/linux-2.6-tip

* 'core/rodata' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  move BUG_TABLE into RODATA

15 years agoMerge branch 'core/printk' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux...
Linus Torvalds [Mon, 14 Jul 2008 22:27:43 +0000 (15:27 -0700)]
Merge branch 'core/printk' of git://git./linux/kernel/git/tip/linux-2.6-tip

* 'core/printk' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  x86, generic: mark early_printk as asmlinkage
  printk: export console_drivers
  printk: remember the message level for multi-line output
  printk: refactor processing of line severity tokens
  printk: don't prefer unsuited consoles on registration
  printk: clean up recursion check related static variables
  namespacecheck: more kernel/printk.c fixes
  namespacecheck: fix kernel printk.c

15 years agox86: MMIOTRACE should not default to on
Linus Torvalds [Mon, 14 Jul 2008 22:03:25 +0000 (15:03 -0700)]
x86: MMIOTRACE should not default to on

Even the help-text makes it clear that normal people shouldn't enable
it.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoMerge branch 'core/locking' of git://git.kernel.org/pub/scm/linux/kernel/git/tip...
Linus Torvalds [Mon, 14 Jul 2008 21:55:13 +0000 (14:55 -0700)]
Merge branch 'core/locking' of git://git./linux/kernel/git/tip/linux-2.6-tip

* 'core/locking' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  lockdep: fix kernel/fork.c warning
  lockdep: fix ftrace irq tracing false positive
  lockdep: remove duplicate definition of STATIC_LOCKDEP_MAP_INIT
  lockdep: add lock_class information to lock_chain and output it
  lockdep: add lock_class information to lock_chain and output it
  lockdep: output lock_class key instead of address for forward dependency output
  __mutex_lock_common: use signal_pending_state()
  mutex-debug: check mutex magic before owner

Fixed up conflict in kernel/fork.c manually

15 years agoMerge branch 'sched/new-API-sched_setscheduler' of git://git.kernel.org/pub/scm/linux...
Linus Torvalds [Mon, 14 Jul 2008 21:50:49 +0000 (14:50 -0700)]
Merge branch 'sched/new-API-sched_setscheduler' of git://git./linux/kernel/git/tip/linux-2.6-tip

* 'sched/new-API-sched_setscheduler' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  sched: add new API sched_setscheduler_nocheck: add a flag to control access checks

15 years agoMerge branch 'tracing/for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
Linus Torvalds [Mon, 14 Jul 2008 21:49:54 +0000 (14:49 -0700)]
Merge branch 'tracing/for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip

* 'tracing/for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (228 commits)
  ftrace: build fix for ftraced_suspend
  ftrace: separate out the function enabled variable
  ftrace: add ftrace_kill_atomic
  ftrace: use current CPU for function startup
  ftrace: start wakeup tracing after setting function tracer
  ftrace: check proper config for preempt type
  ftrace: trace schedule
  ftrace: define function trace nop
  ftrace: move sched_switch enable after markers
  ftrace: prevent ftrace modifications while being kprobe'd, v2
  fix "ftrace: store mcount address in rec->ip"
  mmiotrace broken in linux-next (8-bit writes only)
  ftrace: avoid modifying kprobe'd records
  ftrace: freeze kprobe'd records
  kprobes: enable clean usage of get_kprobe
  ftrace: store mcount address in rec->ip
  ftrace: build fix with gcc 4.3
  namespacecheck: fixes
  ftrace: fix "notrace" filtering priority
  ftrace: fix printout
  ...

15 years agoMerge branch 'bkl-removal' of git://git.lwn.net/linux-2.6
Linus Torvalds [Mon, 14 Jul 2008 21:48:31 +0000 (14:48 -0700)]
Merge branch 'bkl-removal' of git://git.lwn.net/linux-2.6

* 'bkl-removal' of git://git.lwn.net/linux-2.6: (146 commits)
  IB/umad: BKL is not needed for ib_umad_open()
  IB/uverbs: BKL is not needed for ib_uverbs_open()
  bf561-coreb: BKL unneeded for open()
  Call fasync() functions without the BKL
  snd/PCM: fasync BKL pushdown
  ipmi: fasync BKL pushdown
  ecryptfs: fasync BKL pushdown
  Bluetooth VHCI: fasync BKL pushdown
  tty_io: fasync BKL pushdown
  tun: fasync BKL pushdown
  i2o: fasync BKL pushdown
  mpt: fasync BKL pushdown
  Remove BKL from remote_llseek v2
  Make FAT users happier by not deadlocking
  x86-mce: BKL pushdown
  vmwatchdog: BKL pushdown
  vmcp: BKL pushdown
  via-pmu: BKL pushdown
  uml-random: BKL pushdown
  uml-mmapper: BKL pushdown
  ...

15 years agofirmware: convert sb16_csp driver to use firmware loader exclusively
Jaswinder Singh [Sat, 5 Jul 2008 12:35:22 +0000 (18:05 +0530)]
firmware: convert sb16_csp driver to use firmware loader exclusively

Signed-off-by: Jaswinder Singh <jaswinder@infradead.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
15 years agodsp56k: use request_firmware
Jaswinder Singh [Sat, 5 Jul 2008 09:58:30 +0000 (15:28 +0530)]
dsp56k: use request_firmware

Signed-off-by: Jaswinder Singh <jaswinder@infradead.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
15 years agoedgeport-ti: use request_firmware()
Jaswinder Singh [Fri, 4 Jul 2008 17:36:09 +0000 (23:06 +0530)]
edgeport-ti: use request_firmware()

Firmware blob looks like this...
        uint8_t  MajorVersion
        uint8_t  MinorVersion
        __le16   BuildNumber
        uint8_t  data[]

Signed-off-by: Jaswinder Singh <jaswinder@infradead.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
15 years agoedgeport: use request_firmware()
Jaswinder Singh [Thu, 3 Jul 2008 11:30:23 +0000 (17:00 +0530)]
edgeport: use request_firmware()

Version number provided in first HEX record.

Signed-off-by: Jaswinder Singh <jaswinder@infradead.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
15 years agovicam: use request_firmware()
Jaswinder Singh [Fri, 27 Jun 2008 14:20:40 +0000 (19:50 +0530)]
vicam: use request_firmware()

Although it wasn't actually using ihex records before, we use the Intel
HEX record format for this firmware -- because that gives us a simple
way to split it into separate chunks internally as we need, without
loading each part as a separate file.

Signed-off-by: Jaswinder Singh <jaswinder@infradead.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
15 years agodabusb: use request_firmware()
David Woodhouse [Mon, 23 Jun 2008 10:41:04 +0000 (11:41 +0100)]
dabusb: use request_firmware()

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
15 years agocpia2: use request_firmware()
David Woodhouse [Mon, 23 Jun 2008 10:36:23 +0000 (11:36 +0100)]
cpia2: use request_firmware()

Thanks for Jaswinder Singh for converting the firmware blob itself to ihex.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
15 years agoMerge commit 'v2.6.26' into bkl-removal
Jonathan Corbet [Mon, 14 Jul 2008 21:29:34 +0000 (15:29 -0600)]
Merge commit 'v2.6.26' into bkl-removal

15 years agoftrace: document updates
Steven Rostedt [Mon, 14 Jul 2008 20:41:12 +0000 (16:41 -0400)]
ftrace: document updates

The following updates were recommended by Elias Oltmanns and Randy Dunlap.

[ updates based on Andrew Morton's comments are still to come. ]

Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoMerge branch 'sched/for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip...
Linus Torvalds [Mon, 14 Jul 2008 20:54:49 +0000 (13:54 -0700)]
Merge branch 'sched/for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip

* 'sched/for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (76 commits)
  sched_clock: and multiplier for TSC to gtod drift
  sched_clock: record TSC after gtod
  sched_clock: only update deltas with local reads.
  sched_clock: fix calculation of other CPU
  sched_clock: stop maximum check on NO HZ
  sched_clock: widen the max and min time
  sched_clock: record from last tick
  sched: fix accounting in task delay accounting & migration
  sched: add avg-overlap support to RT tasks
  sched: terminate newidle balancing once at least one task has moved over
  sched: fix warning
  sched: build fix
  sched: sched_clock_cpu() based cpu_clock(), lockdep fix
  sched: export cpu_clock
  sched: make sched_{rt,fair}.c ifdefs more readable
  sched: bias effective_load() error towards failing wake_affine().
  sched: incremental effective_load()
  sched: correct wakeup weight calculations
  sched: fix mult overflow
  sched: update shares on wakeup
  ...

15 years agoMerge branch 'x86/for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip...
Linus Torvalds [Mon, 14 Jul 2008 20:43:24 +0000 (13:43 -0700)]
Merge branch 'x86/for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip

* 'x86/for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (821 commits)
  x86: make 64bit hpet_set_mapping to use ioremap too, v2
  x86: get x86_phys_bits early
  x86: max_low_pfn_mapped fix #4
  x86: change _node_to_cpumask_ptr to return const ptr
  x86: I/O APIC: remove an IRQ2-mask hack
  x86: fix numaq_tsc_disable calling
  x86, e820: remove end_user_pfn
  x86: max_low_pfn_mapped fix, #3
  x86: max_low_pfn_mapped fix, #2
  x86: max_low_pfn_mapped fix, #1
  x86_64: fix delayed signals
  x86: remove conflicting nx6325 and nx6125 quirks
  x86: Recover timer_ack lost in the merge of the NMI watchdog
  x86: I/O APIC: Never configure IRQ2
  x86: L-APIC: Always fully configure IRQ0
  x86: L-APIC: Set IRQ0 as edge-triggered
  x86: merge dwarf2 headers
  x86: use AS_CFI instead of UNWIND_INFO
  x86: use ignore macro instead of hash comment
  x86: use matching CFI_ENDPROC
  ...

15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
Linus Torvalds [Mon, 14 Jul 2008 20:40:42 +0000 (13:40 -0700)]
Merge git://git./linux/kernel/git/herbert/crypto-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (50 commits)
  crypto: ixp4xx - Select CRYPTO_AUTHENC
  crypto: s390 - Respect STFL bit
  crypto: talitos - Add support for sha256 and md5 variants
  crypto: hash - Move ahash functions into crypto/hash.h
  crypto: crc32c - Add ahash implementation
  crypto: hash - Added scatter list walking helper
  crypto: prng - Deterministic CPRNG
  crypto: hash - Removed vestigial ahash fields
  crypto: hash - Fixed digest size check
  crypto: rmd - sparse annotations
  crypto: rmd128 - sparse annotations
  crypto: camellia - Use kernel-provided bitops, unaligned access helpers
  crypto: talitos - Use proper form for algorithm driver names
  crypto: talitos - Add support for 3des
  crypto: padlock - Make module loading quieter when hardware isn't available
  crypto: tcrpyt - Remove unnecessary kmap/kunmap calls
  crypto: ixp4xx - Hardware crypto support for IXP4xx CPUs
  crypto: talitos - Freescale integrated security engine (SEC) driver
  [CRYPTO] tcrypt: Add self test for des3_ebe cipher operating in cbc mode
  [CRYPTO] rmd: Use pointer form of endian swapping operations
  ...

15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/hskinnemoen/avr32-2.6
Linus Torvalds [Mon, 14 Jul 2008 20:37:29 +0000 (13:37 -0700)]
Merge git://git./linux/kernel/git/hskinnemoen/avr32-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/hskinnemoen/avr32-2.6: (31 commits)
  avr32: Fix typo of IFSR in a comment in the PIO header file
  avr32: Power Management support ("standby" and "mem" modes)
  avr32: Add system device for the internal interrupt controller (intc)
  avr32: Add simple SRAM allocator
  avr32: Enable SDRAMC clock at startup
  rtc-at32ap700x: Enable wakeup
  macb: Basic suspend/resume support
  atmel_serial: Drain console TX shifter before suspending
  atmel_serial: Fix build on avr32 with CONFIG_PM enabled
  avr32: Use a quicklist for PTE allocation as well
  avr32: Use a quicklist for PGD allocation
  avr32: Cover the kernel page tables in the user PGDs
  avr32: Store virtual addresses in the PGD
  avr32: Remove useless zeroing of swapper_pg_dir at startup
  avr32: Clean up and optimize the TLB operations
  avr32: Rename at32ap.c -> pdc.c
  avr32: Move setup_platform() into chip-specific file
  avr32: Kill special exception handler sections
  avr32: Kill unneeded #include <asm/pgalloc.h> from asm/mmu_context.h
  avr32: Clean up time.c #includes
  ...

15 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris...
Linus Torvalds [Mon, 14 Jul 2008 20:36:55 +0000 (13:36 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/jmorris/security-testing-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6: (25 commits)
  security: remove register_security hook
  security: remove dummy module fix
  security: remove dummy module
  security: remove unused sb_get_mnt_opts hook
  LSM/SELinux: show LSM mount options in /proc/mounts
  SELinux: allow fstype unknown to policy to use xattrs if present
  security: fix return of void-valued expressions
  SELinux: use do_each_thread as a proper do/while block
  SELinux: remove unused and shadowed addrlen variable
  SELinux: more user friendly unknown handling printk
  selinux: change handling of invalid classes (Was: Re: 2.6.26-rc5-mm1 selinux whine)
  SELinux: drop load_mutex in security_load_policy
  SELinux: fix off by 1 reference of class_to_string in context_struct_compute_av
  SELinux: open code sidtab lock
  SELinux: open code load_mutex
  SELinux: open code policy_rwlock
  selinux: fix endianness bug in network node address handling
  selinux: simplify ioctl checking
  SELinux: enable processes with mac_admin to get the raw inode contexts
  Security: split proc ptrace checking into read vs. attach
  ...

15 years agoMerge branch 'drm-reorg' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied...
Linus Torvalds [Mon, 14 Jul 2008 20:32:24 +0000 (13:32 -0700)]
Merge branch 'drm-reorg' of git://git./linux/kernel/git/airlied/drm-2.6

* 'drm-reorg' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
  drm: reorganise drm tree to be more future proof.

15 years agoMerge branch 'for-linus' of git://git.alsa-project.org/alsa-kernel
Linus Torvalds [Mon, 14 Jul 2008 20:26:07 +0000 (13:26 -0700)]
Merge branch 'for-linus' of git://git.alsa-project.org/alsa-kernel

* 'for-linus' of git://git.alsa-project.org/alsa-kernel: (179 commits)
  ALSA: Release v1.0.17
  ALSA: correct kcalloc usage
  ALSA: ALSA driver for SGI O2 audio board
  ALSA: asoc: kbuild - only show menus for the current ASoC CPU platform.
  ALSA: ALSA driver for SGI HAL2 audio device
  ALSA: hda - Fix FSC V5505 model
  ALSA: hda - Fix missing init for unsol events on micsense model
  ALSA: hda - Fix internal mic vref pin setup
  ALSA: hda: 92hd71bxx PC Beep
  ALSA: HDA - HP dc7600 with pci sub IDs 0x103c/0x3011 belongs to hp-3013 model
  ALSA: usb-audio: add some Yamaha USB MIDI quirks
  ALSA: usb-audio: fix Yamaha KX quirk
  ALSA: ASoC: Au12x0/Au1550 PSC Audio support
  ALSA: Add Yamaha KX49 (USB MIDI controller) to usbquirks.h
  ALSA: ASoC: pxa2xx-ac97: fix warning due to missing argument in fuction declaration
  ALSA: tosa: fix compilation with new DAPM API
  ALSA: wavefront - add const
  ALSA: remove CONFIG_KMOD from sound
  ALSA: Fix a const to non-const assignment in the Digigram VXpocket sound driver
  ALSA: Fix a const pointer usage warning in the Digigram VX soundcard driver
  ...

15 years agoMerge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6
Linus Torvalds [Mon, 14 Jul 2008 20:25:01 +0000 (13:25 -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: (71 commits)
  [S390] sclp_tty: Fix scheduling while atomic bug.
  [S390] sclp_tty: remove ioctl interface.
  [S390] Remove P390 support.
  [S390] Cleanup vmcp printk messages.
  [S390] Cleanup lcs printk messages.
  [S390] Cleanup kprobes printk messages.
  [S390] Cleanup vmwatch printk messages.
  [S390] Cleanup dcssblk printk messages.
  [S390] Cleanup zfcp dumper printk messages.
  [S390] Cleanup vmlogrdr printk messages.
  [S390] Cleanup s390 debug feature print messages.
  [S390] Cleanup monreader printk messages.
  [S390] Cleanup appldata printk messages.
  [S390] Cleanup smsgiucv printk messages.
  [S390] Cleanup cpacf printk messages.
  [S390] Cleanup qeth print messages.
  [S390] Cleanup netiucv printk messages.
  [S390] Cleanup iucv printk messages.
  [S390] Cleanup sclp printk messages.
  [S390] Cleanup zcrypt printk messages.
  ...

15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6
Linus Torvalds [Mon, 14 Jul 2008 20:24:39 +0000 (13:24 -0700)]
Merge git://git./linux/kernel/git/brodo/pcmcia-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6: (23 commits)
  pcmcia: Fix ide-cs sparse warning
  pcmcia: ide-cs debugging bugfix
  pcmcia: allow for longer CIS firmware files
  pcmcia: cm40x0 cdev lock_kernel() pushdown
  pcmcia: (re)move {pcmcia,pccard}_get_status
  pcmcia: kill IN_CARD_SERVICES
  pcmcia: Remove unused header file code
  pcmcia: remove unused bulkmem.h
  pcmcia: simplify pccard_validate_cis
  pcmcia: carve out ioctl adjust function to pcmcia_ioctl
  pcmcia: irq probe can be done without risking an IRQ storm
  pcmcia: Fix ti12xx_2nd_slot_empty always failing
  pcmcia: check for pointer instead of pointer address
  pcmcia: switch cm4000_cs.c to unlocked_ioctl
  pcmcia: simplify rsrc_nonstatic attributes
  pcmcia: add support CompactFlash PCMCIA support for Blackfin.
  pcmcia: remove version.h
  pcmcia: cs: kill thread_wait
  pcmcia: i82365.c: check request_irq return value
  pcmcia: fix Alchemy warnings
  ...

15 years agoMerge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block
Linus Torvalds [Mon, 14 Jul 2008 20:15:14 +0000 (13:15 -0700)]
Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block

* 'for-linus' of git://git.kernel.dk/linux-2.6-block: (37 commits)
  splice: fix generic_file_splice_read() race with page invalidation
  ramfs: enable splice write
  drivers/block/pktcdvd.c: avoid useless memset
  cdrom: revert commit 22a9189 (cdrom: use kmalloced buffers instead of buffers on stack)
  scsi: sr avoids useless buffer allocation
  block: blk_rq_map_kern uses the bounce buffers for stack buffers
  block: add blk_queue_update_dma_pad
  DAC960: push down BKL
  pktcdvd: push BKL down into driver
  paride: push ioctl down into driver
  block: use get_unaligned_* helpers
  block: extend queue_flag bitops
  block: request_module(): use format string
  Add bvec_merge_data to handle stacked devices and ->merge_bvec()
  block: integrity flags can't use bit ops on unsigned short
  cmdfilter: extend default read filter
  sg: fix odd style (extra parenthesis) introduced by cmd filter patch
  block: add bounce support to blk_rq_map_user_iov
  cfq-iosched: get rid of enable_idle being unused warning
  allow userspace to modify scsi command filter on per device basis
  ...

15 years agoStart using the new '%pS' infrastructure to print symbols
Linus Torvalds [Mon, 14 Jul 2008 19:12:53 +0000 (12:12 -0700)]
Start using the new '%pS' infrastructure to print symbols

This simplifies the code significantly, and was the whole point of the
exercise.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoMerge branch 'auto-ftrace-next' into tracing/for-linus
Ingo Molnar [Mon, 14 Jul 2008 14:11:52 +0000 (16:11 +0200)]
Merge branch 'auto-ftrace-next' into tracing/for-linus

Conflicts:

arch/x86/kernel/entry_32.S
arch/x86/kernel/process_32.c
arch/x86/kernel/process_64.c
arch/x86/lib/Makefile
include/asm-x86/irqflags.h
kernel/Makefile
kernel/sched.c

Signed-off-by: Ingo Molnar <mingo@elte.hu>
15 years agoMerge branch 'sched/for-linus' into tracing/for-linus
Ingo Molnar [Mon, 14 Jul 2008 14:11:02 +0000 (16:11 +0200)]
Merge branch 'sched/for-linus' into tracing/for-linus

15 years agoMerge branch 'tracing/ftrace' into auto-ftrace-next
Ingo Molnar [Mon, 14 Jul 2008 13:58:35 +0000 (15:58 +0200)]
Merge branch 'tracing/ftrace' into auto-ftrace-next

15 years agoMerge commit 'v2.6.26' into sched/devel
Ingo Molnar [Mon, 14 Jul 2008 10:19:19 +0000 (12:19 +0200)]
Merge commit 'v2.6.26' into sched/devel

15 years agoMerge branch 'sched/clock' into sched/devel
Ingo Molnar [Mon, 14 Jul 2008 10:19:13 +0000 (12:19 +0200)]
Merge branch 'sched/clock' into sched/devel

15 years agolockdep: fix kernel/fork.c warning
Ingo Molnar [Mon, 14 Jul 2008 10:09:28 +0000 (12:09 +0200)]
lockdep: fix kernel/fork.c warning

fix:

[    0.184011] ------------[ cut here ]------------
[    0.188011] WARNING: at kernel/fork.c:918 copy_process+0x1c0/0x1084()
[    0.192011] Pid: 0, comm: swapper Not tainted 2.6.26-tip-00351-g01d4a50-dirty #14521
[    0.196011]  [<c0135d48>] warn_on_slowpath+0x3c/0x60
[    0.200012]  [<c016f805>] ? __alloc_pages_internal+0x92/0x36b
[    0.208012]  [<c033de5e>] ? __spin_lock_init+0x24/0x4a
[    0.212012]  [<c01347e3>] copy_process+0x1c0/0x1084
[    0.216013]  [<c013575f>] do_fork+0xb8/0x1ad
[    0.220013]  [<c034f75e>] ? acpi_os_release_lock+0x8/0xa
[    0.228013]  [<c034ff7a>] ? acpi_os_vprintf+0x20/0x24
[    0.232014]  [<c01129ee>] kernel_thread+0x75/0x7d
[    0.236014]  [<c0a491eb>] ? kernel_init+0x0/0x24a
[    0.240014]  [<c0a491eb>] ? kernel_init+0x0/0x24a
[    0.244014]  [<c01151b0>] ? kernel_thread_helper+0x0/0x10
[    0.252015]  [<c06c6ac0>] rest_init+0x14/0x50
[    0.256015]  [<c0a498ce>] start_kernel+0x2b9/0x2c0
[    0.260015]  [<c0a4904f>] __init_begin+0x4f/0x57
[    0.264016]  =======================
[    0.268016] ---[ end trace 4eaa2a86a8e2da22 ]---
[    0.272016] enabled ExtINT on CPU#0

which occurs if CONFIG_TRACE_IRQFLAGS=y, CONFIG_DEBUG_LOCKDEP=y,
but CONFIG_PROVE_LOCKING is disabled.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
15 years agoMerge commit 'v2.6.26' into x86/core
Ingo Molnar [Mon, 14 Jul 2008 09:37:46 +0000 (11:37 +0200)]
Merge commit 'v2.6.26' into x86/core