46 lines
1.4 KiB
Diff
46 lines
1.4 KiB
Diff
|
From 1e6d3936f120fd4420662850da0c89eb5c3d9f03 Mon Sep 17 00:00:00 2001
|
||
|
From: P33M <P33M@github.com>
|
||
|
Date: Thu, 22 Jan 2015 17:49:23 +0000
|
||
|
Subject: [PATCH 094/114] dwc_otg: put some barriers back where they should be
|
||
|
for UP
|
||
|
|
||
|
---
|
||
|
drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c | 2 ++
|
||
|
drivers/usb/host/dwc_otg/dwc_otg_hcd.c | 1 +
|
||
|
2 files changed, 3 insertions(+)
|
||
|
|
||
|
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c b/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c
|
||
|
index 0d2b04e..276ad0c7 100644
|
||
|
--- a/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c
|
||
|
+++ b/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c
|
||
|
@@ -1280,6 +1280,7 @@ void notrace dwc_otg_fiq_fsm(struct fiq_state *state, int num_channels)
|
||
|
|
||
|
}
|
||
|
state->fiq_done++;
|
||
|
+ mb();
|
||
|
fiq_fsm_spin_unlock(&state->lock);
|
||
|
}
|
||
|
|
||
|
@@ -1340,5 +1341,6 @@ void notrace dwc_otg_fiq_nop(struct fiq_state *state)
|
||
|
|
||
|
}
|
||
|
state->fiq_done++;
|
||
|
+ mb();
|
||
|
fiq_fsm_spin_unlock(&state->lock);
|
||
|
}
|
||
|
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_hcd.c b/drivers/usb/host/dwc_otg/dwc_otg_hcd.c
|
||
|
index 124ac16..ac70f1d 100644
|
||
|
--- a/drivers/usb/host/dwc_otg/dwc_otg_hcd.c
|
||
|
+++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd.c
|
||
|
@@ -1928,6 +1928,7 @@ int fiq_fsm_queue_split_transaction(dwc_otg_hcd_t *hcd, dwc_otg_qh_t *qh)
|
||
|
st->hcchar_copy.b.chen = 1;
|
||
|
DWC_WRITE_REG32(&hc_regs->hcchar, st->hcchar_copy.d32);
|
||
|
}
|
||
|
+ mb();
|
||
|
fiq_fsm_spin_unlock(&hcd->fiq_state->lock);
|
||
|
local_fiq_enable();
|
||
|
return 0;
|
||
|
--
|
||
|
1.8.3.2
|
||
|
|