brcm2708: update against latest rpi-3.10.y branch
[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)