tools: binman: Add a new entry type for Intel VBT
authorBin Meng <bmeng.cn@gmail.com>
Wed, 16 Aug 2017 05:41:54 +0000 (22:41 -0700)
committerBin Meng <bmeng.cn@gmail.com>
Sat, 16 Sep 2017 06:57:44 +0000 (14:57 +0800)
This adds a new entry type for Intel Video BIOS Table.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
tools/binman/etype/intel_vbt.py [new file with mode: 0644]
tools/binman/func_test.py
tools/binman/test/46_intel-vbt.dts [new file with mode: 0644]

diff --git a/tools/binman/etype/intel_vbt.py b/tools/binman/etype/intel_vbt.py
new file mode 100644 (file)
index 0000000..29aedaf
--- /dev/null
@@ -0,0 +1,14 @@
+#
+# Copyright (C) 2017, Bin Meng <bmeng.cn@gmail.com>
+#
+# SPDX-License-Identifier:     GPL-2.0+
+#
+# Entry-type module for Intel Video BIOS Table binary blob
+#
+
+from entry import Entry
+from blob import Entry_blob
+
+class Entry_intel_vbt(Entry_blob):
+    def __init__(self, image, etype, node):
+        Entry_blob.__init__(self, image, etype, node)
index 8b4db41..c4207ce 100644 (file)
@@ -38,6 +38,7 @@ X86_START16_DATA    = 'start16'
 U_BOOT_NODTB_DATA   = 'nodtb with microcode pointer somewhere in here'
 FSP_DATA            = 'fsp'
 CMC_DATA            = 'cmc'
+VBT_DATA            = 'vbt'
 
 class TestFunctional(unittest.TestCase):
     """Functional tests for binman
@@ -74,6 +75,7 @@ class TestFunctional(unittest.TestCase):
         TestFunctional._MakeInputFile('u-boot-nodtb.bin', U_BOOT_NODTB_DATA)
         TestFunctional._MakeInputFile('fsp.bin', FSP_DATA)
         TestFunctional._MakeInputFile('cmc.bin', CMC_DATA)
+        TestFunctional._MakeInputFile('vbt.bin', VBT_DATA)
         self._output_setup = False
 
         # ELF file with a '_dt_ucode_base_size' symbol
@@ -801,6 +803,11 @@ class TestFunctional(unittest.TestCase):
         self.assertEqual(FSP_DATA, data[:len(FSP_DATA)])
 
     def testPackCmc(self):
-        """Test that an image with a FSP binary can be created"""
+        """Test that an image with a CMC binary can be created"""
         data = self._DoReadFile('43_intel-cmc.dts')
         self.assertEqual(CMC_DATA, data[:len(CMC_DATA)])
+
+    def testPackVbt(self):
+        """Test that an image with a VBT binary can be created"""
+        data = self._DoReadFile('46_intel-vbt.dts')
+        self.assertEqual(VBT_DATA, data[:len(VBT_DATA)])
diff --git a/tools/binman/test/46_intel-vbt.dts b/tools/binman/test/46_intel-vbt.dts
new file mode 100644 (file)
index 0000000..733f575
--- /dev/null
@@ -0,0 +1,14 @@
+/dts-v1/;
+
+/ {
+       #address-cells = <1>;
+       #size-cells = <1>;
+
+       binman {
+               size = <16>;
+
+               intel-vbt {
+                       filename = "vbt.bin";
+               };
+       };
+};