2 * Copyright (C) 2013 Samsung Electronics
4 * SPDX-License-Identifier: GPL-2.0+
12 #include <asm/arch/cpu.h>
13 #include <asm/arch/board.h>
14 #include <asm/arch/power.h>
15 #include <asm/arch/system.h>
16 #include <asm/arch/pinmux.h>
17 #include <asm/arch/dp_info.h>
18 #include <asm/arch/xhci-exynos.h>
19 #include <power/tps65090_pmic.h>
25 #include <dwc3-uboot.h>
26 #include <samsung-usb-phy-uboot.h>
28 DECLARE_GLOBAL_DATA_PTR;
36 static int has_edp_bridge(void)
40 node = fdtdec_next_compatible(gd->fdt_blob, 0, COMPAT_PARADE_PS8625);
42 /* No node for bridge in device tree. */
46 /* Default is with bridge ic */
50 void exynos_lcd_power_on(void)
54 #ifdef CONFIG_POWER_TPS65090
55 ret = tps65090_init();
57 printf("%s: tps65090_init() failed\n", __func__);
61 tps65090_fet_enable(6);
67 if (parade_init(gd->fdt_blob))
68 printf("%s: ps8625_init() failed\n", __func__);
71 void exynos_backlight_on(unsigned int onoff)
73 #ifdef CONFIG_POWER_TPS65090
74 tps65090_fet_enable(1);
79 int board_get_revision(void)
84 #ifdef CONFIG_USB_DWC3
85 static struct dwc3_device dwc3_device_data = {
86 .maximum_speed = USB_SPEED_SUPER,
88 .dr_mode = USB_DR_MODE_PERIPHERAL,
92 int usb_gadget_handle_interrupts(void)
94 dwc3_uboot_handle_interrupt(0);
98 int board_usb_init(int index, enum usb_init_type init)
100 struct exynos_usb3_phy *phy = (struct exynos_usb3_phy *)
101 samsung_get_base_usb3_phy();
104 error("usb3 phy not supported");
108 set_usbdrd_phy_ctrl(POWER_USB_DRD_PHY_CTRL_EN);
109 exynos5_usb3_phy_init(phy);
111 return dwc3_uboot_init(&dwc3_device_data);