1# SPDX-License-Identifier: GPL-2.0+ 2# Copyright (c) 2016 Google, Inc 3# Written by Simon Glass <sjg@chromium.org> 4# 5# Entry-type module for the 16-bit x86 start-up code for U-Boot 6# 7 8from entry import Entry 9from blob import Entry_blob 10 11class Entry_x86_start16(Entry_blob): 12 """x86 16-bit start-up code for U-Boot 13 14 Properties / Entry arguments: 15 - filename: Filename of u-boot-x86-16bit.bin (default 16 'u-boot-x86-16bit.bin') 17 18 x86 CPUs start up in 16-bit mode, even if they are 32-bit CPUs. This code 19 must be placed at a particular address. This entry holds that code. It is 20 typically placed at offset CONFIG_SYS_X86_START16. The code is responsible 21 for changing to 32-bit mode and jumping to U-Boot's entry point, which 22 requires 32-bit mode (for 32-bit U-Boot). 23 24 For 64-bit U-Boot, the 'x86_start16_spl' entry type is used instead. 25 """ 26 def __init__(self, section, etype, node): 27 Entry_blob.__init__(self, section, etype, node) 28 29 def GetDefaultFilename(self): 30 return 'u-boot-x86-16bit.bin' 31