From patchwork Tue Sep 28 23:12:14 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Que X-Patchwork-Id: 216092 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by demeter1.kernel.org (8.14.4/8.14.3) with ESMTP id o8SNDEnQ000369 for ; Tue, 28 Sep 2010 23:13:34 GMT Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 4FF469EF6A for ; Tue, 28 Sep 2010 16:13:14 -0700 (PDT) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from smtp-out.google.com (smtp-out.google.com [74.125.121.35]) by gabe.freedesktop.org (Postfix) with ESMTP id E1C199EF23 for ; Tue, 28 Sep 2010 16:12:24 -0700 (PDT) Received: from hpaq7.eem.corp.google.com (hpaq7.eem.corp.google.com [172.25.149.7]) by smtp-out.google.com with ESMTP id o8SNCNLZ016079 for ; Tue, 28 Sep 2010 16:12:23 -0700 DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=google.com; s=beta; t=1285715543; bh=UFp+0B4600TPf8E/LbbWF5Vl8G4=; h=MIME-Version:Sender:Date:Message-ID:Subject:From:To:Cc: Content-Type; b=n2O5rESDtA4CVRoUi2E4jgkDXHTJz3jNvcxxPOn9V7NYl1yZ23NmKkFWMI8RG6TPd gpj60XUCDcsz4m3n35cIw== Received: from qyk1 (qyk1.prod.google.com [10.241.83.129]) by hpaq7.eem.corp.google.com with ESMTP id o8SNAcph007932 for ; Tue, 28 Sep 2010 16:12:21 -0700 Received: by qyk1 with SMTP id 1so48329qyk.9 for ; Tue, 28 Sep 2010 16:12:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=beta; h=domainkey-signature:mime-version:received:sender:received:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=AnY3ZA558+5/X6Z+EBntpFsRFaCIdIGwO7yQhEmxboI=; b=vxv7EKVnUjNrUgi4dDbyrfG27ZQVPH9WZ6BI7M0WA4qlBIjf78+gvM3awEp8Zpud2z 3plHI+SoKRFuxvS1FJcA== DomainKey-Signature: a=rsa-sha1; c=nofws; d=google.com; s=beta; h=mime-version:sender:date:x-google-sender-auth:message-id:subject :from:to:cc:content-type; b=E1SoobMe1X3g28a8RWVM+7CUN2oh5xUE9xVHbwxZrDpKjqTlk5LiBJscX8esjm12U3 2j2hlJ3j5X2wAmjSakUA== MIME-Version: 1.0 Received: by 10.224.73.209 with SMTP id r17mr555076qaj.3.1285715534318; Tue, 28 Sep 2010 16:12:14 -0700 (PDT) Received: by 10.229.78.97 with HTTP; Tue, 28 Sep 2010 16:12:14 -0700 (PDT) Date: Tue, 28 Sep 2010 16:12:14 -0700 X-Google-Sender-Auth: F_1mWGlEGoCyXOjsoFs6TY8vIvE Message-ID: From: Simon Que To: Chris Wilson , Jesse Barnes , Eric Anholt , intel-gfx@lists.freedesktop.org X-System-Of-Record: true Cc: Olof Johansson , Mandeep Baines , Bryan Freed Subject: [Intel-gfx] [PATCH v3] CHROMIUM: i915: Added function to initialize VBT settings X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces+patchwork-intel-gfx=patchwork.kernel.org@lists.freedesktop.org Errors-To: intel-gfx-bounces+patchwork-intel-gfx=patchwork.kernel.org@lists.freedesktop.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.3 (demeter1.kernel.org [140.211.167.41]); Tue, 28 Sep 2010 23:13:35 +0000 (UTC) From 8b1d178163e418aacb3677593e4e301c18603251 Mon Sep 17 00:00:00 2001 From: Simon Que Date: Wed, 22 Sep 2010 14:24:10 -0700 Subject: [PATCH] CHROMIUM: i915: Added function to initialize VBT settings Added a function that sets the LVDS values to default settings. This will be called by intel_init_bios before checking for the VBT (video BIOS table). The default values are thus loaded regardless of whether a VBT is found. The default settings in each parse function have been moved to the new function. This consolidates all the default settings into one place. The default dither bit value has been changed from 0 to 1. We can assume that display devices will want dithering enabled. Signed-off-by: Simon Que BUG=none TEST=Splash screen looks dithered upon boot. Change-Id: If19c763824ee938ad107f655d8d94c65e39cfa56 --- drivers/gpu/drm/i915/intel_bios.c | 29 +++++++++++++++++++---------- 1 files changed, 19 insertions(+), 10 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_bios.c b/drivers/gpu/drm/i915/intel_bios.c index 70c9d4b..ad030ff 100644 --- a/drivers/gpu/drm/i915/intel_bios.c +++ b/drivers/gpu/drm/i915/intel_bios.c @@ -119,10 +119,6 @@ parse_lfp_panel_data(struct drm_i915_private *dev_priv, int i, temp_downclock; struct drm_display_mode *temp_mode; - /* Defaults if we can't find VBT info */ - dev_priv->lvds_dither = 0; - dev_priv->lvds_vbt = 0; - lvds_options = find_section(bdb, BDB_LVDS_OPTIONS); if (!lvds_options) return; @@ -220,8 +216,6 @@ parse_sdvo_panel_data(struct drm_i915_private *dev_priv, struct lvds_dvo_timing *dvo_timing; struct drm_display_mode *panel_fixed_mode; - dev_priv->sdvo_lvds_vbt_mode = NULL; - sdvo_lvds_options = find_section(bdb, BDB_SDVO_LVDS_OPTIONS); if (!sdvo_lvds_options) return; @@ -250,10 +244,6 @@ parse_general_features(struct drm_i915_private *dev_priv, struct drm_device *dev = dev_priv->dev; struct bdb_general_features *general; - /* Set sensible defaults in case we can't find the general block */ - dev_priv->int_tv_support = 1; - dev_priv->int_crt_support = 1; - general = find_section(bdb, BDB_GENERAL_FEATURES); if (general) { dev_priv->int_tv_support = general->int_tv_support; @@ -501,6 +491,22 @@ parse_device_mapping(struct drm_i915_private *dev_priv, } return; } + +static void +init_vbt_defaults(struct drm_i915_private *dev_priv) +{ + /* LFP panel data */ + dev_priv->lvds_dither = 1; + dev_priv->lvds_vbt = 0; + + /* SDVO panel data */ + dev_priv->sdvo_lvds_vbt_mode = NULL; + + /* general features */ + dev_priv->int_tv_support = 1; + dev_priv->int_crt_support = 1; +} + /** * intel_init_bios - initialize VBIOS settings & find VBT * @dev: DRM device @@ -538,6 +544,9 @@ intel_init_bios(struct drm_device *dev) } } + /* Initialize to default VBT values */ + init_vbt_defaults(dev_priv); + if (!vbt) { DRM_ERROR("VBT signature missing\n"); pci_unmap_rom(pdev, bios); -- 1.7.1