X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=include%2Fvbe.h;h=d6980d953fbaf02c70e64d5b3cf4765bfb7a8293;hb=4be9f1f25d331a717a12ce7ac560b8534a4e2e7c;hp=d4056914c4eb106b431be60828b311846c4aded6;hpb=f4e7e2d12164c3235c3f5e19a68a503623029d35;p=people%2Fms%2Fu-boot.git diff --git a/include/vbe.h b/include/vbe.h index d4056914c4..d6980d953f 100644 --- a/include/vbe.h +++ b/include/vbe.h @@ -12,7 +12,7 @@ #define _VBE_H /* these structs are for input from and output to OF */ -struct __packed screen_info { +struct __packed vbe_screen_info { u8 display_type; /* 0=NONE, 1= analog, 2=digital */ u16 screen_width; u16 screen_height; @@ -23,7 +23,7 @@ struct __packed screen_info { u8 edid_block_zero[128]; }; -struct __packed screen_info_input { +struct __packed vbe_screen_info_input { u8 signature[4]; u16 size_reserved; u8 monitor_number; @@ -35,10 +35,14 @@ struct __packed screen_info_input { struct __packed vbe_info { char signature[4]; u16 version; - u8 *oem_string_ptr; + u32 oem_string_ptr; u32 capabilities; - u16 video_mode_list[256]; + u32 modes_ptr; u16 total_memory; + u16 oem_version; + u32 vendor_name_ptr; + u32 product_name_ptr; + u32 product_rev_ptr; }; struct __packed vesa_mode_info { @@ -96,8 +100,15 @@ struct vbe_ddc_info { #define VESA_GET_INFO 0x4f00 #define VESA_GET_MODE_INFO 0x4f01 #define VESA_SET_MODE 0x4f02 +#define VESA_GET_CUR_MODE 0x4f03 -struct graphic_device; -int vbe_get_video_info(struct graphic_device *gdev); +extern struct vbe_mode_info mode_info; + +struct video_priv; +struct video_uc_platdata; +int vbe_setup_video_priv(struct vesa_mode_info *vesa, + struct video_priv *uc_priv, + struct video_uc_platdata *plat); +int vbe_setup_video(struct udevice *dev, int (*int15_handler)(void)); #endif