olpc_ofw.h 1.0 KB

1234567891011121314151617181920212223242526272829303132333435
  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_OPENFIRMWARE
  7. /* run an OFW command by calling into the firmware */
  8. #define olpc_ofw(name, args, res) \
  9. __olpc_ofw((name), ARRAY_SIZE(args), args, ARRAY_SIZE(res), res)
  10. extern int __olpc_ofw(const char *name, int nr_args, const void **args, int nr_res,
  11. void **res);
  12. /* determine whether OFW is available and lives in the proper memory */
  13. extern void olpc_ofw_detect(void);
  14. /* install OFW's pde permanently into the kernel's pgtable */
  15. extern void setup_olpc_ofw_pgd(void);
  16. /* check if OFW was detected during boot */
  17. extern bool olpc_ofw_present(void);
  18. #else /* !CONFIG_OLPC_OPENFIRMWARE */
  19. static inline void olpc_ofw_detect(void) { }
  20. static inline void setup_olpc_ofw_pgd(void) { }
  21. static inline bool olpc_ofw_present(void) { return false; }
  22. #endif /* !CONFIG_OLPC_OPENFIRMWARE */
  23. #endif /* _ASM_X86_OLPC_OFW_H */