olpc_ofw.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. #ifndef _ASM_X86_OLPC_OFW_H
  2. #define _ASM_X86_OLPC_OFW_H
  3. /* index into the page table containing the entry OFW occupies */
  4. #define OLPC_OFW_PDE_NR 1022
  5. #define OLPC_OFW_SIG 0x2057464F /* aka "OFW " */
  6. #ifdef CONFIG_OLPC
  7. extern bool olpc_ofw_is_installed(void);
  8. /* run an OFW command by calling into the firmware */
  9. #define olpc_ofw(name, args, res) \
  10. __olpc_ofw((name), ARRAY_SIZE(args), args, ARRAY_SIZE(res), res)
  11. extern int __olpc_ofw(const char *name, int nr_args, const void **args, int nr_res,
  12. void **res);
  13. /* determine whether OFW is available and lives in the proper memory */
  14. extern void olpc_ofw_detect(void);
  15. /* install OFW's pde permanently into the kernel's pgtable */
  16. extern void setup_olpc_ofw_pgd(void);
  17. /* check if OFW was detected during boot */
  18. extern bool olpc_ofw_present(void);
  19. extern void olpc_dt_build_devicetree(void);
  20. #else /* !CONFIG_OLPC */
  21. static inline void olpc_ofw_detect(void) { }
  22. static inline void setup_olpc_ofw_pgd(void) { }
  23. static inline void olpc_dt_build_devicetree(void) { }
  24. #endif /* !CONFIG_OLPC */
  25. #endif /* _ASM_X86_OLPC_OFW_H */