summaryrefslogtreecommitdiff
path: root/shared-core
diff options
context:
space:
mode:
authorJesse Barnes <jbarnes@jbarnes-t61.(none)>2008-05-09 14:19:00 -0700
committerJesse Barnes <jbarnes@virtuousgeek.org>2008-05-09 14:19:00 -0700
commit12725a37af691345e74fe22d53300abec2581852 (patch)
tree78287fef05d529d0a3056050bd15b38ded351048 /shared-core
parenteeff906aa0f64da12a0154c66d99e8492dd95107 (diff)
i915: add basic VBT support
Map the VBIOS (and therefore VBT) at init time for use by various output initialization routines.
Diffstat (limited to 'shared-core')
-rw-r--r--shared-core/i915_drv.h6
-rw-r--r--shared-core/i915_init.c7
2 files changed, 13 insertions, 0 deletions
diff --git a/shared-core/i915_drv.h b/shared-core/i915_drv.h
index a7040f5b..2e7b6bd2 100644
--- a/shared-core/i915_drv.h
+++ b/shared-core/i915_drv.h
@@ -33,6 +33,8 @@
/* General customization:
*/
+#include "intel_bios.h"
+
#define DRIVER_AUTHOR "Tungsten Graphics, Inc."
#define DRIVER_NAME "i915"
@@ -171,6 +173,10 @@ struct drm_i915_private {
struct drm_buffer_object *sarea_bo;
struct drm_bo_kmap_obj sarea_kmap;
+ /* BIOS data */
+ struct vbt_header *vbt;
+ struct bdb_header *bdb;
+
/* Register state */
u8 saveLBB;
u32 saveDSPACNTR;
diff --git a/shared-core/i915_init.c b/shared-core/i915_init.c
index 53574eb7..8824b959 100644
--- a/shared-core/i915_init.c
+++ b/shared-core/i915_init.c
@@ -12,6 +12,7 @@
#include "drm_sarea.h"
#include "i915_drm.h"
#include "i915_drv.h"
+#include "intel_bios.h"
/**
* i915_probe_agp - get AGP bootup configuration
@@ -259,6 +260,12 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags)
DRM_DEBUG("Error\n");
}
+ ret = intel_find_bios(dev);
+ if (ret) {
+ DRM_ERROR("failed to find VBT\n");
+ return -ENODEV;
+ }
+
intel_modeset_init(dev);
drm_initial_config(dev, false);