mmc: block: Move files to core
Once upon a time it made sense to keep the mmc block device driver and its related code, in its own directory called card. Over time, more an more functions/structures have become shared through generic mmc header files, between the core and the card directory. In other words, the relationship between them has become closer. By sharing functions/structures via generic header files, it becomes easy for outside users to abuse them. In a way to avoid that from happen, let's move the files from card directory into the core directory, as it enables us to move definitions of functions/structures into mmc core specific header files. Note, this is only the first step in providing a cleaner mmc interface for outside users. Following changes will do the actual cleanup, as that is not part of this change. Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
parent
ff6af28faf
commit
f397c8d80a
|
@ -23,8 +23,6 @@ if MMC
|
|||
|
||||
source "drivers/mmc/core/Kconfig"
|
||||
|
||||
source "drivers/mmc/card/Kconfig"
|
||||
|
||||
source "drivers/mmc/host/Kconfig"
|
||||
|
||||
endif # MMC
|
||||
|
|
|
@ -5,5 +5,4 @@
|
|||
subdir-ccflags-$(CONFIG_MMC_DEBUG) := -DDEBUG
|
||||
|
||||
obj-$(CONFIG_MMC) += core/
|
||||
obj-$(CONFIG_MMC) += card/
|
||||
obj-$(subst m,y,$(CONFIG_MMC)) += host/
|
||||
|
|
|
@ -1,70 +0,0 @@
|
|||
#
|
||||
# MMC/SD card drivers
|
||||
#
|
||||
|
||||
comment "MMC/SD/SDIO Card Drivers"
|
||||
|
||||
config MMC_BLOCK
|
||||
tristate "MMC block device driver"
|
||||
depends on BLOCK
|
||||
default y
|
||||
help
|
||||
Say Y here to enable the MMC block device driver support.
|
||||
This provides a block device driver, which you can use to
|
||||
mount the filesystem. Almost everyone wishing MMC support
|
||||
should say Y or M here.
|
||||
|
||||
config MMC_BLOCK_MINORS
|
||||
int "Number of minors per block device"
|
||||
depends on MMC_BLOCK
|
||||
range 4 256
|
||||
default 8
|
||||
help
|
||||
Number of minors per block device. One is needed for every
|
||||
partition on the disk (plus one for the whole disk).
|
||||
|
||||
Number of total MMC minors available is 256, so your number
|
||||
of supported block devices will be limited to 256 divided
|
||||
by this number.
|
||||
|
||||
Default is 8 to be backwards compatible with previous
|
||||
hardwired device numbering.
|
||||
|
||||
If unsure, say 8 here.
|
||||
|
||||
config MMC_BLOCK_BOUNCE
|
||||
bool "Use bounce buffer for simple hosts"
|
||||
depends on MMC_BLOCK
|
||||
default y
|
||||
help
|
||||
SD/MMC is a high latency protocol where it is crucial to
|
||||
send large requests in order to get high performance. Many
|
||||
controllers, however, are restricted to continuous memory
|
||||
(i.e. they can't do scatter-gather), something the kernel
|
||||
rarely can provide.
|
||||
|
||||
Say Y here to help these restricted hosts by bouncing
|
||||
requests back and forth from a large buffer. You will get
|
||||
a big performance gain at the cost of up to 64 KiB of
|
||||
physical memory.
|
||||
|
||||
If unsure, say Y here.
|
||||
|
||||
config SDIO_UART
|
||||
tristate "SDIO UART/GPS class support"
|
||||
depends on TTY
|
||||
help
|
||||
SDIO function driver for SDIO cards that implements the UART
|
||||
class, as well as the GPS class which appears like a UART.
|
||||
|
||||
config MMC_TEST
|
||||
tristate "MMC host test driver"
|
||||
help
|
||||
Development driver that performs a series of reads and writes
|
||||
to a memory card in order to expose certain well known bugs
|
||||
in host controllers. The tests are executed by writing to the
|
||||
"test" file in debugfs under each card. Note that whatever is
|
||||
on your card will be overwritten by these tests.
|
||||
|
||||
This driver is only of interest to those developing or
|
||||
testing a host driver. Most people should say N here.
|
|
@ -1,10 +0,0 @@
|
|||
#
|
||||
# Makefile for MMC/SD card drivers
|
||||
#
|
||||
|
||||
obj-$(CONFIG_MMC_BLOCK) += mmc_block.o
|
||||
mmc_block-objs := block.o queue.o
|
||||
obj-$(CONFIG_MMC_TEST) += mmc_test.o
|
||||
|
||||
obj-$(CONFIG_SDIO_UART) += sdio_uart.o
|
||||
|
|
@ -22,3 +22,69 @@ config PWRSEQ_SIMPLE
|
|||
|
||||
This driver can also be built as a module. If so, the module
|
||||
will be called pwrseq_simple.
|
||||
|
||||
config MMC_BLOCK
|
||||
tristate "MMC block device driver"
|
||||
depends on BLOCK
|
||||
default y
|
||||
help
|
||||
Say Y here to enable the MMC block device driver support.
|
||||
This provides a block device driver, which you can use to
|
||||
mount the filesystem. Almost everyone wishing MMC support
|
||||
should say Y or M here.
|
||||
|
||||
config MMC_BLOCK_MINORS
|
||||
int "Number of minors per block device"
|
||||
depends on MMC_BLOCK
|
||||
range 4 256
|
||||
default 8
|
||||
help
|
||||
Number of minors per block device. One is needed for every
|
||||
partition on the disk (plus one for the whole disk).
|
||||
|
||||
Number of total MMC minors available is 256, so your number
|
||||
of supported block devices will be limited to 256 divided
|
||||
by this number.
|
||||
|
||||
Default is 8 to be backwards compatible with previous
|
||||
hardwired device numbering.
|
||||
|
||||
If unsure, say 8 here.
|
||||
|
||||
config MMC_BLOCK_BOUNCE
|
||||
bool "Use bounce buffer for simple hosts"
|
||||
depends on MMC_BLOCK
|
||||
default y
|
||||
help
|
||||
SD/MMC is a high latency protocol where it is crucial to
|
||||
send large requests in order to get high performance. Many
|
||||
controllers, however, are restricted to continuous memory
|
||||
(i.e. they can't do scatter-gather), something the kernel
|
||||
rarely can provide.
|
||||
|
||||
Say Y here to help these restricted hosts by bouncing
|
||||
requests back and forth from a large buffer. You will get
|
||||
a big performance gain at the cost of up to 64 KiB of
|
||||
physical memory.
|
||||
|
||||
If unsure, say Y here.
|
||||
|
||||
config SDIO_UART
|
||||
tristate "SDIO UART/GPS class support"
|
||||
depends on TTY
|
||||
help
|
||||
SDIO function driver for SDIO cards that implements the UART
|
||||
class, as well as the GPS class which appears like a UART.
|
||||
|
||||
config MMC_TEST
|
||||
tristate "MMC host test driver"
|
||||
help
|
||||
Development driver that performs a series of reads and writes
|
||||
to a memory card in order to expose certain well known bugs
|
||||
in host controllers. The tests are executed by writing to the
|
||||
"test" file in debugfs under each card. Note that whatever is
|
||||
on your card will be overwritten by these tests.
|
||||
|
||||
This driver is only of interest to those developing or
|
||||
testing a host driver. Most people should say N here.
|
||||
|
||||
|
|
|
@ -12,3 +12,7 @@ mmc_core-$(CONFIG_OF) += pwrseq.o
|
|||
obj-$(CONFIG_PWRSEQ_SIMPLE) += pwrseq_simple.o
|
||||
obj-$(CONFIG_PWRSEQ_EMMC) += pwrseq_emmc.o
|
||||
mmc_core-$(CONFIG_DEBUG_FS) += debugfs.o
|
||||
obj-$(CONFIG_MMC_BLOCK) += mmc_block.o
|
||||
mmc_block-objs := block.o queue.o
|
||||
obj-$(CONFIG_MMC_TEST) += mmc_test.o
|
||||
obj-$(CONFIG_SDIO_UART) += sdio_uart.o
|
||||
|
|
|
@ -1,6 +1,4 @@
|
|||
/*
|
||||
* linux/drivers/mmc/card/mmc_test.c
|
||||
*
|
||||
* Copyright 2007-2008 Pierre Ossman
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
|
@ -1,6 +1,4 @@
|
|||
/*
|
||||
* linux/drivers/mmc/card/queue.c
|
||||
*
|
||||
* Copyright (C) 2003 Russell King, All Rights Reserved.
|
||||
* Copyright 2006-2007 Pierre Ossman
|
||||
*
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* linux/drivers/mmc/card/sdio_uart.c - SDIO UART/GPS driver
|
||||
* SDIO UART/GPS driver
|
||||
*
|
||||
* Based on drivers/serial/8250.c and drivers/serial/serial_core.c
|
||||
* by Russell King.
|
Loading…
Reference in New Issue
Block a user