mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-15 15:46:52 +07:00
mmc: sunxi: Move bus width configuration to a function
In order to improve readibility and reusability, let's move the bus width setup to a small function called by our .set_ios hook. Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
This commit is contained in:
parent
0fc4c61fff
commit
3f6c808e52
@ -855,6 +855,22 @@ static int sunxi_mmc_clk_set_rate(struct sunxi_mmc_host *host,
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void sunxi_mmc_set_bus_width(struct sunxi_mmc_host *host,
|
||||
unsigned char width)
|
||||
{
|
||||
switch (width) {
|
||||
case MMC_BUS_WIDTH_1:
|
||||
mmc_writel(host, REG_WIDTH, SDXC_WIDTH1);
|
||||
break;
|
||||
case MMC_BUS_WIDTH_4:
|
||||
mmc_writel(host, REG_WIDTH, SDXC_WIDTH4);
|
||||
break;
|
||||
case MMC_BUS_WIDTH_8:
|
||||
mmc_writel(host, REG_WIDTH, SDXC_WIDTH8);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
static void sunxi_mmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios)
|
||||
{
|
||||
struct sunxi_mmc_host *host = mmc_priv(mmc);
|
||||
@ -903,18 +919,7 @@ static void sunxi_mmc_set_ios(struct mmc_host *mmc, struct mmc_ios *ios)
|
||||
break;
|
||||
}
|
||||
|
||||
/* set bus width */
|
||||
switch (ios->bus_width) {
|
||||
case MMC_BUS_WIDTH_1:
|
||||
mmc_writel(host, REG_WIDTH, SDXC_WIDTH1);
|
||||
break;
|
||||
case MMC_BUS_WIDTH_4:
|
||||
mmc_writel(host, REG_WIDTH, SDXC_WIDTH4);
|
||||
break;
|
||||
case MMC_BUS_WIDTH_8:
|
||||
mmc_writel(host, REG_WIDTH, SDXC_WIDTH8);
|
||||
break;
|
||||
}
|
||||
sunxi_mmc_set_bus_width(host, ios->bus_width);
|
||||
|
||||
/* set ddr mode */
|
||||
rval = mmc_readl(host, REG_GCTRL);
|
||||
|
Loading…
Reference in New Issue
Block a user