mmc: Add new VUB300 USB-to-SD/SDIO/MMC driver
Add a driver for Elan Digital System's VUB300 chip which is a USB connected SDIO/SDmem/MMC host controller. A VUB300 chip enables a USB 2.0 or USB 1.1 connected host computer to use SDIO/SD/MMC cards without the need for a directly connected, for example via PCI, SDIO host controller. Signed-off-by: Anthony F Olech <tony.olech@elandigitalsystems.com> [cjb: various punctuation and style fixes] Tested-by: Chris Ball <cjb@laptop.org> Signed-off-by: Chris Ball <cjb@laptop.org>
This commit is contained in:
parent
73627f7ce1
commit
88095e7b47
4 changed files with 2545 additions and 0 deletions
|
@ -6778,6 +6778,13 @@ L: lm-sensors@lm-sensors.org
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: drivers/hwmon/vt8231.c
|
F: drivers/hwmon/vt8231.c
|
||||||
|
|
||||||
|
VUB300 USB to SDIO/SD/MMC bridge chip
|
||||||
|
M: Tony Olech <tony.olech@elandigitalsystems.com>
|
||||||
|
L: linux-mmc@vger.kernel.org
|
||||||
|
L: linux-usb@vger.kernel.org
|
||||||
|
S: Supported
|
||||||
|
F: drivers/mmc/host/vub300.c
|
||||||
|
|
||||||
W1 DALLAS'S 1-WIRE BUS
|
W1 DALLAS'S 1-WIRE BUS
|
||||||
M: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
|
M: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
|
||||||
S: Maintained
|
S: Maintained
|
||||||
|
|
|
@ -535,6 +535,37 @@ config MMC_JZ4740
|
||||||
If you have a board based on such a SoC and with a SD/MMC slot,
|
If you have a board based on such a SoC and with a SD/MMC slot,
|
||||||
say Y or M here.
|
say Y or M here.
|
||||||
|
|
||||||
|
config MMC_VUB300
|
||||||
|
tristate "VUB300 USB to SDIO/SD/MMC Host Controller support"
|
||||||
|
depends on USB
|
||||||
|
help
|
||||||
|
This selects support for Elan Digital Systems' VUB300 chip.
|
||||||
|
|
||||||
|
The VUB300 is a USB-SDIO Host Controller Interface chip
|
||||||
|
that enables the host computer to use SDIO/SD/MMC cards
|
||||||
|
via a USB 2.0 or USB 1.1 host.
|
||||||
|
|
||||||
|
The VUB300 chip will be found in both physically separate
|
||||||
|
USB to SDIO/SD/MMC adapters and embedded on some motherboards.
|
||||||
|
|
||||||
|
The VUB300 chip supports SD and MMC memory cards in addition
|
||||||
|
to single and multifunction SDIO cards.
|
||||||
|
|
||||||
|
Some SDIO cards will need a firmware file to be loaded and
|
||||||
|
sent to VUB300 chip in order to achieve better data throughput.
|
||||||
|
Download these "Offload Pseudocode" from Elan Digital Systems'
|
||||||
|
web-site http://www.elandigitalsystems.com/support/downloads.php
|
||||||
|
and put them in /lib/firmware. Note that without these additional
|
||||||
|
firmware files the VUB300 chip will still function, but not at
|
||||||
|
the best obtainable data rate.
|
||||||
|
|
||||||
|
To compile this mmc host controller driver as a module,
|
||||||
|
choose M here: the module will be called vub300.
|
||||||
|
|
||||||
|
If you have a computer with an embedded VUB300 chip
|
||||||
|
or if you intend connecting a USB adapter based on a
|
||||||
|
VUB300 chip say Y or M here.
|
||||||
|
|
||||||
config MMC_USHC
|
config MMC_USHC
|
||||||
tristate "USB SD Host Controller (USHC) support"
|
tristate "USB SD Host Controller (USHC) support"
|
||||||
depends on USB
|
depends on USB
|
||||||
|
|
|
@ -41,6 +41,7 @@ obj-$(CONFIG_SDH_BFIN) += bfin_sdh.o
|
||||||
obj-$(CONFIG_MMC_DW) += dw_mmc.o
|
obj-$(CONFIG_MMC_DW) += dw_mmc.o
|
||||||
obj-$(CONFIG_MMC_SH_MMCIF) += sh_mmcif.o
|
obj-$(CONFIG_MMC_SH_MMCIF) += sh_mmcif.o
|
||||||
obj-$(CONFIG_MMC_JZ4740) += jz4740_mmc.o
|
obj-$(CONFIG_MMC_JZ4740) += jz4740_mmc.o
|
||||||
|
obj-$(CONFIG_MMC_VUB300) += vub300.o
|
||||||
obj-$(CONFIG_MMC_USHC) += ushc.o
|
obj-$(CONFIG_MMC_USHC) += ushc.o
|
||||||
|
|
||||||
obj-$(CONFIG_MMC_SDHCI_PLTFM) += sdhci-platform.o
|
obj-$(CONFIG_MMC_SDHCI_PLTFM) += sdhci-platform.o
|
||||||
|
|
2506
drivers/mmc/host/vub300.c
Normal file
2506
drivers/mmc/host/vub300.c
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue