brcm2708: update to v3.18
[openwrt/svn-archive/archive.git] / target / linux / brcm2708 / patches-3.18 / 0094-dwc_otg-put-some-barriers-back-where-they-should-be-.patch
1 From 1e6d3936f120fd4420662850da0c89eb5c3d9f03 Mon Sep 17 00:00:00 2001
2 From: P33M <P33M@github.com>
3 Date: Thu, 22 Jan 2015 17:49:23 +0000
4 Subject: [PATCH 094/114] dwc_otg: put some barriers back where they should be
5 for UP
6
7 ---
8 drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c | 2 ++
9 drivers/usb/host/dwc_otg/dwc_otg_hcd.c | 1 +
10 2 files changed, 3 insertions(+)
11
12 diff --git a/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c b/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c
13 index 0d2b04e..276ad0c7 100644
14 --- a/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c
15 +++ b/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c
16 @@ -1280,6 +1280,7 @@ void notrace dwc_otg_fiq_fsm(struct fiq_state *state, int num_channels)
17
18 }
19 state->fiq_done++;
20 + mb();
21 fiq_fsm_spin_unlock(&state->lock);
22 }
23
24 @@ -1340,5 +1341,6 @@ void notrace dwc_otg_fiq_nop(struct fiq_state *state)
25
26 }
27 state->fiq_done++;
28 + mb();
29 fiq_fsm_spin_unlock(&state->lock);
30 }
31 diff --git a/drivers/usb/host/dwc_otg/dwc_otg_hcd.c b/drivers/usb/host/dwc_otg/dwc_otg_hcd.c
32 index 124ac16..ac70f1d 100644
33 --- a/drivers/usb/host/dwc_otg/dwc_otg_hcd.c
34 +++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd.c
35 @@ -1928,6 +1928,7 @@ int fiq_fsm_queue_split_transaction(dwc_otg_hcd_t *hcd, dwc_otg_qh_t *qh)
36 st->hcchar_copy.b.chen = 1;
37 DWC_WRITE_REG32(&hc_regs->hcchar, st->hcchar_copy.d32);
38 }
39 + mb();
40 fiq_fsm_spin_unlock(&hcd->fiq_state->lock);
41 local_fiq_enable();
42 return 0;
43 --
44 1.8.3.2
45