History log of /drivers/mmc/host/sdhci-pci.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
79263f33b0f3abe26d74a66824b457b94bdbef9f 03-Apr-2012 Chris Ball <cjb@laptop.org> Revert "mmc: sdhci-pci: Add MSI support"

This reverts commit e6039832bed9a9b967796d7021f17f25b625b616.
There are reports of MSI breaking SDHCI on multiple chipsets (JMicron
and O2Micro, at least), so this should be reverted until we come up
with a whitelist or something.

Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
84e41d2d56fbacfd888ab1382e94e752da176582 03-Apr-2012 Chris Ball <cjb@laptop.org> Revert "mmc: sdhci-pci: add quirks for broken MSI on O2Micro controllers"

This reverts commit c16e981b2fd9455af670a69a84f4c8cf07e12658, because
it's no longer useful once MSI support is reverted.

Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
210b7d28598e402548b0164ca2f543e15aab8c6e 29-Mar-2012 Manuel Lauss <manuel.lauss@googlemail.com> mmc: sdhci-pci: add quirks for broken MSI on O2Micro controllers

MSI on my O2Micro OZ600 SD card reader is broken. This patch adds a quirk
to disable MSI on these controllers.

Signed-off-by: Manuel Lauss <manuel.lauss@googlemail.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
296e0b0357e09fdc6f307953da51c0e5da5b84e7 14-Mar-2012 Alexander Stein <alexander.stein@systec-electronic.com> mmc: sdhci-pci: allow 8-bit bus width for Intel PCH

Signed-off-by: Alexander Stein <alexander.stein@systec-electronic.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
e6039832bed9a9b967796d7021f17f25b625b616 13-Mar-2012 Alexander Stein <alexander.stein@systec-electronic.com> mmc: sdhci-pci: Add MSI support

Signed-off-by: Alexander Stein <alexander.stein@systec-electronic.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
f3c55a7b5d7f2d40c805a62174bb733b55875523 07-Feb-2012 Adrian Hunter <adrian.hunter@intel.com> mmc: sdhci-pci: add SDHCI_QUIRK2_HOST_OFF_CARD_ON for Medfield SDIO

SDIO is powered separately from the host controller, so the card can
remain on while the host controller is powered off during suspend.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
da721cf7808f9731454757d704f0aa69ae2f1aae 07-Feb-2012 Adrian Hunter <adrian.hunter@intel.com> mmc: sdhci-pci: select HC erase size for Medfield eMMC

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
012e4671e445ac1dd04f40c0b974685280bedca3 30-Jan-2012 Adrian Hunter <adrian.hunter@intel.com> mmc: sdhci-pci: set Medfield SDIO as non-removable

Set Medfield SDIO as non-removable to avoid un-necessary
card detect activity.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
93933508ce3753b9ef1fefb75531b5b1622de03f 27-Dec-2011 Adrian Hunter <adrian.hunter@intel.com> mmc: sdhci-pci: enable runtime PM for Medfield SDIO

Runtime PM for SDIO is no longer enabled by default (see
5c7f0e083d2d98ba14ddd10e88f001a0ead4cae4) so it must now
be enabled per platform, in this case Medfield uses it.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
e2a0a5829c4069ee4a0f28c7301187ffaba91a46 27-Dec-2011 Adrian Hunter <adrian.hunter@intel.com> mmc: sdhci-pci: remove SDHCI_QUIRK2_OWN_CARD_DETECTION

Even if a driver provides separate card detection, an interrupt
is still needed to abort mmc requests that are in progress.
SDHCI_QUIRK2_OWN_CARD_DETECTION prevents that, so remove it.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
c5e027a4a19d6267e36107fc32b5a4f3cd27976a 27-Dec-2011 Adrian Hunter <adrian.hunter@intel.com> mmc: sdhci-pci: get gpio numbers from platform data

Retrieve the GPIO numbers for hardware reset and
card detect from platform data.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
52c506f0bc72530fb786838e7ffd4f158a2e5c3a 27-Dec-2011 Adrian Hunter <adrian.hunter@intel.com> mmc: sdhci-pci: add platform data

Add a means of getting platform data for the SDHCI PCI
devices. The data is stored against the slot not the
device in order to support multi-slot devices.

