mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-09-30 08:30:50 +09:00
binman: Add support for Intel FSP-T
This entry is used to hold an Intel FSP-T (Firmware Support Package Temp-RAM init) binary. Add support for this in binman. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
This commit is contained in:
parent
bc6a88fafe
commit
998d1482cd
@ -461,6 +461,22 @@ See README.x86 for information about x86 binary blobs.
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Entry: intel-fsp-t: Entry containing Intel Firmware Support Package (FSP) temp ram init
|
||||||
|
---------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
Properties / Entry arguments:
|
||||||
|
- filename: Filename of file to read into entry
|
||||||
|
|
||||||
|
This file contains a binary blob which is used on some devices to set up
|
||||||
|
temporary memory (Cache-as-RAM or CAR). U-Boot executes this code in TPL so
|
||||||
|
that it has access to memory for its stack and initial storage.
|
||||||
|
|
||||||
|
An example filename is 'fsp_t.bin'
|
||||||
|
|
||||||
|
See README.x86 for information about x86 binary blobs.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Entry: intel-ifwi: Entry containing an Intel Integrated Firmware Image (IFWI) file
|
Entry: intel-ifwi: Entry containing an Intel Integrated Firmware Image (IFWI) file
|
||||||
----------------------------------------------------------------------------------
|
----------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
26
tools/binman/etype/intel_fsp_t.py
Normal file
26
tools/binman/etype/intel_fsp_t.py
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0+
|
||||||
|
# Copyright 2019 Google LLC
|
||||||
|
# Written by Simon Glass <sjg@chromium.org>
|
||||||
|
#
|
||||||
|
# Entry-type module for Intel Firmware Support Package binary blob (T section)
|
||||||
|
#
|
||||||
|
|
||||||
|
from entry import Entry
|
||||||
|
from blob import Entry_blob
|
||||||
|
|
||||||
|
class Entry_intel_fsp_t(Entry_blob):
|
||||||
|
"""Entry containing Intel Firmware Support Package (FSP) temp ram init
|
||||||
|
|
||||||
|
Properties / Entry arguments:
|
||||||
|
- filename: Filename of file to read into entry
|
||||||
|
|
||||||
|
This file contains a binary blob which is used on some devices to set up
|
||||||
|
temporary memory (Cache-as-RAM or CAR). U-Boot executes this code in TPL so
|
||||||
|
that it has access to memory for its stack and initial storage.
|
||||||
|
|
||||||
|
An example filename is 'fsp_t.bin'
|
||||||
|
|
||||||
|
See README.x86 for information about x86 binary blobs.
|
||||||
|
"""
|
||||||
|
def __init__(self, section, etype, node):
|
||||||
|
Entry_blob.__init__(self, section, etype, node)
|
@ -74,6 +74,7 @@ COMPRESS_DATA = b'compress xxxxxxxxxxxxxxxxxxxxxx data'
|
|||||||
REFCODE_DATA = b'refcode'
|
REFCODE_DATA = b'refcode'
|
||||||
FSP_M_DATA = b'fsp_m'
|
FSP_M_DATA = b'fsp_m'
|
||||||
FSP_S_DATA = b'fsp_s'
|
FSP_S_DATA = b'fsp_s'
|
||||||
|
FSP_T_DATA = b'fsp_t'
|
||||||
|
|
||||||
# The expected size for the device tree in some tests
|
# The expected size for the device tree in some tests
|
||||||
EXTRACT_DTB_SIZE = 0x3c9
|
EXTRACT_DTB_SIZE = 0x3c9
|
||||||
@ -151,6 +152,7 @@ class TestFunctional(unittest.TestCase):
|
|||||||
TestFunctional._MakeInputFile('refcode.bin', REFCODE_DATA)
|
TestFunctional._MakeInputFile('refcode.bin', REFCODE_DATA)
|
||||||
TestFunctional._MakeInputFile('fsp_m.bin', FSP_M_DATA)
|
TestFunctional._MakeInputFile('fsp_m.bin', FSP_M_DATA)
|
||||||
TestFunctional._MakeInputFile('fsp_s.bin', FSP_S_DATA)
|
TestFunctional._MakeInputFile('fsp_s.bin', FSP_S_DATA)
|
||||||
|
TestFunctional._MakeInputFile('fsp_t.bin', FSP_T_DATA)
|
||||||
|
|
||||||
cls._elf_testdir = os.path.join(cls._indir, 'elftest')
|
cls._elf_testdir = os.path.join(cls._indir, 'elftest')
|
||||||
elf_test.BuildElfTestFiles(cls._elf_testdir)
|
elf_test.BuildElfTestFiles(cls._elf_testdir)
|
||||||
@ -3339,6 +3341,11 @@ class TestFunctional(unittest.TestCase):
|
|||||||
data = self._DoReadFile('153_intel_fsp_s.dts')
|
data = self._DoReadFile('153_intel_fsp_s.dts')
|
||||||
self.assertEqual(FSP_S_DATA, data[:len(FSP_S_DATA)])
|
self.assertEqual(FSP_S_DATA, data[:len(FSP_S_DATA)])
|
||||||
|
|
||||||
|
def testPackFspT(self):
|
||||||
|
"""Test that an image with a FSP temp-ram-init binary can be created"""
|
||||||
|
data = self._DoReadFile('154_intel_fsp_t.dts')
|
||||||
|
self.assertEqual(FSP_T_DATA, data[:len(FSP_T_DATA)])
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
unittest.main()
|
unittest.main()
|
||||||
|
14
tools/binman/test/154_intel_fsp_t.dts
Normal file
14
tools/binman/test/154_intel_fsp_t.dts
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
/ {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
|
||||||
|
binman {
|
||||||
|
size = <16>;
|
||||||
|
|
||||||
|
intel-fsp-t {
|
||||||
|
filename = "fsp_t.bin";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
Loading…
Reference in New Issue
Block a user