From 9a05e2c384c76a02686bc522c6ca31d434d58f45 Mon Sep 17 00:00:00 2001 From: Michael Trimarchi Date: Sat, 11 Dec 2021 19:34:12 +0100 Subject: [PATCH] boot/uboot: Add ddr3 IMX firmware files to uboot package dir The mainline U-Boot can create an i.MX specific firmware image (e.g. flash.bin). For this the i.MX firmware files must be in the toplevel directory. Signed-off-by: Michael Trimarchi Signed-off-by: Arnout Vandecappelle (Essensium/Mind) --- boot/uboot/uboot.mk | 3 ++- package/freescale-imx/firmware-imx/Config.in | 5 +++++ .../firmware-imx/firmware-imx.mk | 20 +++++++++++++++++++ 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk index 9661f901ea..c89216fac4 100644 --- a/boot/uboot/uboot.mk +++ b/boot/uboot/uboot.mk @@ -187,7 +187,8 @@ UBOOT_DEPENDENCIES += firmware-imx UBOOT_IMX_FW_FILES = \ $(if $(BR2_PACKAGE_FIRMWARE_IMX_NEEDS_HDMI_FW),signed_hdmi_imx8m.bin) \ $(if $(BR2_PACKAGE_FIRMWARE_IMX_LPDDR4),lpddr4*.bin) \ - $(if $(BR2_PACKAGE_FIRMWARE_IMX_DDR4),ddr4*.bin) + $(if $(BR2_PACKAGE_FIRMWARE_IMX_DDR4),ddr4*.bin) \ + $(if $(BR2_PACKAGE_FIRMWARE_IMX_DDR3),ddr3*.bin) define UBOOT_COPY_IMX_FW_FILES $(foreach fw,$(UBOOT_IMX_FW_FILES),\ diff --git a/package/freescale-imx/firmware-imx/Config.in b/package/freescale-imx/firmware-imx/Config.in index 0bd8000b50..df266fb28e 100644 --- a/package/freescale-imx/firmware-imx/Config.in +++ b/package/freescale-imx/firmware-imx/Config.in @@ -71,6 +71,11 @@ config BR2_PACKAGE_FIRMWARE_IMX_DDR4 help Use DDR4 binaries (i.e.: ddr4_*_201810.bin). +config BR2_PACKAGE_FIRMWARE_IMX_DDR3 + bool "DDR3" + help + Use DDR3 binaries (i.e.: ddr3_*_201810.bin). + endchoice # DDR training FW config BR2_PACKAGE_FIRMWARE_IMX_IMEM_LEN diff --git a/package/freescale-imx/firmware-imx/firmware-imx.mk b/package/freescale-imx/firmware-imx/firmware-imx.mk index 60c97fd2b8..3acd053d0f 100644 --- a/package/freescale-imx/firmware-imx/firmware-imx.mk +++ b/package/freescale-imx/firmware-imx/firmware-imx.mk @@ -82,6 +82,26 @@ define FIRMWARE_IMX_INSTALL_IMAGE_DDR_FW endef endif +ifeq ($(BR2_PACKAGE_FIRMWARE_IMX_DDR3),y) +FIRMWARE_IMX_DDRFW_DIR = $(@D)/firmware/ddr/synopsys + +define FIRMWARE_IMX_INSTALL_IMAGE_DDR_FW + # Create padded versions of ddr3_* and generate ddr3_fw.bin. + # ddr3_fw.bin is needed when generating imx8-boot-sd.bin + # which is done in post-image script. + $(call FIRMWARE_IMX_PREPARE_DDR_FW, \ + ddr3_imem_1d_201810,ddr3_dmem_1d_201810,ddr3_1d_201810_fw) + cat $(FIRMWARE_IMX_DDRFW_DIR)/ddr3_1d_201810_fw.bin > \ + $(BINARIES_DIR)/ddr3_201810_fw.bin + ln -sf $(BINARIES_DIR)/ddr3_201810_fw.bin $(BINARIES_DIR)/ddr_fw.bin + + # U-Boot supports creation of the combined flash.bin image. To make + # sure that U-Boot can access all available files copy them to + # the binary dir. + cp $(FIRMWARE_IMX_DDRFW_DIR)/ddr3*.bin $(BINARIES_DIR)/ +endef +endif + # # HDMI firmware #