The data allows platform-specific setup (such as getting
GPIO numbers from firmware or setting up wl12xx for SDIO)
to be done in platform support files instead of the
sdhci-pci driver.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
b678b91f22debd5f8efa04895652989004761d06 03-Dec-2011 Axel Lin <axel.lin@gmail.com> mmc: sdhci-pci: simplify error handling

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
29495aa04a30c21565243c5b9c028510446d242c 03-Nov-2011 Manuel Lauss <manuel.lauss@googlemail.com> mmc: sdhci: remove "state" argument from sdhci_suspend_host

Drop the "state" argument from sdhci_suspend_host. Its only user is the
PCI glue; this allows to move all SDHCI glues to use dev_pm_ops instead.

Signed-off-by: Manuel Lauss <manuel.lauss@googlemail.com>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
c43fd7746698a10aa6435d62ec28f977dd6246cc 17-Oct-2011 Adrian Hunter <adrian.hunter@intel.com> mmc: sdhci-pci: add flag for devices that can support runtime PM

Only allow runtime PM for devices that specifically indicate
that they support it.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
66fd8ad5100b5003046aa744a4f12fa31bb831f9 03-Oct-2011 Adrian Hunter <adrian.hunter@intel.com> mmc: sdhci-pci: add runtime pm support

Ths patch allows runtime PM for sdhci-pci, runtime suspending after
inactivity of 50ms and ensuring runtime resume before SDHC registers
are accessed. During runtime suspend, interrupts are masked.
The host controller state is restored at runtime resume.

For Medfield, the host controller's card detect mechanism is
supplanted by an always-on GPIO which provides for card detect wake-up.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
88b47679746b81534002bcba42da97ab82b5d12a 03-Jul-2011 Paul Gortmaker <paul.gortmaker@windriver.com> mmc: Add module.h to drivers/mmc users assuming implicit presence.

We are cleaning up the implicit presence of module.h; these guys are
some of the people who just assume it will be there. Call it out
explitly for those that really need it.

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
f7c56ef2af5ae7e4c24c3c79427b38d18ba1d294 22-Sep-2011 Adrian Hunter <adrian.hunter@intel.com> mmc: block: support no access to boot partitions

Intel Medfield platform blocks access to eMMC boot partitions which
results in switch errors. Since there is no access, mmcboot0/1
devices should not be created. Add a host capability to reflect that.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
0f2016558e4f9a8d2f9b1202064915205f4dd450 29-Aug-2011 Adrian Hunter <adrian.hunter@intel.com> mmc: sdhci-pci: add eMMC hardware reset support

Implement eMMC hardware reset for Medfield.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
0d013bcf5c272faea1f8e7a5ef3cb2e98103d5cb 29-Jun-2011 Adrian Hunter <adrian.hunter@intel.com> mmc: sdhci-pci: allow 8-bit bus width for Intel Medfield eMMCs

Unless MMC_CAP_8_BIT_DATA is set, the bus width defaults to 4.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
68077b0261f00e4eb2d26f066efca1edb89488a8 29-Jun-2011 Major Lee <major_lee@wistron.com> mmc: sdhci-pci: add 8-bit bus width support for mrst hc0

And hook platform_8bit_width to support 8-bit bus width.

Signed-off-by: Major Lee <major_lee@wistron.com>
Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Dirk Brandewie <dirk.brandewie@gmail.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
82b0e23a295cc58d1290017ee97a40956ad68d94 21-Apr-2011 Takashi Iwai <tiwai@suse.de> mmc: sdhci: Fix read-only detection with JMicron 388 chip

On HP laptops with JMicron 388 chip, the write-locked SD card isn't
detected correctly as read-only in many cases. This is because the
PRESENT_STATE register becomes unsable just after plugging, and it
returns the WRITE_PROTECT bit wrongly at the first read.

This patch fixes the read-only detection by adding a new sdhci quirk
indicating to check the register more intensively with a relatively
long delay.

The patch is tested with 2.6.39-rc4 kernel.

Cc: Aries Lee <arieslee@jmicron.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
b177bc9188c04e140e5d8928e88623a92ba751bf 05-Apr-2011 Ameya Palande <2ameya@gmail.com> mmc: sdhci-pci: Fix checkpatch.pl errors

This patch fixes 21 errors and 6 warnings reported by checkpatch.pl.

