mmc: USB SD Host Controller (USHC) driver
PATCH v2 1/1 mmc: USB SD Host Controller (USHC) driver
Add a driver for USB SD Host Controller devices. These devices are Cypress Astoria chips with firmware compliant with issue 2 of CSR's USHC specification.
---
Changes since v1:
- Clarified Kconfig help text.
- mmc->f_min is 400 kHz.
Andrew, please queue for 2.6.37.
--- drivers/mmc/host/Kconfig | 14 ++ drivers/mmc/host/Makefile | 1 + drivers/mmc/host/ushc.c | 567 +++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 582 insertions(+), 0 deletions(-) create mode 100644 drivers/mmc/host/ushc.c
drivers/mmc/host/Kconfig +14 -0
@@ -451,3 +451,17 @@ config MMC_JZ4740 SoCs. If you have a board based on such a SoC and with a SD/MMC slot, say Y or M here. + +config MMC_USHC + tristate "USB SD Host Controller (USHC) support" + depends on USB + help + This selects support for USB SD Host Controllers based on + the Cypress Astoria chip with firmware compliant with CSR's + USB SD Host Controller specification (CS-118793-SP). + + CSR boards with this device include: USB<>SDIO (M1985v2), + and Ultrasira. + + Note: These controllers only support SDIO cards and do not + support MMC or SD memory cards.
drivers/mmc/host/Makefile +1 -0
@@ -36,6 +36,7 @@ obj-$(CONFIG_MMC_VIA_SDMMC) += via-sdmmc.o obj-$(CONFIG_SDH_BFIN) += bfin_sdh.o obj-$(CONFIG_MMC_SH_MMCIF) += sh_mmcif.o obj-$(CONFIG_MMC_JZ4740) += jz4740_mmc.o +obj-$(CONFIG_MMC_USHC) += ushc.o obj-$(CONFIG_MMC_SDHCI_PLTFM) += sdhci-platform.o sdhci-platform-y := sdhci-pltfm.o
drivers/mmc/host/ushc.c new file +567 -0
567 lines not on this page · raw message
Signature · 1 line
1.6.3.3
Chris Ball
AppliedHi David,
Quoted 11 lines · David Vrabel
Add a driver for USB SD Host Controller devices. These devices are Cypress Astoria chips with firmware compliant with issue 2 of CSR's USHC specification.
Signed-off-by David Vrabel <[email protected]>---
Changes since v1:
- ClarifiedKconfighelp text.
-mmc->f_minis 400 kHz.Andrew, please queue for 2.6.37.
Thanks, applied to mmc-next with the following change as per "mmc: Remove distinction between hw and phys segments". Would you like to submit a MAINTAINERS entry for this driver?
drivers/mmc/host/ushc.c +1 -2
@@ -456,8 +456,7 @@ static int ushc_probe(struct usb_interface *intf, const struct usb_device_id *id mmc->caps |= (ushc->caps &USHC_GET_CAPS_HIGH_SPD ) ?MMC_CAP_SD_HIGHSPEED :0 ; mmc->max_seg_size =512 *511 ; - mmc->max_hw_segs =1 ; - mmc->max_phys_segs =1 ; + mmc->max_segs =1 ; mmc->max_req_size =512 *511 ; mmc->max_blk_size =512 ; mmc->max_blk_count =511 ;
Signature · 2 lines
Chris Ball <[email protected]> <http://printf.net/> One Laptop Per Child