12e601613SDavid Gibson #ifndef _PPC_BOOT_OF_H_ 22e601613SDavid Gibson #define _PPC_BOOT_OF_H_ 32e601613SDavid Gibson 498fd433aSCédric Le Goater #include "swab.h" 598fd433aSCédric Le Goater 62e601613SDavid Gibson typedef void *phandle; 764130109SCédric Le Goater typedef u32 ihandle; 82e601613SDavid Gibson 92e601613SDavid Gibson void of_init(void *promptr); 102e601613SDavid Gibson int of_call_prom(const char *service, int nargs, int nret, ...); 11034e55e6SCédric Le Goater unsigned int of_claim(unsigned long virt, unsigned long size, 12034e55e6SCédric Le Goater unsigned long align); 1308464712SDavid Gibson void *of_vmlinux_alloc(unsigned long size); 142e601613SDavid Gibson void of_exit(void); 1508464712SDavid Gibson void *of_finddevice(const char *name); 1608464712SDavid Gibson int of_getprop(const void *phandle, const char *name, void *buf, 1708464712SDavid Gibson const int buflen); 1808464712SDavid Gibson int of_setprop(const void *phandle, const char *name, const void *buf, 1908464712SDavid Gibson const int buflen); 202e601613SDavid Gibson 212e601613SDavid Gibson /* Console functions */ 222e601613SDavid Gibson void of_console_init(void); 232e601613SDavid Gibson 24fed23ed7SCédric Le Goater typedef u32 __be32; 25fed23ed7SCédric Le Goater 2698fd433aSCédric Le Goater #ifdef __LITTLE_ENDIAN__ 2798fd433aSCédric Le Goater #define cpu_to_be32(x) swab32(x) 2898fd433aSCédric Le Goater #define be32_to_cpu(x) swab32(x) 2998fd433aSCédric Le Goater #else 30926e6940SCédric Le Goater #define cpu_to_be32(x) (x) 31926e6940SCédric Le Goater #define be32_to_cpu(x) (x) 3298fd433aSCédric Le Goater #endif 33926e6940SCédric Le Goater 349cc36bb0SCédric Le Goater #define PROM_ERROR (-1u) 359cc36bb0SCédric Le Goater 362e601613SDavid Gibson #endif /* _PPC_BOOT_OF_H_ */ 37