diff options
| author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-09-16 20:42:46 -0700 | 
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-09-16 20:42:46 -0700 | 
| commit | 2bcb132c693566bcb8208cc7ce66b72a4f852ecf (patch) | |
| tree | 6fc4f05ce18140d86aa78a10380a610734aeaef9 /drivers/mmc/host/mxs-mmc.c | |
| parent | 67e6da702753dac8f0540209dded80a0c4e60d81 (diff) | |
| parent | 5698bd757d55b1bb87edd1a9744ab09c142abfc2 (diff) | |
| download | olio-linux-3.10-2bcb132c693566bcb8208cc7ce66b72a4f852ecf.tar.xz olio-linux-3.10-2bcb132c693566bcb8208cc7ce66b72a4f852ecf.zip  | |
Merge 3.6-rc6 into usb-next
This resolves the merge problems with:
	drivers/usb/dwc3/gadget.c
	drivers/usb/musb/tusb6010.c
that had been seen in linux-next.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/mmc/host/mxs-mmc.c')
| -rw-r--r-- | drivers/mmc/host/mxs-mmc.c | 14 | 
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/mmc/host/mxs-mmc.c b/drivers/mmc/host/mxs-mmc.c index a51f9309ffb..ad3fcea1269 100644 --- a/drivers/mmc/host/mxs-mmc.c +++ b/drivers/mmc/host/mxs-mmc.c @@ -285,11 +285,11 @@ static irqreturn_t mxs_mmc_irq_handler(int irq, void *dev_id)  	writel(stat & MXS_MMC_IRQ_BITS,  	       host->base + HW_SSP_CTRL1(host) + STMP_OFFSET_REG_CLR); +	spin_unlock(&host->lock); +  	if ((stat & BM_SSP_CTRL1_SDIO_IRQ) && (stat & BM_SSP_CTRL1_SDIO_IRQ_EN))  		mmc_signal_sdio_irq(host->mmc); -	spin_unlock(&host->lock); -  	if (stat & BM_SSP_CTRL1_RESP_TIMEOUT_IRQ)  		cmd->error = -ETIMEDOUT;  	else if (stat & BM_SSP_CTRL1_RESP_ERR_IRQ) @@ -644,11 +644,6 @@ static void mxs_mmc_enable_sdio_irq(struct mmc_host *mmc, int enable)  		       host->base + HW_SSP_CTRL0 + STMP_OFFSET_REG_SET);  		writel(BM_SSP_CTRL1_SDIO_IRQ_EN,  		       host->base + HW_SSP_CTRL1(host) + STMP_OFFSET_REG_SET); - -		if (readl(host->base + HW_SSP_STATUS(host)) & -				BM_SSP_STATUS_SDIO_IRQ) -			mmc_signal_sdio_irq(host->mmc); -  	} else {  		writel(BM_SSP_CTRL0_SDIO_IRQ_CHECK,  		       host->base + HW_SSP_CTRL0 + STMP_OFFSET_REG_CLR); @@ -657,6 +652,11 @@ static void mxs_mmc_enable_sdio_irq(struct mmc_host *mmc, int enable)  	}  	spin_unlock_irqrestore(&host->lock, flags); + +	if (enable && readl(host->base + HW_SSP_STATUS(host)) & +			BM_SSP_STATUS_SDIO_IRQ) +		mmc_signal_sdio_irq(host->mmc); +  }  static const struct mmc_host_ops mxs_mmc_ops = {  |