Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ec1e5d70 authored by Dinh Nguyen's avatar Dinh Nguyen Committed by Chris Ball
Browse files

mmc: dw_mmc: Add support for SOCFPGA's platform specific implementation



Like the rockchip, Altera's SOCFPGA platform specific implementation of the
dw_mmc driver requires using the HOLD register for SD commands. This patch
renames dw_mci_rockchip_prepare_command to dw_mci_pltfm_prepare_command so
that SOCFPGA and Rockchip can use it.

Signed-off-by: default avatarDinh Nguyen <dinguyen@altera.com>
Acked-by: default avatarSteffen Trumtrar <s.trumtrar@pengutronix.de>
Tested-by: default avatarSteffen Trumtrar <s.trumtrar@pengutronix.de>
Acked-by: default avatarSeungwon Jeon <tgih.jun@samsung.com>
Signed-off-by: default avatarChris Ball <chris@printf.net>
parent 47a1f522
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -25,13 +25,17 @@
#include "dw_mmc.h"
#include "dw_mmc-pltfm.h"

static void dw_mci_rockchip_prepare_command(struct dw_mci *host, u32 *cmdr)
static void dw_mci_pltfm_prepare_command(struct dw_mci *host, u32 *cmdr)
{
	*cmdr |= SDMMC_CMD_USE_HOLD_REG;
}

static const struct dw_mci_drv_data rockchip_drv_data = {
	.prepare_command	= dw_mci_rockchip_prepare_command,
	.prepare_command	= dw_mci_pltfm_prepare_command,
};

static const struct dw_mci_drv_data socfpga_drv_data = {
	.prepare_command	= dw_mci_pltfm_prepare_command,
};

int dw_mci_pltfm_register(struct platform_device *pdev,
@@ -92,6 +96,8 @@ static const struct of_device_id dw_mci_pltfm_match[] = {
	{ .compatible = "snps,dw-mshc", },
	{ .compatible = "rockchip,rk2928-dw-mshc",
		.data = &rockchip_drv_data },
	{ .compatible = "altr,socfpga-dw-mshc",
		.data = &socfpga_drv_data },
	{},
};
MODULE_DEVICE_TABLE(of, dw_mci_pltfm_match);