// SPDX-License-Identifier: GPL-2.0+ /* * Copyright 2019 NXP */ #include #include #include #include #include #include #if CONFIG_IS_ENABLED(EFI_HAVE_CAPSULE_SUPPORT) #define IMX_BOOT_IMAGE_GUID \ EFI_GUID(0xcbabf44d, 0x12cc, 0x45dd, 0xb0, 0xc5, \ 0x29, 0xc5, 0xb7, 0x42, 0x2d, 0x34) struct efi_fw_image fw_images[] = { { .image_type_id = IMX_BOOT_IMAGE_GUID, .fw_name = u"IMX8MN-EVK-RAW", .image_index = 1, }, }; struct efi_capsule_update_info update_info = { .dfu_string = "mmc 2=flash-bin raw 0 0x2000 mmcpart 1", .num_images = ARRAY_SIZE(fw_images), .images = fw_images, }; #endif /* EFI_HAVE_CAPSULE_SUPPORT */ int board_mmc_get_env_dev(int devno) { return devno; } static void setup_fec(void) { struct iomuxc_gpr_base_regs *gpr = (struct iomuxc_gpr_base_regs *)IOMUXC_GPR_BASE_ADDR; /* Use 125M anatop REF_CLK1 for ENET1, not from external */ clrsetbits_le32(&gpr->gpr[1], 0x2000, 0); } int board_init(void) { setup_fec(); return 0; } int board_late_init(void) { #if CONFIG_IS_ENABLED(ENV_IS_IN_MMC) board_late_mmc_env_init(); #endif #ifdef CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG env_set("board_name", "DDR4 EVK"); env_set("board_rev", "iMX8MN"); #endif return 0; }