mirror of
https://xff.cz/git/u-boot/
synced 2025-09-02 17:22:22 +02:00
binman: Add support for PowerPC mpc85xx 'bootpg + resetvec' entry
This entry contains the PowerPC mpc85xx boot page and resetvec sections. Signed-off-by: Jagdish Gediya <jagdish.gediya@nxp.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: York Sun <york.sun@nxp.com>
This commit is contained in:
@@ -221,6 +221,18 @@ See README.x86 for information about Intel binary blobs.
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Entry: powerpc-mpc85xx-bootpg-resetvec: PowerPC mpc85xx bootpg + resetvec code for U-Boot
|
||||||
|
-----------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
Properties / Entry arguments:
|
||||||
|
- filename: Filename of u-boot-br.bin (default 'u-boot-br.bin')
|
||||||
|
|
||||||
|
This enrty is valid for PowerPC mpc85xx cpus. This entry holds
|
||||||
|
'bootpg + resetvec' code for PowerPC mpc85xx CPUs which needs to be
|
||||||
|
placed at offset 'RESET_VECTOR_ADDRESS - 0xffc'.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Entry: section: Entry that contains other entries
|
Entry: section: Entry that contains other entries
|
||||||
-------------------------------------------------
|
-------------------------------------------------
|
||||||
|
|
||||||
|
25
tools/binman/etype/powerpc_mpc85xx_bootpg_resetvec.py
Normal file
25
tools/binman/etype/powerpc_mpc85xx_bootpg_resetvec.py
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0+
|
||||||
|
# Copyright 2018 NXP
|
||||||
|
#
|
||||||
|
# Entry-type module for the PowerPC mpc85xx bootpg and resetvec code for U-Boot
|
||||||
|
#
|
||||||
|
|
||||||
|
from entry import Entry
|
||||||
|
from blob import Entry_blob
|
||||||
|
|
||||||
|
class Entry_powerpc_mpc85xx_bootpg_resetvec(Entry_blob):
|
||||||
|
"""PowerPC mpc85xx bootpg + resetvec code for U-Boot
|
||||||
|
|
||||||
|
Properties / Entry arguments:
|
||||||
|
- filename: Filename of u-boot-br.bin (default 'u-boot-br.bin')
|
||||||
|
|
||||||
|
This enrty is valid for PowerPC mpc85xx cpus. This entry holds
|
||||||
|
'bootpg + resetvec' code for PowerPC mpc85xx CPUs which needs to be
|
||||||
|
placed at offset 'RESET_VECTOR_ADDRESS - 0xffc'.
|
||||||
|
"""
|
||||||
|
|
||||||
|
def __init__(self, section, etype, node):
|
||||||
|
Entry_blob.__init__(self, section, etype, node)
|
||||||
|
|
||||||
|
def GetDefaultFilename(self):
|
||||||
|
return 'u-boot-br.bin'
|
@@ -39,6 +39,7 @@ U_BOOT_SPL_DTB_DATA = 'spldtb'
|
|||||||
U_BOOT_TPL_DTB_DATA = 'tpldtb'
|
U_BOOT_TPL_DTB_DATA = 'tpldtb'
|
||||||
X86_START16_DATA = 'start16'
|
X86_START16_DATA = 'start16'
|
||||||
X86_START16_SPL_DATA = 'start16spl'
|
X86_START16_SPL_DATA = 'start16spl'
|
||||||
|
PPC_MPC85XX_BR_DATA = 'ppcmpc85xxbr'
|
||||||
U_BOOT_NODTB_DATA = 'nodtb with microcode pointer somewhere in here'
|
U_BOOT_NODTB_DATA = 'nodtb with microcode pointer somewhere in here'
|
||||||
U_BOOT_SPL_NODTB_DATA = 'splnodtb with microcode pointer somewhere in here'
|
U_BOOT_SPL_NODTB_DATA = 'splnodtb with microcode pointer somewhere in here'
|
||||||
FSP_DATA = 'fsp'
|
FSP_DATA = 'fsp'
|
||||||
@@ -90,6 +91,7 @@ class TestFunctional(unittest.TestCase):
|
|||||||
TestFunctional._MakeInputFile('vga.bin', VGA_DATA)
|
TestFunctional._MakeInputFile('vga.bin', VGA_DATA)
|
||||||
self._ResetDtbs()
|
self._ResetDtbs()
|
||||||
TestFunctional._MakeInputFile('u-boot-x86-16bit.bin', X86_START16_DATA)
|
TestFunctional._MakeInputFile('u-boot-x86-16bit.bin', X86_START16_DATA)
|
||||||
|
TestFunctional._MakeInputFile('u-boot-br.bin', PPC_MPC85XX_BR_DATA)
|
||||||
TestFunctional._MakeInputFile('spl/u-boot-x86-16bit-spl.bin',
|
TestFunctional._MakeInputFile('spl/u-boot-x86-16bit-spl.bin',
|
||||||
X86_START16_SPL_DATA)
|
X86_START16_SPL_DATA)
|
||||||
TestFunctional._MakeInputFile('u-boot-nodtb.bin', U_BOOT_NODTB_DATA)
|
TestFunctional._MakeInputFile('u-boot-nodtb.bin', U_BOOT_NODTB_DATA)
|
||||||
@@ -764,6 +766,12 @@ class TestFunctional(unittest.TestCase):
|
|||||||
data = self._DoReadFile('33_x86-start16.dts')
|
data = self._DoReadFile('33_x86-start16.dts')
|
||||||
self.assertEqual(X86_START16_DATA, data[:len(X86_START16_DATA)])
|
self.assertEqual(X86_START16_DATA, data[:len(X86_START16_DATA)])
|
||||||
|
|
||||||
|
def testPackPowerpcMpc85xxBootpgResetvec(self):
|
||||||
|
"""Test that an image with powerpc-mpc85xx-bootpg-resetvec can be
|
||||||
|
created"""
|
||||||
|
data = self._DoReadFile('81_powerpc_mpc85xx_bootpg_resetvec.dts')
|
||||||
|
self.assertEqual(PPC_MPC85XX_BR_DATA, data[:len(PPC_MPC85XX_BR_DATA)])
|
||||||
|
|
||||||
def _RunMicrocodeTest(self, dts_fname, nodtb_data, ucode_second=False):
|
def _RunMicrocodeTest(self, dts_fname, nodtb_data, ucode_second=False):
|
||||||
"""Handle running a test for insertion of microcode
|
"""Handle running a test for insertion of microcode
|
||||||
|
|
||||||
|
16
tools/binman/test/81_powerpc_mpc85xx_bootpg_resetvec.dts
Normal file
16
tools/binman/test/81_powerpc_mpc85xx_bootpg_resetvec.dts
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
// SPDX-License-Identifier: GPL-2.0+
|
||||||
|
/*
|
||||||
|
* Copyright 2018 NXP
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
/ {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
|
||||||
|
binman {
|
||||||
|
powerpc-mpc85xx-bootpg-resetvec {
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
Reference in New Issue
Block a user