From patchwork Tue Sep 28 23:12:16 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Que X-Patchwork-Id: 216072 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 o8SNCW7L032741 for ; Tue, 28 Sep 2010 23:12:56 GMT Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 35E619E76C for ; Tue, 28 Sep 2010 16:12:32 -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 [216.239.44.51]) by gabe.freedesktop.org (Postfix) with ESMTP id 9FF7D9E76C for ; Tue, 28 Sep 2010 16:12:19 -0700 (PDT) Received: from hpaq12.eem.corp.google.com (hpaq12.eem.corp.google.com [172.25.149.12]) by smtp-out.google.com with ESMTP id o8SNCIW4031515 for ; Tue, 28 Sep 2010 16:12:18 -0700 DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=google.com; s=beta; t=1285715539; bh=ZCrMbgkak/y8iMQ5oVW8VCcIx7c=; h=MIME-Version:Sender:Date:Message-ID:Subject:From:To:Cc: Content-Type; b=fMukVvOVu1Xx80pfjVxs/h69aVLaHGuKI1eXTqGwqsL/1ReNCSKtYiMbEHKzn5diH zrajflhLa6r1WfLIpD0ig== Received: from gyf3 (gyf3.prod.google.com [10.243.50.67]) by hpaq12.eem.corp.google.com with ESMTP id o8SNCGYG006139 for ; Tue, 28 Sep 2010 16:12:17 -0700 Received: by gyf3 with SMTP id 3so113011gyf.0 for ; Tue, 28 Sep 2010 16:12:16 -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=f4Y4wmvNASnUzKN8PCIsMt8DIGZBdt3f4wXvU/SnUFo=; b=hXVrU1A6Qo97lYUx6uBoUz6WQs2kRFRbz19AlOEFGpSoE28CyrpJ+B/djZFSyBj3iv 0JhfglqmYxXj2IHFBMmA== 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=aBuHU063UHigHmETu+q/R8VqW04GCXKnOZkczZp73tTt02UW3Ubb0a9ARh4/dlE68t IAyNF9ni9yTjjCMnfMGw== MIME-Version: 1.0 Received: by 10.100.152.8 with SMTP id z8mr768704and.19.1285715536195; Tue, 28 Sep 2010 16:12:16 -0700 (PDT) Received: by 10.101.12.15 with HTTP; Tue, 28 Sep 2010 16:12:16 -0700 (PDT) Date: Tue, 28 Sep 2010 16:12:16 -0700 X-Google-Sender-Auth: KHKAJQO_Jhs9s_UDVnmJLXMJ92c 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:12:56 +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