// SPDX-License-Identifier: GPL-2.0+ /* * Copyright (c) Aspeed Technology Inc. */ #include #include #include #include #include DECLARE_GLOBAL_DATA_PTR; int dram_init(void) { int ret; struct udevice *dev; struct ram_info ram; ret = uclass_get_device(UCLASS_RAM, 0, &dev); if (ret) { printf("cannot get DRAM driver\n"); return ret; } ret = ram_get_info(dev, &ram); if (ret) { printf("cannot get DRAM information\n"); return ret; } gd->ram_size = ram.size; return 0; } int spl_board_init_f(void) { sli_init(); dram_init(); return 0; } struct legacy_img_hdr *spl_get_load_buffer(ssize_t offset, size_t size) { return (struct legacy_img_hdr *)CONFIG_SYS_LOAD_ADDR; } void *board_spl_fit_buffer_addr(ulong fit_size, int sectors, int bl_len) { return (void *)spl_get_load_buffer(sectors, bl_len); } u32 spl_boot_device(void) { return BOOT_DEVICE_RAM; } int board_init(void) { struct udevice *dev; int i = 0; int ret; /* * Loop over all MISC uclass drivers to call the comphy code * and init all CP110 devices enabled in the DT */ while (1) { /* Call the comphy code via the MISC uclass driver */ ret = uclass_get_device(UCLASS_MISC, i++, &dev); /* We're done, once no further CP110 device is found */ if (ret) break; } return 0; } int board_late_init(void) { return 0; }