- 25 3月, 2009 12 次提交
-
-
由 Juha Yrjola 提交于
Instead of using the bounce buffer, using scatter-gather emulation (as in the OMAP1/2 MMC driver) removes the need of one extra memory copy and improves performance. Signed-off-by: NJuha Yrjola <juha.yrjola@solidboot.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Adrian Hunter 提交于
Some MMC commands result in the card becoming busy after the response is received. This needs to be specified for the omap_hsmmc host controller, which is what this patch does. However, the effect is that some commands with no data will cause a Transfer Complete (TC) interrupt in addition to the Command Complete (CC) interrupt. In order to deal with that, the irq handler has needed a few changes also. The benefit of this change is that the omap_hsmmc host controller driver now waits for the TC interrupt while the card is busy, so the mmc_block driver needs to poll the card status just once instead of repeatedly. i.e. the net result is more sleep and less cpu. The command sequence for open-ended multi-block write with DMA is now: Issue write command CMD25 Receive CC interrupt Data is sent Receive TC interrupt (DMA is done) Issue stop command CMD12 Receive CC interrupt Card is busy Receive TC interrupt Card is now ready for next transfer Signed-off-by: NAdrian Hunter <adrian.hunter@nokia.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Jarkko Lavinen 提交于
Signed-off-by: NJarkko Lavinen <jarkko.lavinen@nokia.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Maen Suleiman 提交于
This supports MMC/SD/SDIO currently found on the Kirkwood 88F6281 and 88F6192 SoC controllers. Signed-off-by: NNicolas Pitre <nico@marvell.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Alexander Beregalov 提交于
drivers/mmc/host/tmio_mmc.h: In function 'tmio_mmc_kmap_atomic': drivers/mmc/host/tmio_mmc.h:147: error: implicit declaration of function 'kmap_atomic' drivers/mmc/host/tmio_mmc.h:147: error: 'KM_BIO_SRC_IRQ' undeclared (first use in this function) drivers/mmc/host/tmio_mmc.h: In function 'tmio_mmc_kunmap_atomic': drivers/mmc/host/tmio_mmc.h:153: error: implicit declaration of function 'kunmap_atomic' drivers/mmc/host/tmio_mmc.h:153: error: 'KM_BIO_SRC_IRQ' undeclared (first use in this function) Signed-off-by: NAlexander Beregalov <a.beregalov@gmail.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Magnus Damm 提交于
Update the tmio_mmc code to call mmc_free_host() when done using the private data. Without this fix the driver frees memory and then keeps on using it as private data. Signed-off-by: NMagnus Damm <damm@opensource.se> Acked-by: NIan Molton <ian@mnementh.co.uk> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Magnus Damm 提交于
Update the tmio_mmc code to use resource_size(). With this patch applied the correct resource size is passed to ioremap(). Signed-off-by: NMagnus Damm <damm@opensource.se> Acked-by: NIan Molton <ian@mnementh.co.uk> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Wolfgang Muees 提交于
Some cards are slower than the standard allows and need more time to respond to a command. Max. observed number of bytes was 12. Signed-off-by: NWolfgang Muees <wolfgang.mues@auerswald.de> Acked-by: NDavid Brownell <dbrownell@users.sourceforge.net> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Wolfgang Muees 提交于
Allow the platform data structures to specify spi mode 3 (if there is a pullup on the clock line or the spi hardware is not able to serve spi mode 0). Signed-off-by: NWolfgang Muees <wolfgang.mues@auerswald.de> Acked-by: NDavid Brownell <dbrownell@users.sourceforge.net> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Kim Kyuwon 提交于
Most registers lose its state when the processor wakes up from sleep state. Thus registers should be initialized, when the processor wakes up. However the current hsmmc 'resume' function doesn't consider this issue and finally makes deadlock. So this patch fixes this problem. Signed-off-by: NKim Kyuwon <chammoru@gmail.com> Signed-off-by: NAdrian Hunter <ext-adrian.hunter@nokia.com> Acked-by: NTony Lindgren <tony@atomide.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Adrian Hunter 提交于
Remove code that turns MMC1 power back on after it has been powered off (when the voltage is 1.8V). The offending code is not necessary because the host controller bus voltage is initialized to 3V when probing or resuming. Note that MMC powers up with the highest voltage available (see mmc_power_up()) which will be 3V also. Signed-off-by: NAdrian Hunter <ext-adrian.hunter@nokia.com> Acked-by: NTony Lindgren <tony@atomide.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Kay Sievers 提交于
Acked-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NKay Sievers <kay.sievers@vrfy.org> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
- 13 3月, 2009 1 次提交
-
-
由 Ben Dooks 提交于
The s3cmci driver is calling s3c2410_dma_config with incorrect data for the DCON register. The S3C2410_DCON_HWTRIG is implicit in the channel configuration and the device selection of S3C2410_DCON_CH0_SDI is incorrect as the DMA system may not select channel 0. Signed-off-by: NBen Dooks <ben@simtec.co.uk> Acked-by: NPierre Ossman <drzeus@drzeus.cx> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
- 03 3月, 2009 2 次提交
-
-
由 Andres Salomon 提交于
As described here: http://lkml.org/lkml/2009/2/20/265 The CAFE chip is broken due to commit e809517f. 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: NAndres Salomon <dilinger@debian.org> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Ben Dooks 提交于
The Samsung SDHCI (and FSL eSDHC) controller block seems to fail to generate an INT_DATA_END after the transfer has completed and the bus busy state finished. Changes in e809517f to use the new busy method are the cause of the behaviour change. Signed-off-by: NBen Dooks <ben-linux@fluff.org> Signed-off-by: NAnton Vorontsov <avorontsov@ru.mvista.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
- 19 2月, 2009 7 次提交
-
-
由 Dan Williams 提交于
The conversion of atmel-mci to dma_request_channel missed the initialization of the channel dma_slave information. The filter_fn passed to dma_request_channel is responsible for initializing the channel's private data. This implementation has the additional benefit of enabling a generic client-channel data passing mechanism. Reviewed-by: NAtsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: NDan Williams <dan.j.williams@intel.com> Acked-by: NHaavard Skinnemoen <hskinnemoen@atmel.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
由 Jean Pihet 提交于
Replace the infinite 'while() ;' loops with a finite loop version. Signed-off-by: NJean Pihet <jpihet@mvista.com> Acked-by: NTony Lindgren <tony@atomide.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Jean Pihet 提交于
Timeouts during a command that has a data phase can result in the next command issued after the command that failed not being processed, i.e. no interrupt ever occurs to indicate the command has completed. This failure can result in a deadlock. This patch resets the data state machine to clear the error in case of a command timeout. Tested on OMAP3430 chip and intensive MMC/SD device removal while transferring data. Signed-off-by: NAndy Lowe <alowe@mvista.com> Signed-off-by: NJean Pihet <jpihet@mvista.com> Signed-off-by: NAdrian Hunter <ext-adrian.hunter@nokia.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Acked-by: NTony Lindgren <tony@atomide.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 David Brownell 提交于
Based on a patch from Tony Lindgren ... after initialization, never change HCTL.SDVS except for MMC1. The other controller instances only support 1.8V in that field, although they can suport other card/SDIO/eMMC/... voltages with level shifting solutions such as external transceivers. MMC2 behavior sanity tested on Overo/WLAN, OMAP3430 SDP, and custom hardware. MMC1 also sanity tested on those platforms plus Beagle. This also fixes a bug preventing MMC2 (and also presumably MMC3) from powering down when requested. Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net> Acked-by: NTony Lindgren <tony@atomide.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 David Brownell 提交于
Work around lockdep issue when card detect IRQ handlers run in thread context ... it forces IRQF_DISABLED, which prevents all access to twl4030 card detect signals. Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net> Acked-by: NTony Lindgren <tony@atomide.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Helmut Schaa 提交于
Fix the led device naming for the sdhci driver. The led class documentation defines the led name to have the form "devicename:colour:function" while not applicable sections should be left blank. To comply with the documentation the led device name is changed from "mmc*" to "mmc*::". Signed-off-by: NHelmut Schaa <helmut.schaa@googlemail.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Yauhen Kharuzhy 提交于
This commit fixes the regression what was added by commit 088a78af "s3cmci: Support transfers which are not multiple of 32 bits." fifo_free() now returns amount of available space in FIFO buffer in bytes. But do_pio_write() writes to FIFO 32-bit words. Condition for return from cycle is (fifo_free() == 0), but when fifo has 1..3 bytes of free space then this condition will never be true and system hangs. This patch changes condition in the while() to (fifo_free() > 3). Signed-off-by: NYauhen Kharuzhy <jekhor@gmail.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
- 18 2月, 2009 1 次提交
-
-
由 Pierre Ossman 提交于
This reverts commit a4b76193. 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: NPierre Ossman <drzeus@drzeus.cx>
-
- 03 2月, 2009 5 次提交
-
-
由 Cliff Brake 提交于
With the PXA270 MMC hardware, there seems to be an issue of data corruption on writes where a 4KB data block is offset by one byte. If we delay enabling the DMA for writes until after the CMD/RESP has finished, the problem seems to be fixed. related to PXA270 Erratum #91 Tested-by: NVernon Sauder <VernonInHand@gmail.com> Signed-off-by: NCliff Brake <cbrake@bec-systems.com> Acked-by: NEric Miao <eric.miao@marvell.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Cliff Brake 提交于
Signed-off-by: NCliff Brake <cbrake@bec-systems.com> Acked-by: NEric Miao <eric.miao@marvell.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 philipl@overt.org 提交于
If ricoh_mmc suspends before sdhci_pci, it will pull the card out from under the controller, which could leave the system in a very confused state. Using suspend_late/resume_early ensures that sdhci_pci suspends first and resumes second. Signed-off-by: NPhilip Langdale <philipl@overt.org> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Linus Walleij 提交于
This patch adds support for the ST Microelectronics version of the PL180 PrimeCell. They use designer ID 0x80 and have a few alterations/bugfixes related to open drain and HW flow control. They also add some SDIO registers, I am unsure if these are in ST HW only or if this is things also added in later ARM revisions, but they are included in the mmci.h file for completeness. Signed-off-by: NLinus Walleij <linus.walleij@ericsson.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Sascha Hauer 提交于
This patch adds a MX2/MX3 specific SDHC driver. The hardware is basically the same as in the MX1, but unlike the MX1 controller the MX2 controller just works as expected. Since the MX1 driver has more workarounds for bugs than anything else I had no success with supporting MX1 and MX2 in a sane way in one driver. Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
- 24 1月, 2009 2 次提交
-
-
由 Madhusudhan Chikkature 提交于
Add omap hsmmc controller for 2430 and 34xx. Note that this controller has different registers compared to the earlier omap MMC controller, so sharing code currently is not possible. Various updates and fixes from linux-omap list have been merged into this patch. Signed-off-by: Madhusudhan Chikkature<madhu.cr@ti.com> Acked-by: NPierre Ossman <drzeus@drzeus.cx> Signed-off-by: NTony Lindgren <tony@atomide.com> Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
由 Ramax Lo 提交于
Since dma.h has been moved to arch/arm/mach-s3c2410/include/mach, use the new include path. Signed-off-by: NRamax Lo <ramaxlo@gmail.com> Acked-by: NBen Dooks <ben-linux@fluff.org> Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
- 07 1月, 2009 4 次提交
-
-
由 Dan Williams 提交于
DMA_NAK is now useless. We can just use a bool instead. Reviewed-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NDan Williams <dan.j.williams@intel.com>
-
由 Dan Williams 提交于
All users have been converted to either the general-purpose allocator, dma_find_channel, or dma_request_channel. Reviewed-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NDan Williams <dan.j.williams@intel.com>
-
由 Dan Williams 提交于
dma_request_channel provides an exclusive channel, so we no longer need to pass slave data through dmaengine. Cc: Haavard Skinnemoen <haavard.skinnemoen@atmel.com> Reviewed-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NDan Williams <dan.j.williams@intel.com>
-
由 Dan Williams 提交于
Simply, if a client wants any dmaengine channel then prevent all dmaengine modules from being removed. Once the clients are done re-enable module removal. Why?, beyond reducing complication: 1/ Tracking reference counts per-transaction in an efficient manner, as is currently done, requires a complicated scheme to avoid cache-line bouncing effects. 2/ Per-transaction ref-counting gives the false impression that a dma-driver can be gracefully removed ahead of its user (net, md, or dma-slave) 3/ None of the in-tree dma-drivers talk to hot pluggable hardware, but if such an engine were built one day we still would not need to notify clients of remove events. The driver can simply return NULL to a ->prep() request, something that is much easier for a client to handle. Reviewed-by: NAndrew Morton <akpm@linux-foundation.org> Acked-by: NMaciej Sosnowski <maciej.sosnowski@intel.com> Signed-off-by: NDan Williams <dan.j.williams@intel.com>
-
- 05 1月, 2009 1 次提交
-
-
由 Nicolas Ferre 提交于
Needed to use the atmel-mci driver in an architecture independant maner. Signed-off-by: NNicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 01 1月, 2009 5 次提交
-
-
由 Anton Vorontsov 提交于
The support is implemented via platform data accessors, new module (of_mmc_spi) will be created automatically when the driver compiles on OpenFirmware platforms. Link-time dependency will load the module automatically. Signed-off-by: NAnton Vorontsov <avorontsov@ru.mvista.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Vernon Sauder 提交于
dma_unmap_sg should be given the same length as dma_map_sg, not the value returned from dma_map_sg Signed-off-by: NVernon Sauder <vsauder@inhand.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Julia Lawall 提交于
In each case, if the NULL test is necessary, then the dereference should be moved below the NULL test. The semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // <smpl> @@ type T; expression E; identifier i,fld; statement S; @@ - T i = E->fld; + T i; ... when != E when != i if (E == NULL) S + i = E->fld; // </smpl> Signed-off-by: NJulia Lawall <julia@diku.dk> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Pierre Ossman 提交于
As reported by Randy Dunlap, having sdhci built-in and LEDs class as a module resulted in undefined symbols. Change the code to handle that case properly (by not having LEDs class support in sdhci). Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-
由 Roel Kluin 提交于
balance pci_iomap with pci_iounmap, not iounmap Signed-off-by: NRoel Kluin <roel.kluin@gmail.com> Signed-off-by: NPierre Ossman <drzeus@drzeus.cx>
-