mirror of
https://xff.cz/git/u-boot/
synced 2025-09-27 21:41:16 +02:00
rockchip: rk3328: Migrate to use common board file
Use common board file for board_init() and board_late_init(), for Rockchip SoCs have very similar process. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Tested-by: Matwey V. Kornilov <matwey.kornilov@gmail.com>
This commit is contained in:
@@ -110,6 +110,7 @@ config ROCKCHIP_RK3328
|
|||||||
select ARM64
|
select ARM64
|
||||||
select SUPPORT_SPL
|
select SUPPORT_SPL
|
||||||
select SPL
|
select SPL
|
||||||
|
imply ROCKCHIP_COMMON_BOARD
|
||||||
imply SPL_ROCKCHIP_COMMON_BOARD
|
imply SPL_ROCKCHIP_COMMON_BOARD
|
||||||
imply SPL_SERIAL_SUPPORT
|
imply SPL_SERIAL_SUPPORT
|
||||||
imply SPL_SEPARATE_BSS
|
imply SPL_SEPARATE_BSS
|
||||||
|
@@ -3,67 +3,3 @@
|
|||||||
* (C) Copyright 2016 Rockchip Electronics Co., Ltd
|
* (C) Copyright 2016 Rockchip Electronics Co., Ltd
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <common.h>
|
|
||||||
#include <asm/armv8/mmu.h>
|
|
||||||
#include <dwc3-uboot.h>
|
|
||||||
#include <power/regulator.h>
|
|
||||||
#include <usb.h>
|
|
||||||
|
|
||||||
DECLARE_GLOBAL_DATA_PTR;
|
|
||||||
|
|
||||||
int board_init(void)
|
|
||||||
{
|
|
||||||
int ret;
|
|
||||||
|
|
||||||
ret = regulators_enable_boot_on(false);
|
|
||||||
if (ret)
|
|
||||||
debug("%s: Cannot enable boot on regulator\n", __func__);
|
|
||||||
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
#if defined(CONFIG_USB_GADGET) && defined(CONFIG_USB_GADGET_DWC2_OTG)
|
|
||||||
#include <usb.h>
|
|
||||||
#include <usb/dwc2_udc.h>
|
|
||||||
|
|
||||||
static struct dwc2_plat_otg_data otg_data = {
|
|
||||||
.rx_fifo_sz = 512,
|
|
||||||
.np_tx_fifo_sz = 16,
|
|
||||||
.tx_fifo_sz = 128,
|
|
||||||
};
|
|
||||||
|
|
||||||
int board_usb_init(int index, enum usb_init_type init)
|
|
||||||
{
|
|
||||||
int node;
|
|
||||||
const char *mode;
|
|
||||||
bool matched = false;
|
|
||||||
const void *blob = gd->fdt_blob;
|
|
||||||
|
|
||||||
/* find the usb_otg node */
|
|
||||||
node = fdt_node_offset_by_compatible(blob, -1,
|
|
||||||
"snps,dwc2");
|
|
||||||
|
|
||||||
while (node > 0) {
|
|
||||||
mode = fdt_getprop(blob, node, "dr_mode", NULL);
|
|
||||||
if (mode && strcmp(mode, "otg") == 0) {
|
|
||||||
matched = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
node = fdt_node_offset_by_compatible(blob, node,
|
|
||||||
"snps,dwc2");
|
|
||||||
}
|
|
||||||
if (!matched) {
|
|
||||||
debug("Not found usb_otg device\n");
|
|
||||||
return -ENODEV;
|
|
||||||
}
|
|
||||||
otg_data.regs_otg = fdtdec_get_addr(blob, node, "reg");
|
|
||||||
|
|
||||||
return dwc2_udc_probe(&otg_data);
|
|
||||||
}
|
|
||||||
|
|
||||||
int board_usb_cleanup(int index, enum usb_init_type init)
|
|
||||||
{
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
Reference in New Issue
Block a user