Exynos850 SoC has a dual-role USB controller which can be configured in USB host role. As it's the only one USB controller on the board, it's shared between "device" USB connector (micro-USB) and host USB connectors. The hardware automatically powers on the host related parts when the micro-USB cable (for device role) is being disconnected. Also, as U-Boot lacks dynamic USB role switching capability, the only way to switch the role at the moment is to modify "dr_mode" property in U-Boot's device tree file here:
dts/upstream/src/arm64/exynos/exynos850-e850-96.dts This won't affect the dynamic role switching later in Linux kernel, as a separate (different) device tree blob is provided to the kernel. Enable the USB host support and corresponding commands to make it functional in E850-96 board. Signed-off-by: Sam Protsenko <semen.protse...@linaro.org> --- configs/e850-96_defconfig | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/configs/e850-96_defconfig b/configs/e850-96_defconfig index 412c99468f29..d7cd1b4b8ba5 100644 --- a/configs/e850-96_defconfig +++ b/configs/e850-96_defconfig @@ -29,6 +29,8 @@ CONFIG_CMD_CLK=y CONFIG_CMD_DFU=y CONFIG_CMD_GPT=y CONFIG_CMD_MMC=y +CONFIG_CMD_USB=y +CONFIG_CMD_USB_MASS_STORAGE=y CONFIG_CMD_EFIDEBUG=y # CONFIG_CMD_DATE is not set CONFIG_CMD_RTC=y @@ -63,6 +65,9 @@ CONFIG_SYSRESET=y CONFIG_SYSRESET_SYSCON=y CONFIG_USB=y CONFIG_DM_USB_GADGET=y +CONFIG_USB_XHCI_HCD=y +CONFIG_USB_XHCI_DWC3=y +CONFIG_USB_XHCI_DWC3_OF_SIMPLE=y CONFIG_USB_DWC3=y CONFIG_USB_DWC3_GENERIC=y CONFIG_USB_GADGET=y -- 2.39.5