SCFW Firmware Issue

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

SCFW Firmware Issue

跳至解决方案
1,734 次查看
cbl
Contributor V

Hello,

I am developing on the iMX8QM platform.

I have two "scfw-tcm.bin" files.

Only one of these files is running my board.

But I don't know from which source code the working binary was generated and which SCFW Porting Kit version it is.

Is there any way to find out?

Can you help me with this?

Best regards,

Efecan

0 项奖励
回复
1 解答
1,706 次查看
seb_haezebrouck
NXP Employee
NXP Employee

Unfortunately there is not much I can do here since your issue occurs on your custom board and not MEK.

A few pointers anyway:

  • if you can get a u-boot shell when trying to flash your Android build on your custom board through uuu, then it means that the SCFW did startup correctly and kicked the Cortex-A, running u-boot SPL. So your scfw_tcm.bin is probably correct. It may be setting up some hardware resources that do not please Android u-boot on your board, though.
  • you can get the SCFW sources from the SCFW porting kit - I'd suggest you use 5.4.70_2.3.3 or 2.3.4 porting kits for QM.

在原帖中查看解决方案

0 项奖励
回复
7 回复数
1,728 次查看
seb_haezebrouck
NXP Employee
NXP Employee

Hi,

u-boot will display the SCFW commit id in its welcome banner, allowing you to identify which SCFW is running.

If you do not have any u-boot running (only M4 code), you will need to retrieve the SCFW version from the M4, using the sc_misc_build_info() SCFW API. This will return the build number and commit ID of the SCFW, that you can match with the one from the SCFW release notes. See the porting guide and SCFW API guide for details on this API.

0 项奖励
回复
1,721 次查看
cbl
Contributor V

Hello @seb_haezebrouck,

So how can I search for the source code from the SCFW commit ID seen in the U-Boot log, could you please help me?

Best regards,

Efecan

0 项奖励
回复
1,718 次查看
seb_haezebrouck
NXP Employee
NXP Employee

Unfortunately, the only way I know is to browse through all the porting kit release notes and check if the u-boot commit ID matches the one mentioned in the release notes.

I can maybe speed up the process here. Which commit ID does u-boot give you?

Best regards,

Seb

0 项奖励
回复
1,716 次查看
cbl
Contributor V

Hi @seb_haezebrouck,

First of all, thank you for your quick feedback and support.

I am sharing my U-Boot log below.

U-Boot SPL 2020.04-5.4.70-2.3.0+ge42dee801e (Oct 03 2022 - 16:09:17 +0000)
Normal Boot
WDT:   Not found!
Trying to boot from MMC2_2
Primary set selected
Load image from MMC/SD 0x65000

U-Boot 2020.04-5.4.70-2.3.0+ge42dee801e (Oct 03 2022 - 16:09:17 +0000)

CPU:   NXP i.MX8QM RevB A53 at 1200 MHz at 33C

Model: NXP i.MX8QM MEK
Board: iMX8QM MEK
Boot:  SD1
DRAM:  6 GiB
TCPC:  Vendor ID [0x1fc9], Product ID [0x5110], Addr [I2C0 0x51]
MMC:   FSL_SDHC: 0, FSL_SDHC: 1
Loading Environment from MMC... Run CMD11 1.8V switch
OK
[*]-Video Link 0it6263_i2c_reg_read, read err 3
faill to read from it6263 revision, ret 3
(1280 x 720)
    [0] dpu@56180000, video
    [1] lvds-channel@0, display
    [2] lvds-to-hdmi-bridge@4c, video_bridge
In:    serial
Out:   serial
Err:   serial

BuildInfo:
  - SCFW 11102b55, SECO-FW d63fdb21, IMX-MKIMAGE 8947fea3, ATF f1d7187
  - U-Boot 2020.04-5.4.70-2.3.0+ge42dee801e

Run CMD11 1.8V switch
switch to partitions #0, OK
mmc1 is current device
flash target is MMC:1
Run CMD11 1.8V switch
Net:   
Warning: ethernet@5b040000 (eth0) using random MAC address - 1e:88:1a:13:39:c0
eth0: ethernet@5b040000 [PRIME]
Warning: ethernet@5b050000 (eth1) using random MAC address - 96:6c:2b:94:17:ee
, eth1: ethernet@5b050000
Fastboot: Normal
Normal Boot
Hit any key to stop autoboot:  0
=>

I would be very grateful if you could help me find the source code.

Best regards,

Efecan

0 项奖励
回复
1,713 次查看
seb_haezebrouck
NXP Employee
NXP Employee

SCFW 11102b55, SECO-FW d63fdb21, IMX-MKIMAGE 8947fea3, ATF f1d7187

SCFW 11102b55: you are using SCFW release 1.7.1, corresponding to the NXP release 5.4.70_2.3.1 - that you can find on Embedded Linux for i.MX Applications Processors | NXP Semiconductors. Note that this one is not recommended for production, as mentioned on the web page above. This is probably why the SCFW porting kit cannot be downloaded from the web page.

This matches the u-boot top banner:

U-Boot SPL 2020.04-5.4.70-2.3.0+ge42dee801e

Since 5.4.70_2.3.1 is a patch release on top of 2.3.0, u-boot version will still list 5.4.70_2.3.0.

0 项奖励
回复
1,710 次查看
cbl
Contributor V

Hi @seb_haezebrouck,

Thanks again for your quick feedback and support.

I have one more question.

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

I compiled the Android Automotive OS 12.0.0 image and ran it on the iMX8QM EVK board.

But the same image doesn't work on my custom board.

I found that the problem was caused by the "scfw-tcm.bin" binary.

I have a "scfw-tcm.bin" file that runs my Yocto image but I don't know from which source code it was generated.

I included the binary that runs my Yocto image in my Android Automotive OS BSP and recompiled.

After this process, I tried to upload my image, which I compiled with the "uuu_imx_android_flash.bat" script, to my custom board, but the installation cannot load the "u-boot-imx8qm-mek-uuu.imx" file and proceed to the next installation step.

When this upload is done in the Serial Port, I see a U-Boot flow, but then there is no intelligence and the upload stays here.

What changes can I make to the source file "${MY_ANDROID}/vendor/nxp/fsl-proprietary/uboot-firmware/imx8qm/board-imx8qm.c", which generates the "scfw-tcm.bin" file for this problem?

With what change in this source file can I get my image to run on my custom board?

Could you please help me with this issues?

Best regards,

Efecan

0 项奖励
回复
1,707 次查看
seb_haezebrouck
NXP Employee
NXP Employee

Unfortunately there is not much I can do here since your issue occurs on your custom board and not MEK.

A few pointers anyway:

  • if you can get a u-boot shell when trying to flash your Android build on your custom board through uuu, then it means that the SCFW did startup correctly and kicked the Cortex-A, running u-boot SPL. So your scfw_tcm.bin is probably correct. It may be setting up some hardware resources that do not please Android u-boot on your board, though.
  • you can get the SCFW sources from the SCFW porting kit - I'd suggest you use 5.4.70_2.3.3 or 2.3.4 porting kits for QM.
0 项奖励
回复