summaryrefslogtreecommitdiff
path: root/src/i830_bios.h
diff options
context:
space:
mode:
authorZhenyu Wang <zhenyu.z.wang@intel.com>2009-02-18 11:26:58 +0800
committerZhenyu Wang <zhenyu.z.wang@intel.com>2009-02-18 11:28:01 +0800
commit527e8177cde3abbabbcdccee0dbc0dcc0068a1be (patch)
treebcfdb77c847873a3d68f0f37d12b6345e083b519 /src/i830_bios.h
parent62ca1c479825ffa0e9cf444b4e25080150faa45b (diff)
bios_reader: parse driver feature BDB
Diffstat (limited to 'src/i830_bios.h')
-rw-r--r--src/i830_bios.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/i830_bios.h b/src/i830_bios.h
index 39706ac6..2dcc092f 100644
--- a/src/i830_bios.h
+++ b/src/i830_bios.h
@@ -395,6 +395,41 @@ struct vch_bdb_22 {
struct vch_panel_data panels[16];
} __attribute__((packed));
+#define BDB_DRIVER_NO_LVDS 0
+#define BDB_DRIVER_INTER_LVDS 1
+#define BDB_DRIVER_SDVO_LVDS 2
+#define BDB_DRIVER_ALL_LVDS 3
+
+struct bdb_driver_feature {
+ uint8_t boot_dev_algorithm:1;
+ uint8_t block_display_switch:1;
+ uint8_t allow_display_switch:1;
+ uint8_t hotplug_dvo:1;
+ uint8_t dual_view_zoom:1;
+ uint8_t int15h_hook:1;
+ uint8_t sprite_in_clone:1;
+ uint8_t primary_lfp_id:1;
+
+ uint16_t boot_mode_x;
+ uint16_t boot_mode_y;
+ uint8_t boot_mode_bpp;
+ uint8_t boot_mode_refresh;
+
+ uint16_t enable_lfp_primary:1;
+ uint16_t selective_mode_pruning:1;
+ uint16_t dual_frequency:1;
+ uint16_t render_clock_freq:1; /* 0: high freq; 1: low freq */
+ uint16_t nt_clone_support:1;
+ uint16_t power_scheme_ui:1; /* 0: CUI; 1: 3rd party */
+ uint16_t sprite_display_assign:1; /* 0: secondary; 1: primary */
+ uint16_t cui_aspect_scaling:1;
+ uint16_t preserve_aspect_ratio:1;
+ uint16_t sdvo_device_power_down:1;
+ uint16_t crt_hotplug:1;
+ uint16_t lvds_config:2;
+ uint16_t reserved:3;
+} __attribute__((packed));
+
#ifndef REG_DUMPER
int i830_bios_init(ScrnInfoPtr pScrn);
#endif