Commit 15107135 authored by Yue Hu's avatar Yue Hu Committed by Ulf Hansson

mmc: mediatek: use data instead of mrq parameter from msdc_{un}prepare_data()

We already have 'mrq->data' before calling these two functions, no
need to find it again via 'mrq->data' internally. Also remove local
data variable accordingly.
Signed-off-by: default avatarYue Hu <huyue2@yulong.com>
Link: https://lore.kernel.org/r/20210517100900.1620-1-zbestahu@gmail.comSigned-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
parent 8931acce
...@@ -724,10 +724,8 @@ static inline void msdc_dma_setup(struct msdc_host *host, struct msdc_dma *dma, ...@@ -724,10 +724,8 @@ static inline void msdc_dma_setup(struct msdc_host *host, struct msdc_dma *dma,
writel(lower_32_bits(dma->gpd_addr), host->base + MSDC_DMA_SA); writel(lower_32_bits(dma->gpd_addr), host->base + MSDC_DMA_SA);
} }
static void msdc_prepare_data(struct msdc_host *host, struct mmc_request *mrq) static void msdc_prepare_data(struct msdc_host *host, struct mmc_data *data)
{ {
struct mmc_data *data = mrq->data;
if (!(data->host_cookie & MSDC_PREPARE_FLAG)) { if (!(data->host_cookie & MSDC_PREPARE_FLAG)) {
data->host_cookie |= MSDC_PREPARE_FLAG; data->host_cookie |= MSDC_PREPARE_FLAG;
data->sg_count = dma_map_sg(host->dev, data->sg, data->sg_len, data->sg_count = dma_map_sg(host->dev, data->sg, data->sg_len,
...@@ -735,10 +733,8 @@ static void msdc_prepare_data(struct msdc_host *host, struct mmc_request *mrq) ...@@ -735,10 +733,8 @@ static void msdc_prepare_data(struct msdc_host *host, struct mmc_request *mrq)
} }
} }
static void msdc_unprepare_data(struct msdc_host *host, struct mmc_request *mrq) static void msdc_unprepare_data(struct msdc_host *host, struct mmc_data *data)
{ {
struct mmc_data *data = mrq->data;
if (data->host_cookie & MSDC_ASYNC_FLAG) if (data->host_cookie & MSDC_ASYNC_FLAG)
return; return;
...@@ -1140,7 +1136,7 @@ static void msdc_request_done(struct msdc_host *host, struct mmc_request *mrq) ...@@ -1140,7 +1136,7 @@ static void msdc_request_done(struct msdc_host *host, struct mmc_request *mrq)
msdc_track_cmd_data(host, mrq->cmd, mrq->data); msdc_track_cmd_data(host, mrq->cmd, mrq->data);
if (mrq->data) if (mrq->data)
msdc_unprepare_data(host, mrq); msdc_unprepare_data(host, mrq->data);
if (host->error) if (host->error)
msdc_reset_hw(host); msdc_reset_hw(host);
mmc_request_done(mmc_from_priv(host), mrq); mmc_request_done(mmc_from_priv(host), mrq);
...@@ -1311,7 +1307,7 @@ static void msdc_ops_request(struct mmc_host *mmc, struct mmc_request *mrq) ...@@ -1311,7 +1307,7 @@ static void msdc_ops_request(struct mmc_host *mmc, struct mmc_request *mrq)
host->mrq = mrq; host->mrq = mrq;
if (mrq->data) if (mrq->data)
msdc_prepare_data(host, mrq); msdc_prepare_data(host, mrq->data);
/* if SBC is required, we have HW option and SW option. /* if SBC is required, we have HW option and SW option.
* if HW option is enabled, and SBC does not have "special" flags, * if HW option is enabled, and SBC does not have "special" flags,
...@@ -1332,7 +1328,7 @@ static void msdc_pre_req(struct mmc_host *mmc, struct mmc_request *mrq) ...@@ -1332,7 +1328,7 @@ static void msdc_pre_req(struct mmc_host *mmc, struct mmc_request *mrq)
if (!data) if (!data)
return; return;
msdc_prepare_data(host, mrq); msdc_prepare_data(host, data);
data->host_cookie |= MSDC_ASYNC_FLAG; data->host_cookie |= MSDC_ASYNC_FLAG;
} }
...@@ -1340,14 +1336,14 @@ static void msdc_post_req(struct mmc_host *mmc, struct mmc_request *mrq, ...@@ -1340,14 +1336,14 @@ static void msdc_post_req(struct mmc_host *mmc, struct mmc_request *mrq,
int err) int err)
{ {
struct msdc_host *host = mmc_priv(mmc); struct msdc_host *host = mmc_priv(mmc);
struct mmc_data *data; struct mmc_data *data = mrq->data;
data = mrq->data;
if (!data) if (!data)
return; return;
if (data->host_cookie) { if (data->host_cookie) {
data->host_cookie &= ~MSDC_ASYNC_FLAG; data->host_cookie &= ~MSDC_ASYNC_FLAG;
msdc_unprepare_data(host, mrq); msdc_unprepare_data(host, data);
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment