49 lines
2.2 KiB
Plaintext
49 lines
2.2 KiB
Plaintext
================================================================================
|
|
BIOS ROM Image Generation with PatchXml tool
|
|
================================================================================
|
|
|
|
============
|
|
Introduction
|
|
============
|
|
The generation of BIOS ROM Images is dependent on FITC tool which builds the
|
|
images for the whole of BIOS region, including ME, Descriptor, Straps, etc.
|
|
Board specific settings are described in xml, which will be passed in to FITC
|
|
to generate the final image. Thereafter, the generated image will be strap
|
|
edited if needed. This is when FITC xml could not produce the required strap
|
|
values. Finally, the image will be copied to the output, which is RomImages
|
|
|
|
=================
|
|
Problem Statement
|
|
=================
|
|
There are quite a number of board specific rom images to be generated, and
|
|
each settings are describe in FITC xmls. All these xmls are based on a FITC
|
|
template which can be generated using FITC. However, the problem arises when
|
|
FITC's template are changed, which cause all the previous version's board
|
|
specific xml cannot be used. All the xmls have to be manually modified.
|
|
|
|
Aside from that, the process of creating the rom images are written in the
|
|
build flow's batch files. As a result, adding a new configuration, involves
|
|
the modification of multiple, if not one, batch files.
|
|
|
|
==========
|
|
Build Flow
|
|
==========
|
|
1) Iterate over all available .p file
|
|
2) Modify the FITC xml template using patch tool and .p file and
|
|
generate the xml based on the name of the .p file
|
|
3) Run FITC to generate the rom images
|
|
4) Run an optional batch file with the same name as the .p file
|
|
a) Does strap editing on the output image
|
|
b) Rename image
|
|
|
|
=================================
|
|
Method to Introduce New Rom Image
|
|
=================================
|
|
Now, integrating new rom image with different settings will be relatively
|
|
easier than before. User would just have to prepare two files, and put them
|
|
in the FITC folder, and the rom images will be automatically generated:
|
|
1) *.p file,
|
|
- which contains the changes needed to the xml according to board settings
|
|
- guide on p file syntax is commented in PatchXml.js
|
|
2) *.bat file,
|
|
- to edit the strap, if needed, and to rename the images to desired name. |