1*4882a593Smuzhiyun.. SPDX-License-Identifier: GPL-2.0 2*4882a593Smuzhiyun 3*4882a593SmuzhiyunDeviceTree Booting 4*4882a593Smuzhiyun------------------ 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun There is one single 32bit entry point to the kernel at code32_start, 7*4882a593Smuzhiyun the decompressor (the real mode entry point goes to the same 32bit 8*4882a593Smuzhiyun entry point once it switched into protected mode). That entry point 9*4882a593Smuzhiyun supports one calling convention which is documented in 10*4882a593Smuzhiyun Documentation/x86/boot.rst 11*4882a593Smuzhiyun The physical pointer to the device-tree block is passed via setup_data 12*4882a593Smuzhiyun which requires at least boot protocol 2.09. 13*4882a593Smuzhiyun The type filed is defined as 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun #define SETUP_DTB 2 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun This device-tree is used as an extension to the "boot page". As such it 18*4882a593Smuzhiyun does not parse / consider data which is already covered by the boot 19*4882a593Smuzhiyun page. This includes memory size, reserved ranges, command line arguments 20*4882a593Smuzhiyun or initrd address. It simply holds information which can not be retrieved 21*4882a593Smuzhiyun otherwise like interrupt routing or a list of devices behind an I2C bus. 22