RT1050 QSPI Boot image without MfgTool2.exe

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

RT1050 QSPI Boot image without MfgTool2.exe

1,558 Views
christiangradl
Contributor III

hi,

I'm using Keil µVision, thats creates an AXF file.
Is there a tool (not MfgTool2.exe) that creates an single QSPI flash image.

Or can this also be done elftosb.exe?

Which tool can create an image that has the right format (with the fingerprint "FCFB")

I want to program the QSPI flash with my firmware and not with MfgTool2.exe.

Labels (1)
0 Kudos
4 Replies

1,094 Views
jay_heng
NXP Employee
NXP Employee

You can also try this tool, with this tool, You can flash bare image into various boot devices easily and don't need to care about headers (ivt, boot data...)

GitHub - JayHeng/nxp-sec-boot-ui: A one-stop GUI tool to work with NXP MCU (Kinetis, i.MXRT, LPC) RO... 

0 Kudos

1,094 Views
christiangradl
Contributor III

Hi,

we are developing a new product without any usb, sd card, etc.

the rt1052 controller must boot from qspi (thats a fact).

We do not have ANY USB or UART.

So it is not possible for us to use any of these mfgtool, DAP, etc. things.

What are the steps now, to build a single qspi nor flash image?

0 Kudos

1,094 Views
weidong_sun
NXP TechSupport
NXP TechSupport

Hello Christian,

     if you don't want to use MFG TOOLS to program QSPI NOR FLASH, you need to do things below:

1. Creating image for QSPI NOR FLASH.

Below is steps , for you reference.

(1).Build hello_world by HyperFlash linker configurations (Hyper_Debug project configuration)

(2).copy elf hello_world.out to elftosb folder

(3).Use elftosb tool to generate image file

elftosb.exe -f imx -V -c ../../../example_bd_files/imx-flexspinor-normal-unsigned.bd -o ivt_hello_world_hyper.bin hello_world.out

(3).Use elftosb tool to generate .sb file for MFGTool, copy to “OS Firmware” folder

elftosb.exe -f kinetis -V -c ../../../example_bd_files/program_flexspinor_image_qspinor.bd -o boot_image.sb ivt_hello_world_hyper_nopadding.bin

Note:

     boot_image.sb is what you need.

2. Using DAP-LINK on EVK board.

Here DAP-LINK is OpenSDA emulator based on K20 on i.MXRT1050 EVK board, By default, firmware for the DAP-LINK supports Hyperflash drag-and-drop. It means if you connect DAP-LINK USB(J28) to PC USB, you will find a new disk in windows explorer, then drag and drop  boot_image.sb into the new disk, and programming has been done.

But if you want DAP-LINK to support QSPI NOR FLASH drag-and-drop, You should change it's default firmware to be one that supports QSPI NOR FLASH.

Note:

    Probably you don't have the 2 files:

---program_flexspinor_image_qspinor.bd

---firmware for DAP-LINK supporting QSPI NOR FLASH

you can can create a case through our "Salesforce" system and apply for them. below is steps on how to create a new case:

1. open the link

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

2.In the middle of the page, find "Support Requests",and press"Go to Tickets"

3.login in ;or register a new account and log in.

4.Press"Add a folder" to add a project folder

5.After sucess,press ?Add a new case? submit your question.

Have a nice day!

Best Regards,

Weidong

0 Kudos

955 Views
damonb
Contributor III

Was this ever solved? I also have a situation where I have no USB or serial, so the Boot ROM serial downloader is not available to me.

I just want to produce a complete, bootable, signed image which I can then Flash onto the target using a Segger J-Link. The eFuses have already been set, etc.

I cannot find any way to produce a complete image, which includes the FCB section at the start, with the NXP tools.

If I build an application in MCUXpresso, the whole image is generated, FCB + IVT + BD + Application. If I build with XIP_BOOT_HEADER_ENABLE set to 0, then the FCB, IVT and BD are removed, leaving just the Application.

Using the NXP tools such as elftosb or the Secure Provisioning Tool, IVT + BD are put back, plus CSF for signing is added. But there is no way to regenerate the FCB? Seems crazy. Is there a reason why this is not possible?

0 Kudos