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 8 #ifndef __ASM_BOOTX_H__ 9 #define __ASM_BOOTX_H__ 10 11 #include <uapi/asm/bootx.h> 12 13 /* (*) The format of the colormap is 256 * 3 * 2 bytes. Each color index 14 * is represented by 3 short words containing a 16 bits (unsigned) color 15 * component. Later versions may contain the gamma table for direct-color 16 * devices here. 17 */ 18 #define BOOTX_COLORTABLE_SIZE (256UL*3UL*2UL) 19 20 /* BootX passes the device-tree using a format that comes from earlier 21 * ppc32 kernels. This used to match what is in prom.h, but not anymore 22 * so we now define it here 23 */ 24 struct bootx_dt_prop { 25 u32 name; 26 int length; 27 u32 value; 28 u32 next; 29 }; 30 31 struct bootx_dt_node { 32 u32 unused0; 33 u32 unused1; 34 u32 phandle; /* not really available */ 35 u32 unused2; 36 u32 unused3; 37 u32 unused4; 38 u32 unused5; 39 u32 full_name; 40 u32 properties; 41 u32 parent; 42 u32 child; 43 u32 sibling; 44 u32 next; 45 u32 allnext; 46 }; 47 48 extern void bootx_init(unsigned long r4, unsigned long phys); 49 50 #endif 51