linux/drivers/mmc/core
David Vrabel eb65946892 sdio: extend sdio_readsb() and friends to handle any length of buffer
Extend sdio_readsb(), sdio_writesb(), sdio_memcpy_fromio(), and
sdio_memcpy_toio() to handle any length of buffer by splitting the transfer
into several IO_RW_EXTENDED commands. Typically, a transfer would be split
into a single block mode transfer followed by a byte mode transfer for the
remainder but we also handle lack of block mode support and the block size
being greater than 512 (the maximum byte mode transfer size).

host->max_seg_size <= host->max_req_size so there's no need to check both
when determining the maximum data size for a single command.

Signed-off-by: David Vrabel <david.vrabel@csr.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
2007-09-23 21:21:32 +02:00
..
bus.c mmc: whip bus uevent handler into shape 2007-09-23 20:52:20 +02:00
bus.h mmc: refactor bus operations 2007-07-09 21:27:56 +02:00
core.c mmc: fix sdio timeout calculation 2007-09-23 21:16:01 +02:00
core.h drivers/mmc/core/: make 3 functions static 2007-07-26 02:05:57 +02:00
host.c sdio: add interface for host side SDIO interrupt reporting 2007-09-23 21:13:08 +02:00
host.h mmc: refactor host class handling 2007-07-09 21:28:01 +02:00
Kconfig mmc: Use menuconfig objects 2007-05-08 22:41:55 +02:00
Makefile sdio: core support for SDIO function interrupt 2007-09-23 21:01:33 +02:00
mmc_ops.c mmc: mmc_set_data_timeout() parameter write is redundant 2007-09-23 09:15:00 +02:00
mmc_ops.h mmc: update header file paths 2007-07-26 01:53:31 +02:00
mmc.c mmc: add missing printk levels 2007-09-23 09:15:22 +02:00
sd_ops.c mmc: mmc_set_data_timeout() parameter write is redundant 2007-09-23 09:15:00 +02:00
sd_ops.h drivers/mmc/core/: make 3 functions static 2007-07-26 02:05:57 +02:00
sd.c mmc: improve error code feedback 2007-09-23 09:14:43 +02:00
sdio_bus.c sdio: set the functions' block size 2007-09-23 21:19:26 +02:00
sdio_bus.h mmc: basic SDIO device model 2007-09-23 19:45:31 +02:00
sdio_cis.c sdio: set the functions' block size 2007-09-23 21:19:26 +02:00
sdio_cis.h sdio: split up common and function CIS parsing 2007-09-23 20:44:22 +02:00
sdio_io.c sdio: extend sdio_readsb() and friends to handle any length of buffer 2007-09-23 21:21:32 +02:00
sdio_irq.c sdio: add interface for host side SDIO interrupt reporting 2007-09-23 21:13:08 +02:00
sdio_ops.c sdio: extend sdio_readsb() and friends to handle any length of buffer 2007-09-23 21:21:32 +02:00
sdio_ops.h sdio: extend sdio_readsb() and friends to handle any length of buffer 2007-09-23 21:21:32 +02:00
sdio.c sdio: add SDIO_FBR_BASE(f) macro 2007-09-23 21:16:27 +02:00
sysfs.c mmc: move layer init and workqueue to core file 2007-07-09 21:28:06 +02:00
sysfs.h mmc: move layer init and workqueue to core file 2007-07-09 21:28:06 +02:00