On 04/05/2018 17:43, Marek Vasut wrote:
On 05/04/2018 04:42 PM, Jean-Jacques Hiblot wrote:
On 04/05/2018 16:38, Marek Vasut wrote:
On 05/04/2018 04:34 PM, Jean-Jacques Hiblot wrote:
For USB ports that use the Driver Model, turn on the clocks during the
late init stage.
Signed-off-by: Jean-Jacques Hiblot <jjhib...@ti.com>
Reviewed-by: Tom Rini <tr...@konsulko.com>
---
Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None
board/ti/dra7xx/evm.c | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/board/ti/dra7xx/evm.c b/board/ti/dra7xx/evm.c
index 06f061c..c1e1b8e 100644
--- a/board/ti/dra7xx/evm.c
+++ b/board/ti/dra7xx/evm.c
@@ -647,6 +647,19 @@ int dram_init_banksize(void)
return 0;
}
+#if CONFIG_IS_ENABLED(DM_USB) && CONFIG_IS_ENABLED(OF_CONTROL)
+static int device_okay(const char *path)
+{
+ int node;
+
+ node = fdt_path_offset(gd->fdt_blob, path);
+ if (node < 0)
+ return 0;
+
+ return fdtdec_get_is_enabled(gd->fdt_blob, node);
+}
+#endif
+
int board_late_init(void)
{
#ifdef CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
@@ -686,6 +699,12 @@ int board_late_init(void)
if (board_is_dra71x_evm())
palmas_i2c_write_u8(LP873X_I2C_SLAVE_ADDR, 0x9, 0x7);
#endif
+#if CONFIG_IS_ENABLED(DM_USB) && CONFIG_IS_ENABLED(OF_CONTROL)
+ if (device_okay("/ocp/omap_dwc3_1@48880000"))
+ enable_usb_clocks(0);
+ if (device_okay("/ocp/omap_dwc3_2@488c0000"))
+ enable_usb_clocks(1);
+#endif
Shouldnt the driver turn this on?
AFAIK there is no clock driver for the OMAP. So we have to do it before
the driver is probed.
Maybe it's time to implement it instead of piling up those hacks ?
I was thinking along the same lines at some point but then I realized
that it will make the SPL really big. And we are already tight on some
platforms like am335x.
JJ
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot