Porting SCFW on iMX8QXP Custom Board with Different manifacurere of LPDDR4 and eMMC

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Porting SCFW on iMX8QXP Custom Board with Different manifacurere of LPDDR4 and eMMC

3,103 Views
kailas_kharse
Contributor IV


Hello,

We have developed the custom board using i.MX8QXP we have replicated the EVK board for custom board generation, But the following is the difference in the custom board. We are not using SD Card on the board. We will be using eMMC or Octal Flash via flex SPI for booting. (Currently concentrated on eMMC boot)

1. LPDDR4- 1GB --> Manufacturer ISSI

2. eMMC 32GB --> Manufacturer ISSI

I have generated the ".cfg" and ".sc" file using "MX8QXP_C0_B0_LPDDR4_RPA_1.2GHz_v14.xlsx". Register configuration Settins and Data Sheet summary for LPDDR attached.

I have followed the steps mentioned in the below link to generate the final boot image (flash.bin). I am using "scfw_tcm.bin", "mx8qx-ahab-container.image, "bl31.bin" and "u-boot.bin".

Also, I have tried using only "scfw_tcm.bin", "mx8qx-ahab-container.image" images to generate the Boot image.

U-Boot Changes: (Text in Green are new modifications)

File: include/configs/imx8qxp_<custom_board>.h

#define PHYS_SDRAM_2_SIZE 0x00000000 /* 0 GB */
#else
-#define PHYS_SDRAM_1_SIZE 0x80000000 /* 2 GB */
-/* LPDDR4 board total DDR is 3GB */
-#define PHYS_SDRAM_2_SIZE 0x40000000 /* 1 GB */
+#define PHYS_SDRAM_1_SIZE 0x40000000 /* 1 GB */
+/* LPDDR4 board total DDR is 1GB */
+#define PHYS_SDRAM_2_SIZE 0x00000000 /* 0 GB */
#endif

Configuration file changes: (board/freescale/<custom_board>/imximage.cfg)

/* Boot from SD, sector size 0x400 */
-BOOT_FROM SD 0x400
+BOOT_FROM EMMC_fastboot 0x400
/* SoC type IMX8QX */
SOC_TYPE IMX8QX

Queries:

Q1. Are the above configuration done for LPDDR4 1GB in u-boot is correct which is made in "imx8qxp_<custom_board>.h" ? As this was previously defined under a single parameter "PHYS_SDRAM_SIZE" is not available.

Q2. What shall be the sector size if I am using the "EMMC_fastboot" option?

Q3. Are there any changes in the UUU script to flash the "boot image" to the prototype?

Q4. Where can I get the DDR Calibration Tool for i.MX8QXP?


LPDDR4 Configuration: - 256Mb x16 x 2 channels
      - 8 internal banks per each channel


Attachments:

1. Attached the features Snippet from Data Sheet for LPDDR4.

2. The attached configuration is done in " DRAM register programming aid"

Reference Links:

@ https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/i-MX8-Boot-process-and-creating-a-bootab... 

@ https://developer.toradex.com/software/linux/linux-software/build-apalis-imx8-boot-imagelinux-from-s... 

@ https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/i-MX-8-8X-Family-DDR-Tools-Release/m-p/1...   (This link is currently not available or Removed)

@ https://community.nxp.com/t5/i-MX-Processors/Flashing-SCFW-Firmware-on-eMMC-using-i-MX8QXP-Custom-Bo...

 

0 Kudos
Reply
7 Replies

2,922 Views
kailas_kharse
Contributor IV

Hello Igor,

I am able to successfully port the SCFW Firmware, We are using 1GB LPDDR4, So the respective changes are done in U-boot as follows.

Also we are using the latest .cfg file as it was update for generating boot image using SCFW.

Location of U-boot: include/configs/imx8qxp_issi.h

#define PHYS_SDRAM_1_SIZE 0x40000000 /* 1 GB */
/* LPDDR4 board total DDR is 1GB */
#define PHYS_SDRAM_2_SIZE 0x00000000 /* 0 GB */
#endif

Issue:

I am getting the incorrect RAM Size.

LOGS:

Boot: MMC0
DRAM: 1022 MiB
setup_typec lookup GPIO5_9 failed ret = 3
MMC: FSL_SDHC: 0, FSL_SDHC: 1
Loading Environment from MMC... *** Warning - bad CRC, using default environment

 

Can you please help me in getting the correct RAM Size Displayed in Logs.

 

Thanks & Regards,

Kailas Kharse

0 Kudos
Reply

2,916 Views
igorpadykov
NXP Employee
NXP Employee

Hi kailas_kharse

 

seems "LOGS: DRAM: 1022 MiB" is correct for LPDDR4- 1GB part.

 

Best regards
igor

0 Kudos
Reply

3,085 Views
kailas_kharse
Contributor IV

Hello Igor,

The Link you provided for DDR Calibration Tool is not the valid link (ERROR: "Article or Comment Not Found").

 

Thanks & Regards,

Kailas Kharse

 

0 Kudos
Reply

3,074 Views
igorpadykov
NXP Employee
NXP Employee

Hi Kailas

 

I can access that link, seems this is issue with access for some links in new community,

one can try to get help through "Live Chat" :

https://www.nxp.com/support/support:SUPPORTHOME

 

Best regards
igor

0 Kudos
Reply

3,047 Views
kailas_kharse
Contributor IV

Hello Igor,

I tried to get help from the Live chat, but Live Chat is also not working, Can you please send me the "calibration tool " to registered e-mail id. Or can you provide me an alternate way to download the same?

 

Thanks & Regards,

Kailas Kharse

 

0 Kudos
Reply

3,040 Views
igorpadykov
NXP Employee
NXP Employee

Hi Kailas

 

please create service request for that

https://community.nxp.com/t5/Using-Our-Community-Knowledge/How-to-submit-a-new-question-for-NXP-Supp...

 

Best regards
igor

0 Kudos
Reply

3,093 Views
igorpadykov
NXP Employee
NXP Employee

Hi kailas_kharse

 

1. yes correct

2. if eMMC fast is enabled (the fuse is programmed), depending on the used partitions,

supported following cases:
For Boot Partition (1&2), the offset is 0K
For User Partition (7), the offset is 32K

3. I believe no

4. DDR Calibration Tool for i.MX8QXP is available on

https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/i-MX-8-8X-Family-DDR-Tools-Release/ta-p/...

 

Best regards
igor