summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/gma500/intel_bios.c
diff options
context:
space:
mode:
authorAlan Cox <alan@linux.intel.com>2012-04-25 14:36:34 +0100
committerDave Airlie <airlied@redhat.com>2012-04-27 09:23:10 +0100
commit642c52fcc98aa441bda8c7d8252e8b9b563b370b (patch)
treeae82b0608f97abf08bbbe9a2a72574be8640cea6 /drivers/gpu/drm/gma500/intel_bios.c
parent1896344b181549cea0ab38a810f4f8efcd6ecafb (diff)
downloadop-kernel-dev-642c52fcc98aa441bda8c7d8252e8b9b563b370b.zip
op-kernel-dev-642c52fcc98aa441bda8c7d8252e8b9b563b370b.tar.gz
gma500: read the PLL bits
We need to pull more stuff from the VBT in order to configure the clocking correctly in all cases. Add the relevant bits from the other CDV driver work. Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/gma500/intel_bios.c')
-rw-r--r--drivers/gpu/drm/gma500/intel_bios.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/drivers/gpu/drm/gma500/intel_bios.c b/drivers/gpu/drm/gma500/intel_bios.c
index d4d0c5b..51ea6df 100644
--- a/drivers/gpu/drm/gma500/intel_bios.c
+++ b/drivers/gpu/drm/gma500/intel_bios.c
@@ -217,6 +217,23 @@ static void parse_general_features(struct drm_psb_private *dev_priv,
}
}
+static void
+parse_driver_features(struct drm_psb_private *dev_priv,
+ struct bdb_header *bdb)
+{
+ struct bdb_driver_features *driver;
+
+ driver = find_section(bdb, BDB_DRIVER_FEATURES);
+ if (!driver)
+ return;
+
+ /* This bit means to use 96Mhz for DPLL_A or not */
+ if (driver->primary_lfp_id)
+ dev_priv->dplla_96mhz = true;
+ else
+ dev_priv->dplla_96mhz = false;
+}
+
/**
* psb_intel_init_bios - initialize VBIOS settings & find VBT
* @dev: DRM device
@@ -263,6 +280,7 @@ bool psb_intel_init_bios(struct drm_device *dev)
/* Grab useful general definitions */
parse_general_features(dev_priv, bdb);
+ parse_driver_features(dev_priv, bdb);
parse_lfp_panel_data(dev_priv, bdb);
parse_sdvo_panel_data(dev_priv, bdb);
parse_backlight_data(dev_priv, bdb);
OpenPOWER on IntegriCloud