mmc: core: First step in cleaning up public mmc header files

This is the first step in cleaning up the public mmc header files. In this
change we makes sure each header file builds standalone, as that helps to
resolve dependencies.

While changing this, it also seems reasonable to stop including other
headers from inside a header itself which it don't depend upon.
Additionally, in some cases such dependencies are better resolved by
forward declaring the needed struct.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Reviewed-by: Shawn Lin <shawn.lin@rock-chips.com>
This commit is contained in:
Ulf Hansson 2017-01-13 14:14:06 +01:00
Родитель e1c6ec26b8
Коммит 8da007348b
5 изменённых файлов: 8 добавлений и 11 удалений

Просмотреть файл

@ -11,7 +11,6 @@
#define LINUX_MMC_CARD_H
#include <linux/device.h>
#include <linux/mmc/core.h>
#include <linux/mod_devicetable.h>
struct mmc_cid {
@ -206,7 +205,6 @@ struct sdio_cis {
};
struct mmc_host;
struct mmc_ios;
struct sdio_func;
struct sdio_func_tuple;

Просмотреть файл

@ -8,10 +8,9 @@
#ifndef LINUX_MMC_CORE_H
#define LINUX_MMC_CORE_H
#include <linux/interrupt.h>
#include <linux/completion.h>
#include <linux/types.h>
struct request;
struct mmc_data;
struct mmc_request;

Просмотреть файл

@ -10,16 +10,12 @@
#ifndef LINUX_MMC_HOST_H
#define LINUX_MMC_HOST_H
#include <linux/leds.h>
#include <linux/mutex.h>
#include <linux/timer.h>
#include <linux/sched.h>
#include <linux/device.h>
#include <linux/fault-inject.h>
#include <linux/mmc/core.h>
#include <linux/mmc/card.h>
#include <linux/mmc/mmc.h>
#include <linux/mmc/pm.h>
struct mmc_ios {
@ -82,6 +78,8 @@ struct mmc_ios {
bool enhanced_strobe; /* hs400es selection */
};
struct mmc_host;
struct mmc_host_ops {
/*
* It is optional for the host to implement pre_req and post_req in
@ -162,9 +160,6 @@ struct mmc_host_ops {
unsigned int direction, int blk_size);
};
struct mmc_card;
struct device;
struct mmc_async_req {
/* active mmc request */
struct mmc_request *mrq;

Просмотреть файл

@ -24,6 +24,8 @@
#ifndef LINUX_MMC_MMC_H
#define LINUX_MMC_MMC_H
#include <linux/types.h>
/* Standard MMC commands (4.1) type argument response */
/* class 1 */
#define MMC_GO_IDLE_STATE 0 /* bc */

Просмотреть файл

@ -11,6 +11,9 @@
#ifndef MMC_SLOT_GPIO_H
#define MMC_SLOT_GPIO_H
#include <linux/types.h>
#include <linux/irqreturn.h>
struct mmc_host;
int mmc_gpio_get_ro(struct mmc_host *host);