Skip to content

Commit b614749

Browse files
lyakhcjb
authored andcommitted
mmc: tmio: split core functionality, DMA and MFD glue
TMIO MMC chips contain an SD / SDIO IP core from Panasonic, similar to the one, used in MN5774 and other MN57xx controllers. These IP cores are included in many multifunction devices, in sh-mobile chips from Renesas, in the latter case they can also use DMA. Some sh-mobile implementations also have some other specialities, that MFD-based solutions don't have. This makes supporting all these features in a monolithic driver inconveniet and error-prone. This patch splits the driver into 3 parts: the core, the MFD glue and the DMA support. In case of a modular build, two modules will be built: mmc_tmio_core and mmc_tmio. Signed-off-by: Guennadi Liakhovetski <[email protected]> Acked-by: Paul Mundt <[email protected]> Signed-off-by: Chris Ball <[email protected]>
1 parent 5f52c35 commit b614749

File tree

6 files changed

+1409
-1285
lines changed

6 files changed

+1409
-1285
lines changed

drivers/mmc/host/Kconfig

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -439,9 +439,13 @@ config MMC_SDRICOH_CS
439439
To compile this driver as a module, choose M here: the
440440
module will be called sdricoh_cs.
441441

442+
config MMC_TMIO_CORE
443+
tristate
444+
442445
config MMC_TMIO
443446
tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
444447
depends on MFD_TMIO || MFD_ASIC3 || MFD_SH_MOBILE_SDHI
448+
select MMC_TMIO_CORE
445449
help
446450
This provides support for the SD/MMC cell found in TC6393XB,
447451
T7L66XB and also HTC ASIC3

drivers/mmc/host/Makefile

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,9 @@ endif
2929
obj-$(CONFIG_MMC_S3C) += s3cmci.o
3030
obj-$(CONFIG_MMC_SDRICOH_CS) += sdricoh_cs.o
3131
obj-$(CONFIG_MMC_TMIO) += tmio_mmc.o
32+
obj-$(CONFIG_MMC_TMIO_CORE) += tmio_mmc_core.o
33+
tmio_mmc_core-y := tmio_mmc_pio.o
34+
tmio_mmc_core-$(CONFIG_TMIO_MMC_DMA) += tmio_mmc_dma.o
3235
obj-$(CONFIG_MMC_CB710) += cb710-mmc.o
3336
obj-$(CONFIG_MMC_VIA_SDMMC) += via-sdmmc.o
3437
obj-$(CONFIG_SDH_BFIN) += bfin_sdh.o

0 commit comments

Comments
 (0)