iMX8QM Android Automotive OS SCFW Firmware PMIC Issue

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

iMX8QM Android Automotive OS SCFW Firmware PMIC Issue

Jump to solution
1,465 Views
cbl
Contributor V

Hello,

I am developing on a custom board with iMX8QM on it.

I compiled Android Automotive OS 12.0.0_2.1.0, referring to the "Android_Auto_User's_Guide.pdf" document.

I wrote the compiled image to eMMC with the "uuu_imx_android_flash.bat" script on the NXP iMX8QM EVK board with the "uuu_imx_android_flash.sh -f imx8qm -e -d md" command and observed that the compiled image was running on the EVK board.

I tried to run the same image on my custom board but without success.

I compared the schematics of my EVK board and my custom board and observed that the PMICs are different.

While PF8100 is used as PMIC in EVK board, PF8200 is used in my custom board.

For this reason, it has been determined that the problem is in the SCFW firmware.

The steps we have taken to resolve this problem are listed below. NXP's "Android_Auto_User's_Guide.pdf" document is referenced while performing the steps.

1) The recommended “imx-scfw-porting-kit-1.13.0” porting kit for Android Automotive OS 12.0.0_2.1.0 has been downloaded.
2) Content of file “${MY_ANDROID}/vendor/nxp/fsl-proprietary/u-boot-firmware/imx8q/board-imx8qm.c” in Android Automotive OS 12.0.0_2.1.0 BSP is in scfw-porting-kit Copied to file “scfw_export_mx8qm_b0/platform/board/mx8qm_mek/board.c”.
3) The macros “#define PMIC_CRC” and “#define PMIC_SECURE_WRITE”, which are in the file “scfw_export_mx8qm_b0/platform/board/mx8qm_mek/board.h” in the scfw-porting-kit and are in the comment in status, have been commented out.
4) With this change, the file “scfw-tcm.bin” was generated with the command “make qm B=mek R=B0”.
5) Then the generated “scfw-tcm.bin” file was copied to “${MY_ANDROID}/vendor/nxp/fslproprietary/uboot-firmware/imx8q_car/mx8qx-scfw-tcm.bin” file in BSP.
6) Finally, the bootloader was compiled in the BSP with the command "./imx-make.sh bootloader -j4".

All the files that came out as a result of the compilation were tried to be uploaded to the custom board with the "uuu_imx_android_flash.bat" script, but it was unsuccessful.

The step left during the installation is shown in the image below.

C:\Users\efecan.cebel\Desktop\android_auto_build>uuu_imx_android_flash.bat -f imx8qm -e -d md
This script is validated with uuu 1.4.182 version, it is recommended to align with this version.
dual bootloader is supported
dtbo is supported
dual slot is supported
generate lines to flash spl-imx8qm.bin to the partition of bootloader0
generate lines to flash partition-table.img to the partition of gpt
generate lines to flash bootloader-imx8qm.img to the partition of bootloader_a
generate lines to flash dtbo-imx8qm-md.img to the partition of dtbo_a
generate lines to flash boot.img to the partition of boot_a
generate lines to flash system.img to the partition of system_a
generate lines to flash system_ext.img to the partition of system_ext_a
generate lines to flash vendor.img to the partition of vendor_a
generate lines to flash product.img to the partition of product_a
generate lines to flash vbmeta-imx8qm-md.img to the partition of vbmeta_a
generate lines to flash bootloader-imx8qm.img to the partition of bootloader_b
generate lines to flash dtbo-imx8qm-md.img to the partition of dtbo_b
generate lines to flash boot.img to the partition of boot_b
generate lines to flash system.img to the partition of system_b
generate lines to flash system_ext.img to the partition of system_ext_b
generate lines to flash vendor.img to the partition of vendor_b
generate lines to flash product.img to the partition of product_b
generate lines to flash vbmeta-imx8qm-md.img to the partition of vbmeta_b
uuu script generated, start to invoke uuu with the generated uuu script
uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.4.182-0-ga561ed7

Success 0 Failure 0

1:2 1/ 1 [=================100%=================] SDPS: boot -f u-boot-imx8qm-mek-uuu.imx.link

The download does not continue after that and stops.

The same problem was encountered in my image that I created with Yocto.

The image running on EVK board does not run on my custom board. This problem was solved by generating a new “scfw-tcm.bin” file by commenting out the “#define PMIC_CRC” and “#define PMIC_SECURE_WRITE” macros, which are also in the comment in state, and it worked on the image custom board as well.

Could you please help with the problem in Android Automotive OS?

I look forward to your support in this issues.

Best regards,
Efecan

0 Kudos
Reply
1 Solution
1,422 Views
Dhruvit
NXP TechSupport
NXP TechSupport

Hi @cbl,

Please cross-check if there is any USB compatibility or stuck issue.
Are there any logs on debug console after downloading uboot in emmc mode? If yes, kindly share the same.

 

Thanks & Regards,
Dhruvit.

View solution in original post

0 Kudos
Reply
1 Reply
1,423 Views
Dhruvit
NXP TechSupport
NXP TechSupport

Hi @cbl,

Please cross-check if there is any USB compatibility or stuck issue.
Are there any logs on debug console after downloading uboot in emmc mode? If yes, kindly share the same.

 

Thanks & Regards,
Dhruvit.

0 Kudos
Reply