eboot.h 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. #ifndef BOOT_COMPRESSED_EBOOT_H
  2. #define BOOT_COMPRESSED_EBOOT_H
  3. #define SEG_TYPE_DATA (0 << 3)
  4. #define SEG_TYPE_READ_WRITE (1 << 1)
  5. #define SEG_TYPE_CODE (1 << 3)
  6. #define SEG_TYPE_EXEC_READ (1 << 1)
  7. #define SEG_TYPE_TSS ((1 << 3) | (1 << 0))
  8. #define SEG_OP_SIZE_32BIT (1 << 0)
  9. #define SEG_GRANULARITY_4KB (1 << 0)
  10. #define DESC_TYPE_CODE_DATA (1 << 0)
  11. #define EFI_PAGE_SIZE (1UL << EFI_PAGE_SHIFT)
  12. #define EFI_READ_CHUNK_SIZE (1024 * 1024)
  13. #define EFI_CONSOLE_OUT_DEVICE_GUID \
  14. EFI_GUID(0xd3b36f2c, 0xd551, 0x11d4, 0x9a, 0x46, 0x0, 0x90, 0x27, \
  15. 0x3f, 0xc1, 0x4d)
  16. #define PIXEL_RGB_RESERVED_8BIT_PER_COLOR 0
  17. #define PIXEL_BGR_RESERVED_8BIT_PER_COLOR 1
  18. #define PIXEL_BIT_MASK 2
  19. #define PIXEL_BLT_ONLY 3
  20. #define PIXEL_FORMAT_MAX 4
  21. struct efi_pixel_bitmask {
  22. u32 red_mask;
  23. u32 green_mask;
  24. u32 blue_mask;
  25. u32 reserved_mask;
  26. };
  27. struct efi_graphics_output_mode_info {
  28. u32 version;
  29. u32 horizontal_resolution;
  30. u32 vertical_resolution;
  31. int pixel_format;
  32. struct efi_pixel_bitmask pixel_information;
  33. u32 pixels_per_scan_line;
  34. } __packed;
  35. struct efi_graphics_output_protocol_mode {
  36. u32 max_mode;
  37. u32 mode;
  38. unsigned long info;
  39. unsigned long size_of_info;
  40. u64 frame_buffer_base;
  41. unsigned long frame_buffer_size;
  42. } __packed;
  43. struct efi_graphics_output_protocol {
  44. void *query_mode;
  45. unsigned long set_mode;
  46. unsigned long blt;
  47. struct efi_graphics_output_protocol_mode *mode;
  48. };
  49. struct efi_uga_draw_protocol {
  50. void *get_mode;
  51. void *set_mode;
  52. void *blt;
  53. };
  54. struct efi_simple_text_output_protocol {
  55. void *reset;
  56. void *output_string;
  57. void *test_string;
  58. };
  59. #endif /* BOOT_COMPRESSED_EBOOT_H */