kernel-ark/arch/arm/mach-at91
Yauhen Kharuzhy a2255ff451 mmc: at91_mci: fix multiblock SDIO transfers
The AT91 MCI has special SDIO transfer types: SDIO block and SDIO byte
transfers, but at91_mci driver doesn't use them and handles all SDIO
transfers as ordinary MMC block transfers. This causes problems for
multiple-block SDIO transfers (in particular for 256-bytes blocks).

Fix this situation by checking the opcode for SDIO CMD53 and setting
the transfer type in the AT91_MCI_CMDR register properly.

This patch was tested with libertas SDIO driver: problem with TX
timeouts on big packets was eliminated.

Signed-off-by: Yauhen Kharuzhy <yauhen.kharuzhy@promwad.com>
Cc: <stable@kernel.org>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
2010-12-21 11:46:32 -08:00
..
include/mach mmc: at91_mci: fix multiblock SDIO transfers 2010-12-21 11:46:32 -08:00
at91cap9_devices.c
at91cap9.c
at91rm9200_devices.c at91: Convert remaining boards to new-style UART initialization 2010-11-30 17:21:29 +01:00
at91rm9200_time.c
at91rm9200.c
at91sam9_alt_reset.S AT91: reset routine cleanup, remove not needed icache flush 2010-10-26 11:32:48 +02:00
at91sam9g45_devices.c at91/atmel-mci: inclusion of sd/mmc driver in at91sam9g45 chip and board 2010-10-26 11:32:49 +02:00
at91sam9g45.c
at91sam9rl_devices.c
at91sam9rl.c AT91: reset: extend alternate reset procedure to several chips 2010-10-26 11:32:48 +02:00
at91sam926x_time.c
at91sam9260_devices.c
at91sam9260.c AT91: reset: extend alternate reset procedure to several chips 2010-10-26 11:32:48 +02:00
at91sam9261_devices.c
at91sam9261.c AT91: reset: extend alternate reset procedure to several chips 2010-10-26 11:32:48 +02:00
at91sam9263_devices.c
at91sam9263.c AT91: reset: extend alternate reset procedure to several chips 2010-10-26 11:32:48 +02:00
at91x40_time.c
at91x40.c
at572d940hf_devices.c
at572d940hf.c
board-1arm.c at91: Convert remaining boards to new-style UART initialization 2010-11-30 17:21:29 +01:00
board-afeb-9260v1.c
board-at572d940hf_ek.c
board-cam60.c
board-cap9adk.c
board-carmeva.c
board-cpu9krea.c
board-cpuat91.c
board-csb337.c
board-csb637.c
board-eb01.c
board-eb9200.c
board-ecbat91.c
board-eco920.c
board-flexibity.c
board-kafa.c at91: Convert remaining boards to new-style UART initialization 2010-11-30 17:21:29 +01:00
board-kb9202.c
board-neocore926.c
board-pcontrol-g20.c at91: Refactor Stamp9G20 and PControl G20 board file 2010-12-17 12:10:39 +01:00
board-picotux200.c at91/picotux200: remove commenting usb device and dataflash support 2010-11-30 17:23:02 +01:00
board-qil-a9260.c
board-rm9200dk.c at91: rename rm9200ek and rm9200dk board file name 2010-11-30 17:22:20 +01:00
board-rm9200ek.c at91: rename rm9200ek and rm9200dk board file name 2010-11-30 17:22:20 +01:00
board-sam9-l9260.c
board-sam9g20ek.c
board-sam9m10g45ek.c at91/atmel-mci: inclusion of sd/mmc driver in at91sam9g45 chip and board 2010-10-26 11:32:49 +02:00
board-sam9rlek.c
board-sam9260ek.c
board-sam9261ek.c
board-sam9263ek.c
board-snapper9260.c
board-stamp9g20.c at91: Refactor Stamp9G20 and PControl G20 board file 2010-12-17 12:10:39 +01:00
board-usb-a9260.c
board-usb-a9263.c
board-yl-9200.c at91/board-yl-9200: fix typo in video support 2010-11-30 17:23:41 +01:00
clock.c at91: Fix uhpck clock rate in upll case 2010-12-17 12:10:39 +01:00
clock.h
cpuidle.c
generic.h AT91: reset: extend alternate reset procedure to several chips 2010-10-26 11:32:48 +02:00
gpio.c
irq.c
Kconfig
leds.c
Makefile at91: Refactor Stamp9G20 and PControl G20 board file 2010-12-17 12:10:39 +01:00
Makefile.boot
pm_slowclock.S AT91: pm: make sure that r0 is 0 when dealing with cache operations 2010-10-26 11:32:48 +02:00
pm.c AT91: pm: make sure that r0 is 0 when dealing with cache operations 2010-10-26 11:32:48 +02:00
pm.h AT91: pm: make sure that r0 is 0 when dealing with cache operations 2010-10-26 11:32:48 +02:00
sam9_smc.c
sam9_smc.h