8e90f20bf7
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: 46649
20 lines
836 B
Diff
20 lines
836 B
Diff
--- 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)
|