mirror of
https://github.com/u-boot/u-boot.git
synced 2024-12-05 02:23:31 +08:00
1bc4e8eb1d
USB gadget is not working fully as expected on RK3328, it uses a board_usb_init() function to initialize the DWC2 OTG port. The board_usb_init() function does not intgrate with the generic phy framework and as a result the USB phy is not properly configured before or after USB gadget use. Having both USB_DWC2 and DWC2_OTG enabled for the same board is also causing some issues. Trying to use rockusb or ums command after usb stop result in a freeze due to usb stop is putting the phy in a suspended state. => usb start => usb stop => ums 0 mmc 0 --> freeze due to usb phy is suspended <-- Fix this by only using one of USB_DWC2 (host) or DWC2_OTG (peripheral) depending on the most likely usage of the otg port and by migrating to use DM_USB_GADGET instead of a board_usb_init() function. The nanopi-r2 and orangepi-r1-plus variants share OTG and power using a Type-C connector, mark these boards dr_mode as peripheral, the most likely usage is for recovery and image download. The rock64 and roc-cc currently use dr_mode as host, remove the DWC2_OTG driver from these boards to ensure that the USB_DWC2 driver is used. The rock-pi-e board does not enable the usb20_otg node so both USB_DWC2 and DWC2_OTG is removed from this board. Enable RockUSB and UMS on all boards with a otg port in peripheral mode. Also with the migration to DM_USB_GADGET completed the U-Boot specific change to reorder usb nodes in the soc device tree can be reverted. Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
110 lines
2.7 KiB
Plaintext
110 lines
2.7 KiB
Plaintext
CONFIG_ARM=y
|
|
CONFIG_SKIP_LOWLEVEL_INIT=y
|
|
CONFIG_COUNTER_FREQUENCY=24000000
|
|
CONFIG_ARCH_ROCKCHIP=y
|
|
CONFIG_SPL_GPIO=y
|
|
CONFIG_NR_DRAM_BANKS=1
|
|
CONFIG_SF_DEFAULT_SPEED=20000000
|
|
CONFIG_ENV_OFFSET=0x3F8000
|
|
CONFIG_DEFAULT_DEVICE_TREE="rk3328-nanopi-r2c-plus"
|
|
CONFIG_DM_RESET=y
|
|
CONFIG_ROCKCHIP_RK3328=y
|
|
CONFIG_DEBUG_UART_BASE=0xFF130000
|
|
CONFIG_DEBUG_UART_CLOCK=24000000
|
|
CONFIG_SYS_LOAD_ADDR=0x800800
|
|
CONFIG_DEBUG_UART=y
|
|
# CONFIG_ANDROID_BOOT_IMAGE is not set
|
|
CONFIG_FIT=y
|
|
CONFIG_FIT_VERBOSE=y
|
|
CONFIG_SPL_FIT_SIGNATURE=y
|
|
CONFIG_SPL_LOAD_FIT=y
|
|
CONFIG_LEGACY_IMAGE_FORMAT=y
|
|
CONFIG_DEFAULT_FDT_FILE="rockchip/rk3328-nanopi-r2c-plus.dtb"
|
|
# CONFIG_DISPLAY_CPUINFO is not set
|
|
CONFIG_DISPLAY_BOARDINFO_LATE=y
|
|
CONFIG_SPL_MAX_SIZE=0x40000
|
|
CONFIG_SPL_PAD_TO=0x7f8000
|
|
# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
|
|
CONFIG_SPL_POWER=y
|
|
CONFIG_SPL_ATF=y
|
|
CONFIG_SPL_ATF_NO_PLATFORM_PARAM=y
|
|
CONFIG_CMD_BOOTZ=y
|
|
CONFIG_CMD_GPIO=y
|
|
CONFIG_CMD_GPT=y
|
|
CONFIG_CMD_MMC=y
|
|
CONFIG_CMD_USB=y
|
|
CONFIG_CMD_ROCKUSB=y
|
|
CONFIG_CMD_USB_MASS_STORAGE=y
|
|
# CONFIG_CMD_SETEXPR is not set
|
|
CONFIG_CMD_TIME=y
|
|
CONFIG_CMD_REGULATOR=y
|
|
CONFIG_SPL_OF_CONTROL=y
|
|
CONFIG_TPL_OF_CONTROL=y
|
|
CONFIG_OF_SPL_REMOVE_PROPS="clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
|
|
CONFIG_TPL_OF_PLATDATA=y
|
|
CONFIG_ENV_IS_IN_MMC=y
|
|
CONFIG_SYS_RELOC_GD_ENV_ADDR=y
|
|
CONFIG_SYS_MMC_ENV_DEV=1
|
|
CONFIG_TPL_DM=y
|
|
CONFIG_SPL_DM_SEQ_ALIAS=y
|
|
CONFIG_REGMAP=y
|
|
CONFIG_SPL_REGMAP=y
|
|
CONFIG_TPL_REGMAP=y
|
|
CONFIG_SYSCON=y
|
|
CONFIG_SPL_SYSCON=y
|
|
CONFIG_TPL_SYSCON=y
|
|
CONFIG_CLK=y
|
|
CONFIG_SPL_CLK=y
|
|
CONFIG_FASTBOOT_BUF_ADDR=0x800800
|
|
CONFIG_FASTBOOT_CMD_OEM_FORMAT=y
|
|
CONFIG_ROCKCHIP_GPIO=y
|
|
CONFIG_SYS_I2C_ROCKCHIP=y
|
|
CONFIG_MMC_DW=y
|
|
CONFIG_MMC_DW_ROCKCHIP=y
|
|
CONFIG_PHY_MOTORCOMM=y
|
|
CONFIG_PHY_REALTEK=y
|
|
CONFIG_DM_MDIO=y
|
|
CONFIG_DM_ETH_PHY=y
|
|
CONFIG_PHY_GIGE=y
|
|
CONFIG_ETH_DESIGNWARE=y
|
|
CONFIG_GMAC_ROCKCHIP=y
|
|
CONFIG_PHY_ROCKCHIP_INNO_USB2=y
|
|
CONFIG_PINCTRL=y
|
|
CONFIG_SPL_PINCTRL=y
|
|
CONFIG_DM_PMIC=y
|
|
CONFIG_PMIC_RK8XX=y
|
|
CONFIG_SPL_DM_REGULATOR=y
|
|
CONFIG_DM_REGULATOR_FIXED=y
|
|
CONFIG_SPL_DM_REGULATOR_FIXED=y
|
|
CONFIG_DM_REGULATOR_GPIO=y
|
|
CONFIG_SPL_DM_REGULATOR_GPIO=y
|
|
CONFIG_REGULATOR_RK8XX=y
|
|
CONFIG_PWM_ROCKCHIP=y
|
|
CONFIG_RAM=y
|
|
CONFIG_SPL_RAM=y
|
|
CONFIG_TPL_RAM=y
|
|
CONFIG_DM_RNG=y
|
|
CONFIG_RNG_ROCKCHIP=y
|
|
CONFIG_BAUDRATE=1500000
|
|
CONFIG_DEBUG_UART_SHIFT=2
|
|
CONFIG_SYS_NS16550_MEM32=y
|
|
CONFIG_SYSINFO=y
|
|
CONFIG_SYSRESET=y
|
|
# CONFIG_TPL_SYSRESET is not set
|
|
CONFIG_USB=y
|
|
CONFIG_DM_USB_GADGET=y
|
|
CONFIG_USB_XHCI_HCD=y
|
|
CONFIG_USB_XHCI_DWC3=y
|
|
CONFIG_USB_EHCI_HCD=y
|
|
CONFIG_USB_EHCI_GENERIC=y
|
|
CONFIG_USB_OHCI_HCD=y
|
|
CONFIG_USB_OHCI_GENERIC=y
|
|
CONFIG_USB_DWC3=y
|
|
# CONFIG_USB_DWC3_GADGET is not set
|
|
CONFIG_USB_GADGET=y
|
|
CONFIG_USB_GADGET_DWC2_OTG=y
|
|
CONFIG_USB_FUNCTION_ROCKUSB=y
|
|
CONFIG_SPL_TINY_MEMSET=y
|
|
CONFIG_TPL_TINY_MEMSET=y
|
|
CONFIG_ERRNO_STR=y
|