|
|
@@ -1512,12 +1512,30 @@ static int tegra_sor_init(struct host1x_client *client)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ /*
|
|
|
+ * XXX: Remove this reset once proper hand-over from firmware to
|
|
|
+ * kernel is possible.
|
|
|
+ */
|
|
|
+ err = reset_control_assert(sor->rst);
|
|
|
+ if (err < 0) {
|
|
|
+ dev_err(sor->dev, "failed to assert SOR reset: %d\n", err);
|
|
|
+ return err;
|
|
|
+ }
|
|
|
+
|
|
|
err = clk_prepare_enable(sor->clk);
|
|
|
if (err < 0) {
|
|
|
dev_err(sor->dev, "failed to enable clock: %d\n", err);
|
|
|
return err;
|
|
|
}
|
|
|
|
|
|
+ usleep_range(1000, 3000);
|
|
|
+
|
|
|
+ err = reset_control_deassert(sor->rst);
|
|
|
+ if (err < 0) {
|
|
|
+ dev_err(sor->dev, "failed to deassert SOR reset: %d\n", err);
|
|
|
+ return err;
|
|
|
+ }
|
|
|
+
|
|
|
err = clk_prepare_enable(sor->clk_safe);
|
|
|
if (err < 0)
|
|
|
return err;
|