From 93c90a9636fa508736f0247937c3090f5371b5ac Mon Sep 17 00:00:00 2001 From: Juergen Beisert Date: Tue, 23 Apr 2013 12:09:12 +0200 Subject: MXS/MCI: simplify reset of the MCI device block Since a generic block reset function is a available, also the MCI driver should make use of it. Signed-off-by: Juergen Beisert Signed-off-by: Sascha Hauer --- drivers/mci/mxs.c | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) (limited to 'drivers/mci/mxs.c') diff --git a/drivers/mci/mxs.c b/drivers/mci/mxs.c index 3657b3e496..e2ffa43c01 100644 --- a/drivers/mci/mxs.c +++ b/drivers/mci/mxs.c @@ -37,6 +37,7 @@ #include #include #include +#include #include #include #include @@ -446,19 +447,6 @@ static unsigned mxs_mci_setup_clock_speed(struct mxs_mci_host *mxs_mci, unsigned return ssp / div / rate; } -/** - * Reset the MCI engine (the hard way) - * @param hw_dev Host interface instance - * - * This will reset everything in all registers of this unit! (FIXME) - */ -static void mxs_mci_reset(struct mxs_mci_host *mxs_mci) -{ - writel(SSP_CTRL0_SFTRST, mxs_mci->regs + HW_SSP_CTRL0 + 8); - while (readl(mxs_mci->regs + HW_SSP_CTRL0) & SSP_CTRL0_SFTRST) - ; -} - /* ------------------------- MCI API -------------------------------------- */ /** @@ -475,7 +463,7 @@ static int mxs_mci_initialize(struct mci_host *host, struct device_d *mci_dev) writel(SSP_CTRL0_CLKGATE, mxs_mci->regs + HW_SSP_CTRL0 + 8); /* reset the unit */ - mxs_mci_reset(mxs_mci); + mxs_reset_block(mxs_mci->regs + HW_SSP_CTRL0, 0); /* restore the last settings */ mxs_mci_setup_timeout(mxs_mci, 0xffff); -- cgit v1.2.3