Signed-off-by: Ameya Palande <2ameya@gmail.com>
Reviewed-by: Wolfram Sang <w.sang@pengutronix.de>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
9fdcdbb0d84922e7ccda2f717a04ea62629f7e18 29-Mar-2011 Chris Ball <cjb@laptop.org> mmc: sdhci-pci: Fix error case in sdhci_pci_probe_slot()

If pci_ioremap_bar() fails during probe, we "goto release;" and free the
host, but then we return 0 -- which tells sdhci_pci_probe() that the probe
succeeded. Since we think the probe succeeded, when we unload sdhci we'll
go to sdhci_pci_remove_slot() and it will try to dereference slot->host,
which is now NULL because we freed it in the error path earlier.

The patch simply sets ret appropriately, so that sdhci_pci_probe() will
detect the failure immediately and bail out.

Signed-off-by: Chris Ball <cjb@laptop.org>
Cc: <stable@kernel.org>
/drivers/mmc/host/sdhci-pci.c
cf5e23e1c27af4291cf90020c295756ba4dcf326 17-Mar-2011 Sergei Shtylyov <sshtylyov@ru.mvista.com> mmc: use pci_dev->revision

The SDHCI driver uses PCI_CLASS_REVISION instead of PCI_REVISION_ID, so
it was not converted by commit 44c10138fd4bbc4b6d6bff0873c24902f2a9da65
(PCI: Change all drivers to use pci_device->revision). The newer VIA
driver has similar code too. This patch converts both drivers to use
the 'revision' field of 'struct pci_dev'.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Acked-by: Harald Welte <HaraldWelte@viatech.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
24c300199b2f9125169c09ca3e950b17c16e2eab 23-Feb-2011 Chris Ball <cjb@laptop.org> mmc: sdhci-pci: Remove set-but-unused variable.

drivers/mmc/host/sdhci-pci.c: In function ‘sdhci_pci_probe_slot’:
drivers/mmc/host/sdhci-pci.c:913:18: warning: variable ‘addr’ set but
not used [-Wunused-but-set-variable]

Signed-off-by: Chris Ball <cjb@laptop.org>
Acked-by: Wolfram Sang <w.sang@pengutronix.de>
/drivers/mmc/host/sdhci-pci.c
5fd11c0754fa069b6aba64b65734aa2fb193552d 11-Feb-2011 Manoj Iyer <manoj.iyer@canonical.com> mmc: sdhci: Add Ricoh e823 PCI ID

Signed-off-by: Manoj Iyer <manoj.iyer@canonical.com>
Cc: <stable@kernel.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
d75c1084db5e4a30603729852046d0a87d4f7688 16-Dec-2010 Takashi Iwai <tiwai@suse.de> mmc: sdhci: Enable bus-width test for JMicron controllers

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
8f230f454fe04ba326ffaead3a6b88dcf44eaf4b 08-Dec-2010 Takashi Iwai <tiwai@suse.de> mmc: Add support for JMicron 388 SD/MMC controller

JMicron 388 SD/MMC combo controller supports the 1.8V low-voltage for
SD, but MMC doesn't work with the low-voltage, resulting in an error
at probing.

This patch adds the support for multiple voltage mask per device type,
so that SD works with 1.8V while MMC forces 3.3V. Here new ocr_avail_*
fields for each device are introduced, so that the actual OCR mask is
switched dynamically.

Also, the restriction of low-voltage in core/sd.c is removed when the
bit is allowed explicitly via ocr_avail_sd mask.

This patch was rewritten from scratch based on Aries' original code.

Signed-off-by: Aries Lee <arieslee@jmicron.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Reviewed-by: Chris Ball <cjb@laptop.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
26daa1ed40c6b31b4220581431982814c47c608a 18-Nov-2010 Jennifer Li <Jennifer.li@o2micro.com> mmc: sdhci: Disable ADMA on some O2Micro SD/MMC parts.

This patch disables the broken ADMA on selected O2Micro devices.

Signed-off-by: Jennifer Li <Jennifer.li@o2micro.com>
Reviewed-by: Chris Ball <cjb@laptop.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
35ac6f081f26e1b6b3482b9c8dfccebe7817c691 09-Nov-2010 Jacob Pan <jacob.jun.pan@linux.intel.com> mmc: sdhci: Fix crash on boot with C0 stepping Moorestown platforms

SDHC2 is newly added in C0 stepping of Langwell. Without the Moorestown
specific quirk, the default pci_probe will be called and crash the kernel.

