1# SPDX-License-Identifier: GPL-2.0+ 2# Copyright 2021 Google LLC 3# Written by Simon Glass <sjg@chromium.org> 4# 5# Entry-type module for 'u-boot-tpl-nodtb.bin' 6# 7 8from binman.entry import Entry 9from binman.etype.blob import Entry_blob 10 11class Entry_u_boot_tpl_nodtb(Entry_blob): 12 """TPL binary without device tree appended 13 14 Properties / Entry arguments: 15 - filename: Filename to include (default 'tpl/u-boot-tpl-nodtb.bin') 16 17 This is the U-Boot TPL binary, It does not include a device tree blob at 18 the end of it so may not be able to work without it, assuming TPL needs 19 a device tree to operate on your platform. You can add a u-boot-tpl-dtb 20 entry after this one, or use a u-boot-tpl entry instead, which normally 21 expands to a section containing u-boot-tpl-dtb, u-boot-tpl-bss-pad and 22 u-boot-tpl-dtb 23 24 TPL can access binman symbols at runtime. See :ref:`binman_fdt`. 25 26 in the binman README for more information. 27 28 The ELF file 'tpl/u-boot-tpl' must also be available for this to work, since 29 binman uses that to look up symbols to write into the TPL binary. 30 """ 31 def __init__(self, section, etype, node): 32 super().__init__(section, etype, node, auto_write_symbols=True) 33 self.elf_fname = 'tpl/u-boot-tpl' 34 35 def GetDefaultFilename(self): 36 return 'tpl/u-boot-tpl-nodtb.bin' 37