diff options
author | Jaehoon Chung <jh80.chung@samsung.com> | 2013-08-01 22:37:29 +0900 |
---|---|---|
committer | Chanho Park <chanho61.park@samsung.com> | 2014-11-18 11:43:57 +0900 |
commit | 64322f1c297dd240f3db102bc191075c7222608c (patch) | |
tree | 1177dc1ce06bb887cbe22e73f3bf35675687df81 /drivers/mmc/host | |
parent | b21040353db6d0971768fde5cb4b4a4da92df840 (diff) | |
download | linux-3.10-64322f1c297dd240f3db102bc191075c7222608c.tar.gz linux-3.10-64322f1c297dd240f3db102bc191075c7222608c.tar.bz2 linux-3.10-64322f1c297dd240f3db102bc191075c7222608c.zip |
mmc: dw_mmc: add the specified capabilities2 of the controller
Add the capabilities2 of controller to use *_CAP2_*
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Diffstat (limited to 'drivers/mmc/host')
-rw-r--r-- | drivers/mmc/host/dw_mmc.c | 3 | ||||
-rw-r--r-- | drivers/mmc/host/dw_mmc.h | 2 |
2 files changed, 5 insertions, 0 deletions
diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c index ee5f1676f14..564c9fbd5c7 100644 --- a/drivers/mmc/host/dw_mmc.c +++ b/drivers/mmc/host/dw_mmc.c @@ -1951,6 +1951,9 @@ static int dw_mci_init_slot(struct dw_mci *host, unsigned int id) if (host->pdata->caps2) mmc->caps2 = host->pdata->caps2; + if (drv_data && drv_data->caps2) + mmc->caps2 |= drv_data->caps2[ctrl_id]; + if (host->pdata->get_bus_wd) bus_width = host->pdata->get_bus_wd(slot->id); else if (host->dev->of_node) diff --git a/drivers/mmc/host/dw_mmc.h b/drivers/mmc/host/dw_mmc.h index 2f52c87bbce..90e2bab485c 100644 --- a/drivers/mmc/host/dw_mmc.h +++ b/drivers/mmc/host/dw_mmc.h @@ -185,6 +185,7 @@ extern int dw_mci_resume(struct dw_mci *host); /** * dw_mci driver data - dw-mshc implementation specific driver data. * @caps: mmc subsystem specified capabilities of the controller(s). + * @caps2: mmc subsystem specified capabilities2 of the controller(s). * @init: early implementation specific initialization. * @setup_clock: implementation specific clock configuration. * @prepare_command: handle CMD register extensions. @@ -197,6 +198,7 @@ extern int dw_mci_resume(struct dw_mci *host); */ struct dw_mci_drv_data { unsigned long *caps; + unsigned long *caps2; int (*init)(struct dw_mci *host); int (*setup_clock)(struct dw_mci *host); void (*prepare_command)(struct dw_mci *host, u32 *cmdr); |