This patch is backport of a fix to a USB prototype mismatch bug found in 3.18 kernels, originally submitted by Boris Brezillon [1]. The symptom of this bug was that devices attached to the at91 using at91_ohci on a hub never appeared and failed to initialise. [1] http://www.spinics.net/lists/linux-usb/msg125969.html Signed-off-by: Ben Whitten <ben.whitten@gmail.com> SVN-Revision: 46649master
parent
c0d0cb6d28
commit
8e90f20bf7
@ -0,0 +1,20 @@ |
||||
--- a/drivers/clk/at91/clk-usb.c
|
||||
+++ b/drivers/clk/at91/clk-usb.c
|
||||
@@ -59,7 +59,7 @@ static unsigned long at91sam9x5_clk_usb_
|
||||
static long at91sam9x5_clk_usb_determine_rate(struct clk_hw *hw,
|
||||
unsigned long rate,
|
||||
unsigned long *best_parent_rate,
|
||||
- struct clk_hw **best_parent_hw)
|
||||
+ struct clk **best_parent_clk)
|
||||
{
|
||||
struct clk *parent = NULL;
|
||||
long best_rate = -EINVAL;
|
||||
@@ -91,7 +91,7 @@ static long at91sam9x5_clk_usb_determine
|
||||
best_rate = tmp_rate;
|
||||
best_diff = tmp_diff;
|
||||
*best_parent_rate = tmp_parent_rate;
|
||||
- *best_parent_hw = __clk_get_hw(parent);
|
||||
+ *best_parent_clk = parent;
|
||||
}
|
||||
|
||||
if (!best_diff || tmp_rate < rate)
|
Loading…
Reference in new issue