brcm2708: update against latest rpi-3.10.y branch
[openwrt/openwrt.git] / target / linux / brcm2708 / patches-3.10 / 0024-Fix-spinlock-recursion-in-sdhci-bcm2708.c.patch
1 From bd9a95701602937c6e402a4fc6786d1675431117 Mon Sep 17 00:00:00 2001
2 From: ddv2005 <ddv@abinet.com>
3 Date: Sun, 5 Aug 2012 10:42:12 -0400
4 Subject: [PATCH 024/174] Fix spinlock recursion in sdhci-bcm2708.c
5
6 ---
7 drivers/mmc/host/sdhci-bcm2708.c | 14 +++++++-------
8 1 file changed, 7 insertions(+), 7 deletions(-)
9
10 --- a/drivers/mmc/host/sdhci-bcm2708.c
11 +++ b/drivers/mmc/host/sdhci-bcm2708.c
12 @@ -643,11 +643,11 @@ void
13 sdhci_bcm2708_platdma_reset(struct sdhci_host *host, struct mmc_data *data)
14 {
15 struct sdhci_bcm2708_priv *host_priv = SDHCI_HOST_PRIV(host);
16 - unsigned long flags;
17 +// unsigned long flags;
18
19 BUG_ON(NULL == host);
20
21 - spin_lock_irqsave(&host->lock, flags);
22 +// spin_lock_irqsave(&host->lock, flags);
23
24 if (host_priv->dma_wanted) {
25 if (NULL == data) {
26 @@ -727,7 +727,7 @@ sdhci_bcm2708_platdma_reset(struct sdhci
27 #endif
28 }
29
30 - spin_unlock_irqrestore(&host->lock, flags);
31 +// spin_unlock_irqrestore(&host->lock, flags);
32 }
33
34
35 @@ -740,11 +740,11 @@ static void sdhci_bcm2708_dma_complete_i
36 int sg_len;
37 int sg_ix;
38 int sg_todo;
39 - unsigned long flags;
40 +// unsigned long flags;
41
42 BUG_ON(NULL == host);
43
44 - spin_lock_irqsave(&host->lock, flags);
45 +// spin_lock_irqsave(&host->lock, flags);
46 data = host->data;
47
48 #ifdef CHECK_DMA_USE
49 @@ -769,7 +769,7 @@ static void sdhci_bcm2708_dma_complete_i
50
51 if (NULL == data) {
52 DBG("PDMA unused completion - status 0x%X\n", dma_cs);
53 - spin_unlock_irqrestore(&host->lock, flags);
54 +// spin_unlock_irqrestore(&host->lock, flags);
55 return;
56 }
57 sg = data->sg;
58 @@ -862,7 +862,7 @@ static void sdhci_bcm2708_dma_complete_i
59 SDHCI_INT_SPACE_AVAIL);
60 }
61 }
62 - spin_unlock_irqrestore(&host->lock, flags);
63 +// spin_unlock_irqrestore(&host->lock, flags);
64 }
65
66 static irqreturn_t sdhci_bcm2708_dma_irq(int irq, void *dev_id)