This patch unblocks the crash problem on C0 by using the same probing
function as HC1, which limits the number of slots to one.

Signed-off-by: Jacob Pan <jacob.jun.pan@linux.intel.com>
Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
5f619704d18b93869d045abc49e09cdba109b04b 04-Nov-2010 Daniel Drake <dsd@laptop.org> mmc: sdhci: Properly enable SDIO IRQ wakeups

A little more work was needed for SDIO IRQ wakeups to be functional.

Wake-on-WLAN on the SD WiFi adapter in the XO-1.5 laptop is now working.

Signed-off-by: Daniel Drake <dsd@laptop.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
f9ee3eab528d2d21c33584bfb86ed1ebf317cb09 04-Oct-2010 Alan Cox <alan@linux.intel.com> mmc: sdhci: Add Moorestown device support

This adds the basic identifiers. Due to the various chip quirks it's not
enough to make MRST support very useful for earlier steppings but that can
follow.

(I'm currently trying to verify which steps actually matter outside Intel
so I can avoid unneeded stuff going upstream)

[Extracted from original development]
Signed-off-by: JiebingLi <jiebing.li@intel.com>
[Folds in fixes]
Signed-off-by: Chuanxiao Dong <chuanxiao.dong@intel.com>
Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
292290524e54724cab78e7e79a27a3b9a8b11483 04-Oct-2010 Xiaochen Shen <xiaochen.shen@intel.com> mmc: sdhci: Intel Medfield support

Basic support for the Intel Medfield devices

Give them their own quirks as we will need to update this later.

Signed-off-by: Xiaochen Shen <xiaochen.shen@intel.com>
Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
225d85fe7ddca2985548d98e410f7baf4a5d6260 04-Oct-2010 Alan Cox <alan@linux.intel.com> mmc: sdhci: Allow the probe handler to override slots

Currently we write it to the chip data, but if the probe handler overrides
it we ignore the new value and keep using our cached one. Fix this so that
a probe handler can adjust the slot count.

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
/drivers/mmc/host/sdhci-pci.c
568133ebda39f7507759a744fa9cf4d5097bad2f 11-Aug-2010 Pablo Castillo <CyberCastle@gmail.com> mmc: add ricoh e822 pci id

Signed-off-by: Pablo Castillo <CyberCastle@gmail.com>
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Tested-by: Gregg Lebovitz <gregg@lebovitz.net>
Cc: Maxim Levitsky <maximlevitsky@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
/drivers/mmc/host/sdhci-pci.c
ccc92c23240cdf952ef7cc39ba563910dcbc9cbe 11-Aug-2010 Maxim Levitsky <maximlevitsky@gmail.com> mmc: make sdhci work with ricoh mmc controller

The current way of disabling it is not well tested by vendor and has all
kinds of bugs that show up on resume from ram/disk. A very good example
is a dead SDHCI controller.

Old way of disabling is still supported by continuing to use
CONFIG_MMC_RICOH_MMC.

Based on 'http://list.drzeus.cx/pipermail/sdhci-devel/2007-December/002085.html'
Therefore most of the credit for this goes to Andrew de Quincey

Signed-off-by: Maxim Levitsky <maximlevitsky@gmail.com>
Cc: Andrew de Quincey <adq_dvb@lidskialf.net>
Acked-by: Philip Langdale <philipl@overt.org>
Cc: "Rafael J. Wysocki" <rjw@sisk.pl>
Cc: <linux-mmc@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
/drivers/mmc/host/sdhci-pci.c
dc0fd7b56141999832a6bccda2f7e9765f0bc087 26-May-2010 Julia Lawall <julia@diku.dk> drivers/mmc/host: use ERR_CAST

Use ERR_CAST(x) rather than ERR_PTR(PTR_ERR(x)). The former makes more
clear what is the purpose of the operation, which otherwise looks like a
no-op.

