提交 8a1ad068 编写于 作者: S Simon Glass

binman: Detect bad CBFS file types

Detect when an unknown or unsupported file type is specified and report
an error.
Signed-off-by: NSimon Glass <sjg@chromium.org>
上级 69f7cb31
......@@ -190,6 +190,9 @@ class Entry_cbfs(Entry):
elif entry._type == 'stage':
cfile = cbfs.add_file_stage(entry._cbfs_name, data,
entry._cbfs_offset)
else:
entry.Raise("Unknown cbfs-type '%s' (use 'raw', 'stage')" %
entry._type)
if cfile:
entry._cbfs_file = cfile
entry.size = cfile.data_len
......
......@@ -2185,6 +2185,12 @@ class TestFunctional(unittest.TestCase):
'cbfs/u-boot-dtb:image-pos': 0xb8,
}, props)
def testCbfsBadType(self):
"""Test an image header with a no specified location is detected"""
with self.assertRaises(ValueError) as e:
self._DoReadFile('126_cbfs_bad_type.dts')
self.assertIn("Unknown cbfs-type 'badtype'", str(e.exception))
if __name__ == "__main__":
unittest.main()
// SPDX-License-Identifier: GPL-2.0+
/dts-v1/;
/ {
#address-cells = <1>;
#size-cells = <1>;
binman {
cbfs {
size = <0x100>;
u-boot {
cbfs-type = "badtype";
};
};
};
};
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册