1 /* 2 * This file describes the structure passed from the BootX application 3 * (for MacOS) when it is used to boot Linux. 4 * 5 * Written by Benjamin Herrenschmidt. 6 * 7 * Move to LinuxBIOS by LYH yhlu@tyan.com 8 * 9 */ 10 11 12 #ifndef _BTEXT_H__ 13 #define _BTEXT_H__ 14 15 #if 1 16 #define u32 unsigned int 17 #define u16 unsigned short 18 #define u8 unsigned char 19 #endif 20 21 /* Here are the boot informations that are passed to the bootstrap 22 * Note that the kernel arguments and the device tree are appended 23 * at the end of this structure. */ 24 typedef struct boot_infos 25 { 26 27 /* NEW (vers. 2) this holds the current _logical_ base addr of 28 the frame buffer (for use by early boot message) */ 29 u8* logicalDisplayBase; 30 31 32 /* Some infos about the current MacOS display */ 33 u32 dispDeviceRect[4]; /* left,top,right,bottom */ 34 u32 dispDeviceDepth; /* (8, 16 or 32) */ 35 u32 dispDeviceBase; /* base address (physical) */ 36 u32 dispDeviceRowBytes; /* rowbytes (in bytes) */ 37 u32 dispDeviceColorsOffset; /* Colormap (8 bits only) or 0 (*) */ 38 39 40 /* The framebuffer size (optional, currently 0) */ 41 u32 frameBufferSize; /* Represents a max size, can be 0. */ 42 43 44 } boot_infos_t; 45 46 /* (*) The format of the colormap is 256 * 3 * 2 bytes. Each color index is represented 47 * by 3 short words containing a 16 bits (unsigned) color component. 48 * Later versions may contain the gamma table for direct-color devices here. 49 */ 50 #define BOOTX_COLORTABLE_SIZE (256UL*3UL*2UL) 51 52 53 /* 54 * Definitions for using the procedures in btext.c. 55 * 56 * Benjamin Herrenschmidt <benh@kernel.crashing.org> 57 */ 58 59 extern boot_infos_t disp_bi; 60 extern u32 boot_text_mapped; 61 62 #endif /* _BTEXT_H */ 63