xref: /rk3399_rockchip-uboot/board/rockchip/evb_rv1126/evb_rv1126.c (revision 5a157e97d57cf1982680f08fb2986d4206700d47)
11633e8d2SJoseph Chen /*
21633e8d2SJoseph Chen  * SPDX-License-Identifier:     GPL-2.0+
31633e8d2SJoseph Chen  *
41633e8d2SJoseph Chen  * (C) Copyright 2019 Rockchip Electronics Co., Ltd
51633e8d2SJoseph Chen  */
61633e8d2SJoseph Chen 
71633e8d2SJoseph Chen #include <common.h>
8*7422c372SRen Jianing #include <dwc3-uboot.h>
9*7422c372SRen Jianing #include <usb.h>
101633e8d2SJoseph Chen 
111633e8d2SJoseph Chen DECLARE_GLOBAL_DATA_PTR;
121633e8d2SJoseph Chen 
13*7422c372SRen Jianing #ifdef CONFIG_USB_DWC3
14*7422c372SRen Jianing static struct dwc3_device dwc3_device_data = {
15*7422c372SRen Jianing 	.maximum_speed = USB_SPEED_HIGH,
16*7422c372SRen Jianing 	.base = 0xffd00000,
17*7422c372SRen Jianing 	.dr_mode = USB_DR_MODE_PERIPHERAL,
18*7422c372SRen Jianing 	.index = 0,
19*7422c372SRen Jianing 	.dis_u2_susphy_quirk = 1,
20*7422c372SRen Jianing 	.usb2_phyif_utmi_width = 16,
21*7422c372SRen Jianing };
22*7422c372SRen Jianing 
usb_gadget_handle_interrupts(void)23*7422c372SRen Jianing int usb_gadget_handle_interrupts(void)
24*7422c372SRen Jianing {
25*7422c372SRen Jianing 	dwc3_uboot_handle_interrupt(0);
26*7422c372SRen Jianing 	return 0;
27*7422c372SRen Jianing }
28*7422c372SRen Jianing 
board_usb_init(int index,enum usb_init_type init)29*7422c372SRen Jianing int board_usb_init(int index, enum usb_init_type init)
30*7422c372SRen Jianing {
31*7422c372SRen Jianing 	return dwc3_uboot_init(&dwc3_device_data);
32*7422c372SRen Jianing }
33*7422c372SRen Jianing #endif
34