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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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.
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.
...
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
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
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
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
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
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>
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
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
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
...
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
...
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>
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>
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>
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>
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>
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>
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>
Jonathan Corbet [Mon, 14 Jul 2008 21:29:34 +0000 (15:29 -0600)]
Merge commit 'v2.6.26' into bkl-removal
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>
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
...
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
...
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
...
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
...
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
...
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.
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
...
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.
...
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
...
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
...
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>
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>
Ingo Molnar [Mon, 14 Jul 2008 14:11:02 +0000 (16:11 +0200)]
Merge branch 'sched/for-linus' into tracing/for-linus
Ingo Molnar [Mon, 14 Jul 2008 13:58:35 +0000 (15:58 +0200)]
Merge branch 'tracing/ftrace' into auto-ftrace-next
Ingo Molnar [Mon, 14 Jul 2008 10:19:19 +0000 (12:19 +0200)]
Merge commit 'v2.6.26' into sched/devel
Ingo Molnar [Mon, 14 Jul 2008 10:19:13 +0000 (12:19 +0200)]
Merge branch 'sched/clock' into sched/devel
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>
Ingo Molnar [Mon, 14 Jul 2008 09:37:46 +0000 (11:37 +0200)]
Merge commit 'v2.6.26' into x86/core
Ingo Molnar [Mon, 14 Jul 2008 08:28:38 +0000 (10:28 +0200)]
lockdep: fix ftrace irq tracing false positive
fix this false positive:
[ 0.020000] ------------[ cut here ]------------
[ 0.020000] WARNING: at kernel/lockdep.c:2718 check_flags+0x14a/0x170()
[ 0.020000] Modules linked in:
[ 0.020000] Pid: 0, comm: swapper Not tainted
2.6.26-tip-00343-gd7e5521-dirty #14486
[ 0.020000] [<
c01312e4>] warn_on_slowpath+0x54/0x80
[ 0.020000] [<
c067e451>] ? _spin_unlock_irqrestore+0x61/0x70
[ 0.020000] [<
c0131bb1>] ? release_console_sem+0x201/0x210
[ 0.020000] [<
c0143d65>] ? __kernel_text_address+0x35/0x40
[ 0.020000] [<
c010562e>] ? dump_trace+0x5e/0x140
[ 0.020000] [<
c01518b5>] ? __lock_acquire+0x245/0x820
[ 0.020000] [<
c015063a>] check_flags+0x14a/0x170
[ 0.020000] [<
c0151ed8>] ? lock_acquire+0x48/0xc0
[ 0.020000] [<
c0151ee1>] lock_acquire+0x51/0xc0
[ 0.020000] [<
c014a16c>] ? down+0x2c/0x40
[ 0.020000] [<
c010a609>] ? sched_clock+0x9/0x10
[ 0.020000] [<
c067e7b2>] _write_lock+0x32/0x60
[ 0.020000] [<
c013797f>] ? request_resource+0x1f/0xb0
[ 0.020000] [<
c013797f>] request_resource+0x1f/0xb0
[ 0.020000] [<
c02f89ad>] vgacon_startup+0x2bd/0x3e0
[ 0.020000] [<
c094d62a>] con_init+0x19/0x22f
[ 0.020000] [<
c0330c7c>] ? tty_register_ldisc+0x5c/0x70
[ 0.020000] [<
c094cf49>] console_init+0x20/0x2e
[ 0.020000] [<
c092a969>] start_kernel+0x20c/0x379
[ 0.020000] [<
c092a516>] ? unknown_bootoption+0x0/0x1f6
[ 0.020000] [<
c092a099>] __init_begin+0x99/0xa1
[ 0.020000] =======================
[ 0.020000] ---[ end trace
4eaa2a86a8e2da22 ]---
[ 0.020000] possible reason: unannotated irqs-on.
[ 0.020000] irq event stamp: 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>
Ingo Molnar [Mon, 14 Jul 2008 08:31:59 +0000 (10:31 +0200)]
Merge commit 'v2.6.26' into core/locking
Heiko Carstens [Mon, 14 Jul 2008 07:59:46 +0000 (09:59 +0200)]
[S390] sclp_tty: Fix scheduling while atomic bug.
Finally fixes a possible scheduling while in atomic context bug. The driver
used to wait on a waitqueue if no empty buffer was available. This could
lead to a deadlock if the driver was called from non-schedulable context.
So fix this. The write operation may fail now. It returns the number of
characters accepted. put_char will never fail, since it writes characters
to an intermediate buffer which gets flushed as soon as it is full.
That means the driver now can busy wait if something is in the intermediate
buffer and a write_string operation follows. Seems to be an acceptable
compromise, since that shouldn't happen too often.
Cc: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>