You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
openwrt/target/linux/brcm2708/patches-3.18/0094-dwc_otg-put-some-barri...

39 lines
1.1 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(+)
--- 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->fiq_done++;
+ mb();
fiq_fsm_spin_unlock(&state->lock);
}
@@ -1340,5 +1341,6 @@ void notrace dwc_otg_fiq_nop(struct fiq_
}
state->fiq_done++;
+ mb();
fiq_fsm_spin_unlock(&state->lock);
}
--- 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_
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;