The semantic patch that makes this change is as follows:
(http://coccinelle.lip6.fr/)

// <smpl>
@@
type T;
T x;
identifier f;
@@

T f (...) { <+...
- ERR_PTR(PTR_ERR(x))
+ x
...+> }

@@
expression x;
@@

- ERR_PTR(PTR_ERR(x))
+ ERR_CAST(x)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Cc: <linux-mmc@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
/drivers/mmc/host/sdhci-pci.c
5a0e3ad6af8660be21ca98a971cd00f331318c05 24-Mar-2010 Tejun Heo <tj@kernel.org> include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h

percpu.h is included by sched.h and module.h and thus ends up being
included when building most .c files. percpu.h includes slab.h which
in turn includes gfp.h making everything defined by the two files
universally available and complicating inclusion dependencies.

percpu.h -> slab.h dependency is about to be removed. Prepare for
this change by updating users of gfp and slab facilities include those
headers directly instead of assuming availability. As this conversion
needs to touch large number of source files, the following script is
used as the basis of conversion.

http://userweb.kernel.org/~tj/misc/slabh-sweep.py

The script does the followings.

* Scan files for gfp and slab usages and update includes such that
only the necessary includes are there. ie. if only gfp is used,
gfp.h, if slab is used, slab.h.

* When the script inserts a new include, it looks at the include
blocks and try to put the new include such that its order conforms
to its surrounding. It's put in the include block which contains
core kernel includes, in the same order that the rest are ordered -
alphabetical, Christmas tree, rev-Xmas-tree or at the end if there
doesn't seem to be any matching order.

* If the script can't find a place to put a new include (mostly
because the file doesn't have fitting include block), it prints out
an error message indicating which .h file needs to be added to the
file.

The conversion was done in the following steps.

1. The initial automatic conversion of all .c files updated slightly
over 4000 files, deleting around 700 includes and adding ~480 gfp.h
and ~3000 slab.h inclusions. The script emitted errors for ~400
files.

2. Each error was manually checked. Some didn't need the inclusion,
some needed manual addition while adding it to implementation .h or
embedding .c file was more appropriate for others. This step added
inclusions to around 150 files.

3. The script was run again and the output was compared to the edits
from #2 to make sure no file was left behind.

4. Several build tests were done and a couple of problems were fixed.
e.g. lib/decompress_*.c used malloc/free() wrappers around slab
APIs requiring slab.h to be added manually.

5. The script was run on all .h files but without automatically
editing them as sprinkling gfp.h and slab.h inclusions around .h
files could easily lead to inclusion dependency hell. Most gfp.h
inclusion directives were ignored as stuff from gfp.h was usually
wildly available and often used in preprocessor macros. Each
slab.h inclusion directive was examined and added manually as
necessary.

6. percpu.h was updated not to include slab.h.

7. Build test were done on the following configurations and failures
were fixed. CONFIG_GCOV_KERNEL was turned off for all tests (as my
distributed build env didn't work with gcov compiles) and a few
more options had to be turned off depending on archs to make things
build (like ipr on powerpc/64 which failed due to missing writeq).

* x86 and x86_64 UP and SMP allmodconfig and a custom test config.
* powerpc and powerpc64 SMP allmodconfig
* sparc and sparc64 SMP allmodconfig
* ia64 SMP allmodconfig
* s390 SMP allmodconfig
* alpha SMP allmodconfig
* um on x86_64 SMP allmodconfig

8. percpu.h modifications were reverted so that it could be applied as
a separate patch and serve as bisection point.

Given the fact that I had only a couple of failures from tests on step
6, I'm fairly confident about the coverage of this conversion patch.
If there is a breakage, it's likely to be something in one of the arch
headers which should be easily discoverable easily on most builds of
the specific arch.

Signed-off-by: Tejun Heo <tj@kernel.org>
Guess-its-ok-by: Christoph Lameter <cl@linux-foundation.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Lee Schermerhorn <Lee.Schermerhorn@hp.com>
/drivers/mmc/host/sdhci-pci.c
849382948992cc6482c778b1e854c19368b60c05 05-Mar-2010 Vasily Khoruzhick <anarsoul@gmail.com> mmc: enable DMA on Ricoh sdhci reader by default

This card reader doesn't advertise, however DMA works well. Probably
windows SDHCI driver assumes that all readers support DMA and thus we see
that bug.

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Tested-by: Maxim Levitsky <maximlevitsky@gmail.com>
Signed-off-by: Maxim Levitsky <maximlevitsky@gmail.com>
Cc: Harald Welte <HaraldWelte@viatech.com>
Cc: Norbert Preining <preining@logic.at>
Cc: <linux-mmc@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
/drivers/mmc/host/sdhci-pci.c
2f4cbb3d834922ffa0309b6a08fa42dac87ef9d2 05-Mar-2010 Nicolas Pitre <nico@fluxnic.net> sdio: sdhci support for suspend mode PM features

Tested with an XO v1.5 from OLPC.

Signed-off-by: Nicolas Pitre <nico@marvell.com>
Cc: <linux-mmc@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
/drivers/mmc/host/sdhci-pci.c
a7a6186c4b96d4ce5c1d13d91b7f862b0adc0e72 15-Dec-2009 Nicolas Pitre <nico@fluxnic.net> sdhci: add support for the SysKonnect CardBus2SDIO adapter

This is still in use especially to develop SDIO device drivers on laptop
machines which are lacking SDIO slots. This adapter supports SDIO cards
only due to lack of 136-bit response capability.

Signed-off-by: Nicolas Pitre <nico@marvell.com>
Cc: <linux-mmc@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
/drivers/mmc/host/sdhci-pci.c
a13abc7b0814da7733c531453a207729b542ecf8 23-Sep-2009 Richard Röjfors <richard.rojfors@mocean-labs.com> sdhci: support for ADMA only hosts

Add support for ADMA on SDHCI hosts, not supporting SDMA.

According to the SDHCI specifications a host can support ADMA but not SDMA

Signed-off-by: Richard Röjfors <richard.rojfors@mocean-labs.com>
Cc: <linux-mmc@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
/drivers/mmc/host/sdhci-pci.c
c99436fb7505ca2427780d7ae49ebb427bb6f374 23-Sep-2009 Chris Ball <cjb@laptop.org> sdhci: add no-card-no-reset quirk for Ricoh R5C822/Sony Z11

Card insertion detection is broken without this quirk on a Sony Vaio
Z11, as discussed on linux-mmc here: http://marc.info/?t=125017355000008

Signed-off-by: Chris Ball <cjb@laptop.org>
Tested-by: Norbert Preining <preining@logic.at>
Cc: <linux-mmc@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
/drivers/mmc/host/sdhci-pci.c
557b06971b1f05cbadec2f376a305ee1954e9b0d 18-Jun-2009 Harald Welte <HaraldWelte@viatech.com> sdhci: Specific quirk vor VIA SDHCI controller in VX855ES

The SDHCI controller found in the VX855ES requires 10ms
delay between applying power and applying clock.

This issue has been discovered and documented by the OLPC XO1.5 team.

Signed-off-by: Harald Welte <HaraldWelte@viatech.com>
Signed-off-by: Pierre Ossman <pierre@ossman.eu>
/drivers/mmc/host/sdhci-pci.c
c60a32cd129b1c41f98888b03ba2904406bac8f8 10-Apr-2009 Dan Carpenter <error27@gmail.com> sdhci-pci: bad error handling in probe function

The goto unmap is too early, we haven't allocated host or done the
request_region().

Found by smatch (http://repo.or.cz/w/smatch.git).

[ Second error path fix by Pierre Ossman ]

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Pierre Ossman <pierre@ossman.eu>
/drivers/mmc/host/sdhci-pci.c
32710e8fd537adeb53f98dec92e4a77caac512f5 08-Apr-2009 Pierre Ossman <pierre@ossman.eu> New mail address for Pierre Ossman

Signed-off-by: Pierre Ossman <pierre@ossman.eu>
/drivers/mmc/host/sdhci-pci.c
284901a90a9e0b812ca3f5f852cbbfb60d10249d 07-Apr-2009 Yang Hongyang <yanghy@cn.fujitsu.com> dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32)

Replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32)

Signed-off-by: Yang Hongyang<yanghy@cn.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
/drivers/mmc/host/sdhci-pci.c
a0874897b1ba106298e4303a25456a473fc40f3d 02-Mar-2009 Andres Salomon <dilinger@debian.org> sdhci: Add NO_BUSY_IRQ quirk for Marvell CAFE host chip

As described here: http://lkml.org/lkml/2009/2/20/265

The CAFE chip is broken due to commit e809517f6fa5803a5a1cd5602.
Anton added a quirk here: http://lkml.org/lkml/2009/2/20/279 that fixes
CAFE's problem. This adds the quirk for CAFE.

Signed-off-by: Andres Salomon <dilinger@debian.org>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
/drivers/mmc/host/sdhci-pci.c
86a6a8749d5b8fd5c2b544fe9fd11101e3d0550f 02-Feb-2009 Pierre Ossman <drzeus@drzeus.cx> Revert "sdhci: force high speed capability on some controllers"

This reverts commit a4b76193774b463b922cab2f92450efb20d29ef0.

It turned out that the controller had problem running at the
higher speed, so go back to trusting the hardware capability
bits.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
/drivers/mmc/host/sdhci-pci.c
092f82edbe96d0a08e1d10436927e89fa101fe0d 29-Sep-2008 Arjan van de Ven <arjan@linux.intel.com> pci: use pci_ioremap_bar() in drivers/mmc

Use the new pci_ioremap_bar() function in drivers/mmc.
pci_ioremap_bar() just takes a pci device and a bar number, with the goal
of making it really hard to get wrong, while also having a central place
to stick sanity checks.

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
/drivers/mmc/host/sdhci-pci.c
e758936e02700ff88a0b08b722a3847b95283ef2 13-Oct-2008 David Woodhouse <David.Woodhouse@intel.com> Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6

Conflicts:

include/asm-x86/statfs.h
a4b76193774b463b922cab2f92450efb20d29ef0 16-Aug-2008 Pierre Ossman <drzeus@drzeus.cx> sdhci: force high speed capability on some controllers

Some high speed capable controllers forget to set the high speed
capability bit. Make sure we enable the functionality anyway.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
/drivers/mmc/host/sdhci-pci.c
8c5eb880585a6fa278aa49553dd53a25e1ac319d 03-Sep-2008 David Woodhouse <David.Woodhouse@intel.com> Use PCI_DEVICE_ID_88ALP01 for CAFÉ chip, rather than PCI_DEVICE_ID_CAFE.

Probably better to use the official designation.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Acked-by: Pierre Ossman <drzeus@drzeus.cx>
/drivers/mmc/host/sdhci-pci.c
4a3cba32cb514168bb2516c045b178e6660421d1 29-Jul-2008 Pierre Ossman <drzeus@drzeus.cx> sdhci: handle bug in JMB38x for sizes < 4 bytes

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
/drivers/mmc/host/sdhci-pci.c
2134a922c6e75c779983cad5d8aae832275f5a0d 28-Jun-2008 Pierre Ossman <drzeus@drzeus.cx> 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>
/drivers/mmc/host/sdhci-pci.c
93fc48c785f6266e67663b3cbbf24579b53fe5cf 28-Jun-2008 Pierre Ossman <drzeus@drzeus.cx> 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>
/drivers/mmc/host/sdhci-pci.c
309d9736a903527d8bc41787b07573a054439bf6 28-May-2008 Pierre Ossman <drzeus@drzeus.cx> sdhci-pci: unaligned data with ricoh controllers

The Ricoh controllers cannot handle unaligned data blocks.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
/drivers/mmc/host/sdhci-pci.c
1e72859e3ae16346d4007024b20d2d4ef387dcc3 16-Apr-2008 Pierre Ossman <drzeus@drzeus.cx> 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>
/drivers/mmc/host/sdhci-pci.c
4489428ab5a49a6f443d9aa17f1d891417787d7b 04-Apr-2008 Pierre Ossman <drzeus@drzeus.cx> 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>
/drivers/mmc/host/sdhci-pci.c
45211e21598441a32e53cf5032b7faeac143df6d 24-Mar-2008 Pierre Ossman <drzeus@drzeus.cx> 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>
/drivers/mmc/host/sdhci-pci.c
ee53ab5d73998e502801c024a08de2c39a92c52a 05-Jul-2008 Pierre Ossman <drzeus@drzeus.cx> 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>
/drivers/mmc/host/sdhci-pci.c
22606405894a3ca5796eb4454a4b83af611fd201 23-Mar-2008 Pierre Ossman <drzeus@drzeus.cx> 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>
/drivers/mmc/host/sdhci-pci.c
3815a0ebab678c20d0d9c66af5ee9e68807b6681 22-Mar-2008 Pierre Ossman <drzeus@drzeus.cx> 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>
/drivers/mmc/host/sdhci-pci.c
b8c86fc5d8deaa5a6dc49c2c1ed144e6838bf0f3 18-Mar-2008 Pierre Ossman <drzeus@drzeus.cx> 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>
/drivers/mmc/host/sdhci-pci.c