]> git.sur5r.net Git - u-boot/blobdiff - include/vbe.h
Merge branch 'master' of git://git.denx.de/u-boot-sunxi
[u-boot] / include / vbe.h
index d4056914c4eb106b431be60828b311846c4aded6..f420f493ee1b05ce2bae5d8c39068832ec23daac 100644 (file)
@@ -1,10 +1,9 @@
+/* SPDX-License-Identifier: BSD-2-Clause */
 /******************************************************************************
  * Copyright (c) 2004, 2008 IBM Corporation
  * Copyright (c) 2009 Pattrick Hueper <phueper@hueper.net>
  * All rights reserved.
  *
- * SPDX-License-Identifier:    BSD-2-Clause
- *
  * Contributors:
  *     IBM Corporation - initial implementation
  *****************************************************************************/
@@ -12,7 +11,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 +22,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 +34,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 +99,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
+
+extern struct vbe_mode_info mode_info;
 
-struct graphic_device;
-int vbe_get_video_info(struct graphic_device *gdev);
+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