[Yocto] Questions about imx_header

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

[Yocto] Questions about imx_header

Jump to solution
898 Views
charleshuang
Senior Contributor II

Hi All,

I'm investigating the difference between u-boot.bin & u-boot.imx, and try to find a way to insert some private information in u-boot.imx.

First, I find the reserved1 & reserved2 fields of flash_header_v2_t are both 0x00000000 in my u-boot.imx, and even after I modified the values, it still can boot successfully.
So, is it possible to put my own information here? Will Boot ROM use these two fields when booting?
BTW, my BSP version is fsl-yocto-3.10.17_1.0.0.
  
Second, I would like to know when and who will load DCD_v2_t header? Boot ROM or U-boot?
Furthermore, because the DCD table and plugin code are union in the imx header, how do we use DRAM when plug-in code is available? or the truth is DRAM is not available when we have plug-in code?

Thanks,
Daniel

Labels (3)
0 Kudos
1 Solution
647 Views
Yuri
NXP Employee
NXP Employee

Daniel,

please look at my comments below.

1.
As for the difference between u-boot.bin & u-boot.imx :

https://community.freescale.com/message/340349#340349


2.
According to Table 8-29 (IVT Format) of the i.MX6 DQ RM :

reserved1: Reserved and should be zero

reserved2: Reserved and should be zero

So, the reserved fields should be zero (in order to meet specs for possible
boot ROM modifications).


3.

The DCD is treated by the boot ROM before loading and launching U-boot.

In particular, DRAM should be initialized (if needed).


Have a great day,
Yuri

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

View solution in original post

0 Kudos
3 Replies
648 Views
Yuri
NXP Employee
NXP Employee

Daniel,

please look at my comments below.

1.
As for the difference between u-boot.bin & u-boot.imx :

https://community.freescale.com/message/340349#340349


2.
According to Table 8-29 (IVT Format) of the i.MX6 DQ RM :

reserved1: Reserved and should be zero

reserved2: Reserved and should be zero

So, the reserved fields should be zero (in order to meet specs for possible
boot ROM modifications).


3.

The DCD is treated by the boot ROM before loading and launching U-boot.

In particular, DRAM should be initialized (if needed).


Have a great day,
Yuri

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
647 Views
danielhung
Contributor III

Hi Yuri,

For answer 3, does it also mean the plug-in code should be only executed in internal RAM?

In addition, I find the total size of imx header would be always 0x5000 bytes, even if no plug-in code exists.

So, could we reduce the header to the exact size of imx header which the "size" field in boot_data_t header shows?

Thanks,

Daniel

0 Kudos
647 Views
Yuri
NXP Employee
NXP Employee

Daniel,


1.
  Since the DCD is processed before the plugin, it allows to run the plugin code in DRAM

(assuming it is initialyzed in the DCD). In the same time, plugin and DCD approaches serve

for the similar purposes (pre-initialization), and usually only OCRAM free area is used during
boot ROM activities. (Plugin may be called even if  the DCD table is not present in boot image).

  2.

  You may look at section 8.7.1 (Image Vector Table and Boot Data) and Table 8-28 (Image Vector
Table Offset and Initial Load Region Size) of the i.MX6 DQ RM to define what is the size of data are
involved
in boot process.

~Yuri.

0 Kudos