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 */
24struct bootx_dt_prop {
25	u32	name;
26	int	length;
27	u32	value;
28	u32	next;
29};
30
31struct 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
48extern void bootx_init(unsigned long r4, unsigned long phys);
49
50#endif
51