From patchwork Thu Nov 2 15:12:14 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 160930 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:8f47:0:b0:403:3b70:6f57 with SMTP id j7csp424078vqu; Thu, 2 Nov 2023 08:13:47 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFRDFAQic+26RBk9IIkR2KZeY3dNUEwxrqTCTJYw6xDArJ6rLkjfwcPt2xexuuxR/xaIcIo X-Received: by 2002:a05:6a00:6c98:b0:6c3:3964:ac8a with SMTP id jc24-20020a056a006c9800b006c33964ac8amr1628770pfb.28.1698938027355; Thu, 02 Nov 2023 08:13:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698938027; cv=none; d=google.com; s=arc-20160816; b=tav07QGVpDBcNdi4kjDnDu8hFaqoIm5F+5mSXN0HJ4S4KOHZgnKXrkBlEuaJAL9spm fFb4o/DJSmspj+IGYPwbcpWnMNFe1dRgUoNcPuRAaD9Hiz95sf7c7Rf/HroS5192S5ZN zc8XeIMBcbzrFW7nor6pwnwZjRPngloaGtXCShvy8V925u7jp06vlQmt6OyAxYYGpgG8 Phy3fAGs+vn8Ax4jjzG/Tflj8p1dc9IbfFcOfJX0pu04MmGbs7Jqgjv5B74I8KRIpE2w SObMQiblwWe6kQTCV46EBR5mS/ybbhgN98+sKQfAD/9ObG7MAt7V15zsyl/PL0wt1qli dnJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=v6FnCc7RWWk/c6sJPNsQiV4cTbu/31bzjd9uebkf+IE=; fh=W9Apx1mxfI4Sn4Tfu/ApINr5FKslMaF8Hy7vCgvNWsQ=; b=JWbrIMHfrYH1QxB4OKlodk6cu6/jepiZTV35H/Nih8SB8LwiLPNvg97RZtEJZKKUF+ IRadNV6p7BfMf6RyV2tJ5zVpVv8oJsZwXqi1kitU7jaap1IjsjGdRmWaBQqp35T6Wbf7 kOg/7LJZqB+ckdVzW6dKBGmmyptiDO6VX61EB+OyvJVVAUNcZLQWKThsULsZTh925VdV pb0QC8LBOQ9F2F/KPvhBj+Yqpkw5iyquS0dCOa9QjdstHaKZtSMAGxDyr5EyXqxGnk/+ gwf512BdPLQT7ybVxHH9a4RILHEcxdt95wV/5BD3oeiN/88Ok2ntyOc7i6BdE6WLdxPN brzg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=OyXdTJRA; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:8 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from fry.vger.email (fry.vger.email. [2620:137:e000::3:8]) by mx.google.com with ESMTPS id h12-20020a056a00218c00b006bd2084d6ddsi3811791pfi.100.2023.11.02.08.13.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Nov 2023 08:13:47 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:8 as permitted sender) client-ip=2620:137:e000::3:8; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=OyXdTJRA; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:8 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by fry.vger.email (Postfix) with ESMTP id C684E8111397; Thu, 2 Nov 2023 08:13:27 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at fry.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345447AbjKBPMy (ORCPT + 35 others); Thu, 2 Nov 2023 11:12:54 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55410 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235476AbjKBPMt (ORCPT ); Thu, 2 Nov 2023 11:12:49 -0400 Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4EED5D50 for ; Thu, 2 Nov 2023 08:12:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1698937956; x=1730473956; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=zPRCzYNN16HwjO3RHBcn1H7M4PO+1uvgVko+eIKdfwQ=; b=OyXdTJRANKn/Wso0a1rLf7IX2QCBhptlJUJDD5T4icbkotY1i9HiYDgW DwHVtLTFTYQ0vrAF/ec2mtZ/NZfPJeufuUH5i+TQe8VrDvpNgd62XeoHV K+9q0sM4faDTkaEWpjL6cWjIfnC081xs+ua/uYvZ/ZZb20SvC1tTiRPJV TLqoBgo+b2hI4CJoxAemsfiuCjDEDD/j1olFbHIg5CFYyahVC9KbMz0FT jwegnCF5U4nWYSM74vuJMtXjVodiF9xl/TXaQjuzQ/CLG60zVH8CEKcC3 apN1A+E7kIXiBlxgbDBmOahOWR22wrd4OU4zWYS5IPaECazQcHGmGf1uz w==; X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="373773420" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="373773420" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Nov 2023 08:12:35 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="711173920" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="711173920" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga003.jf.intel.com with ESMTP; 02 Nov 2023 08:12:32 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id 8757154A; Thu, 2 Nov 2023 17:12:30 +0200 (EET) From: Andy Shevchenko To: Jani Nikula , Andy Shevchenko , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , Hans de Goede Subject: [PATCH v3 01/15] drm/i915/dsi: assume BXT gpio works for non-native GPIO Date: Thu, 2 Nov 2023 17:12:14 +0200 Message-Id: <20231102151228.668842-2-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.40.0.1.gaa8946217a0b In-Reply-To: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> References: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-1.2 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on fry.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (fry.vger.email [0.0.0.0]); Thu, 02 Nov 2023 08:13:27 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781465641077118515 X-GMAIL-MSGID: 1781465641077118515 From: Jani Nikula Purely a guess. Drop the nop function. Cc: Andy Shevchenko Cc: Hans de Goede Signed-off-by: Jani Nikula Signed-off-by: Andy Shevchenko --- drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c index 24b2cbcfc1ef..b2c0cc11f8c1 100644 --- a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c +++ b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c @@ -372,14 +372,6 @@ static void bxt_exec_gpio(struct intel_connector *connector, gpiod_set_value(gpio_desc, value); } -static void icl_exec_gpio(struct intel_connector *connector, - u8 gpio_source, u8 gpio_index, bool value) -{ - struct drm_i915_private *dev_priv = to_i915(connector->base.dev); - - drm_dbg_kms(&dev_priv->drm, "Skipping ICL GPIO element execution\n"); -} - enum { MIPI_RESET_1 = 0, MIPI_AVDD_EN_1, @@ -491,7 +483,7 @@ static const u8 *mipi_exec_gpio(struct intel_dsi *intel_dsi, const u8 *data) if (native) icl_native_gpio_set_value(dev_priv, gpio_number, value); else if (DISPLAY_VER(dev_priv) >= 11) - icl_exec_gpio(connector, gpio_source, gpio_index, value); + bxt_exec_gpio(connector, gpio_source, gpio_index, value); else if (IS_VALLEYVIEW(dev_priv)) vlv_exec_gpio(connector, gpio_source, gpio_number, value); else if (IS_CHERRYVIEW(dev_priv)) From patchwork Thu Nov 2 15:12:15 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 160925 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:8f47:0:b0:403:3b70:6f57 with SMTP id j7csp423764vqu; Thu, 2 Nov 2023 08:13:25 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHyiYc9qPyNUv3vJ/WAxzTuzJUiUCGTf62/Bs4Qxw9/Y2wpFCXWx5LSmyGW9mpbZFkefmD0 X-Received: by 2002:a17:903:1c5:b0:1cc:66d5:493e with SMTP id e5-20020a17090301c500b001cc66d5493emr10778623plh.8.1698938005270; Thu, 02 Nov 2023 08:13:25 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698938005; cv=none; d=google.com; s=arc-20160816; b=iUKP+2IGFSUJmhPeFn+E/olZGfRl28CI13+GHAT2NKu58cE4f9fjqoqgjVzC0yw+eU NViNqEKAZLz9GCSY0rxMocm9KnnX6gV43vCraOAsbVi4zq4/Xij3FDIWaRzQYeHyQESW Xhb6R2QKne0lqOS6Nr6GxAKZw5TPBDV3xBySJ7xQ8KM43FKppIcdLdWeM0QdKlMnMYwx itNdgmvd2y9YGnu8dXHjRFQN3NtirMx0m9imWdtwSlwI0/4RHundHzV4HLJ5RdiSHH00 8jixC25xOCQ4mduwPoegQyPTsj2N06HMXEjRuyJ5HEMKLetiLEWSTGr8GKOY8DN4/6os YOjQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=BECp/Ub4oG3Foh3UIH5jESvTImu4sIFYYcqZiHauYuM=; fh=W9Apx1mxfI4Sn4Tfu/ApINr5FKslMaF8Hy7vCgvNWsQ=; b=e+Y5Q56POeaZjRwuzVvB/OLzUcblcilMISZHa8XnpsP9AO64tM5WEhH5mkbGoIX4GA R8UxGDmVz4BrCiSzWFSahsfFuZnQ8repccSmlCherlN1IHbICk+QUk5hmlqc3dwWLkqV s0W/5h/piYdzo8SyvXXy9nKZRGwERCSPjiKIQMsaxSO2AOyMrBgjoOmN8DfExVdeax// j3oVN8K+8emhv8WiFuy8STBPNLUw4VHV6zRGFZMVby1sioBy2PyMxoab39ouiNM+Tahg wlfijen0fqRrz5fLAcrLLHRJtkLDuo/C8bq+t1dKgPDm58vNSzp1D+caNYBZXmbSYD8N bYLg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b="WyHajwk/"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from snail.vger.email (snail.vger.email. [23.128.96.37]) by mx.google.com with ESMTPS id t10-20020a1709027fca00b001c5c370d4d3si17143plb.534.2023.11.02.08.13.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Nov 2023 08:13:25 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) client-ip=23.128.96.37; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b="WyHajwk/"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id EA91C823CEAD; Thu, 2 Nov 2023 08:13:21 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1376746AbjKBPNO (ORCPT + 35 others); Thu, 2 Nov 2023 11:13:14 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42584 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235617AbjKBPMv (ORCPT ); Thu, 2 Nov 2023 11:12:51 -0400 Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 982A6D69 for ; Thu, 2 Nov 2023 08:12:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1698937961; x=1730473961; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=aU19ThGhUQIWXfbukrzCcpY3j2hr2UFUIRy/UhZ9hVU=; b=WyHajwk/BCA2JaP5MPJ3QRYanoTAuvWT9fp0lNQgRrFqkYXkqbJ3nMHV NfKVcPEBFYFkGUDFKh98Oazo11Q1t908vCik2cokw38QrqHvjAXuI26aM BFLyYYzoYqqI1NcNUKSUVdY0zmkYAqa+6XTP3CX9UeuT0b+Pk9Pv/HNpn mbVT4niQB2jM2ITrpWrsUVCN0DRdTXNGiJcsF62u0jAAdvG2epHSdXZ8B NdODVrlBGuHcqriIBxLcrki4nsc022sLXjkqiPdAa8tvzV2v1puWsCwoM jwzNA2pg6/3mU+p7eg/alSoALO8I3ktCXs4ZUmeWMrJTKRi0NgnKzf4VX g==; X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="373773436" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="373773436" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Nov 2023 08:12:35 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="711173932" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="711173932" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga003.jf.intel.com with ESMTP; 02 Nov 2023 08:12:32 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id 9CBCF5E2; Thu, 2 Nov 2023 17:12:30 +0200 (EET) From: Andy Shevchenko To: Jani Nikula , Andy Shevchenko , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , Hans de Goede Subject: [PATCH v3 02/15] drm/i915/dsi: switch mipi_exec_gpio() from dev_priv to i915 Date: Thu, 2 Nov 2023 17:12:15 +0200 Message-Id: <20231102151228.668842-3-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.40.0.1.gaa8946217a0b In-Reply-To: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> References: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED, SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Thu, 02 Nov 2023 08:13:22 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781465617905084556 X-GMAIL-MSGID: 1781465617905084556 From: Jani Nikula Follow the contemporary conventions. Cc: Andy Shevchenko Cc: Hans de Goede Signed-off-by: Jani Nikula Signed-off-by: Andy Shevchenko --- drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c index b2c0cc11f8c1..8b962f2ac475 100644 --- a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c +++ b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c @@ -454,11 +454,11 @@ static void icl_native_gpio_set_value(struct drm_i915_private *dev_priv, static const u8 *mipi_exec_gpio(struct intel_dsi *intel_dsi, const u8 *data) { struct drm_device *dev = intel_dsi->base.base.dev; - struct drm_i915_private *dev_priv = to_i915(dev); + struct drm_i915_private *i915 = to_i915(dev); struct intel_connector *connector = intel_dsi->attached_connector; u8 gpio_source, gpio_index = 0, gpio_number; bool value; - bool native = DISPLAY_VER(dev_priv) >= 11; + bool native = DISPLAY_VER(i915) >= 11; if (connector->panel.vbt.dsi.seq_version >= 3) gpio_index = *data++; @@ -477,16 +477,16 @@ static const u8 *mipi_exec_gpio(struct intel_dsi *intel_dsi, const u8 *data) /* pull up/down */ value = *data++ & 1; - drm_dbg_kms(&dev_priv->drm, "GPIO index %u, number %u, source %u, native %s, set to %s\n", + drm_dbg_kms(&i915->drm, "GPIO index %u, number %u, source %u, native %s, set to %s\n", gpio_index, gpio_number, gpio_source, str_yes_no(native), str_on_off(value)); if (native) - icl_native_gpio_set_value(dev_priv, gpio_number, value); - else if (DISPLAY_VER(dev_priv) >= 11) + icl_native_gpio_set_value(i915, gpio_number, value); + else if (DISPLAY_VER(i915) >= 11) bxt_exec_gpio(connector, gpio_source, gpio_index, value); - else if (IS_VALLEYVIEW(dev_priv)) + else if (IS_VALLEYVIEW(i915)) vlv_exec_gpio(connector, gpio_source, gpio_number, value); - else if (IS_CHERRYVIEW(dev_priv)) + else if (IS_CHERRYVIEW(i915)) chv_exec_gpio(connector, gpio_source, gpio_number, value); else bxt_exec_gpio(connector, gpio_source, gpio_index, value); From patchwork Thu Nov 2 15:12:16 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 160923 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:8f47:0:b0:403:3b70:6f57 with SMTP id j7csp423703vqu; Thu, 2 Nov 2023 08:13:21 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEK12sfrVXPm1m0+CPWcWMCRYBNHqLXhigwfz94JBCk2TWbQaE8UUP5nINwE0OUEEdXTUSw X-Received: by 2002:a05:6a20:1585:b0:15d:9ee7:180a with SMTP id h5-20020a056a20158500b0015d9ee7180amr18489158pzj.4.1698938000621; Thu, 02 Nov 2023 08:13:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698938000; cv=none; d=google.com; s=arc-20160816; b=OBYHD26Bm3J9OUZNjmZYU19Qt3RNdQ0XNRX+WhbTr+DXpGIW3Obd2cTfyTjo7jLJMp BW4kCQ3gvDibjDoDeTdOhuPsFMuV5j406VDlsNcnndYVJTozh0W2yumGObo0AHX0ZQuj H9Q1/AvEedfOnm5eSKjGVD6S76U+NH3bEV+0haddV8pG9c2DcCA/WDndQtVz8S0GWxW7 vx1bpXMj8LiFtjHi2Njgsglu1ns7wpRqtu9OkMB87EHaPnIDT5GAu8S0DE01o1wp3O9h qT+BV8umAHnzqQ4T4exQe6af9wtRajIB2Xob6yfo1OlfiwdibfrWw4uU6HuYCHE4S7yv KMig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=h4Csbutx0aazxD5EJt5mCEFQLwtYV55pU/6Nv+70I8o=; fh=W9Apx1mxfI4Sn4Tfu/ApINr5FKslMaF8Hy7vCgvNWsQ=; b=uagOw8rI7Ry1YK0reapA0IHtx3PG6reh6GbvLh2LzEMun4VKXOg36TV11CRBsXORyQ xNm3AE4X5/Ch+9uyK4LPAOXi2kNrcfUl3S1DuVEKaJxqALEDjA543ldz+1IwMolaNBHG CkhaBgd9GfKi9KUHNdrbofo7wZZkSSSNqY2hBDqLNomSQyWFWRq0A79q3VWTsvL7m+/B oW4pg88MeHiEteLTfLVqH1sggsSXYnt6CQWKLqDsAt5K5IqjfhyZ6jvRrAnx03JiT+XO 09bwjMUm08iBzXrU3OhnO/SeYqXHfbIsaA+izYvRH8GtfqYOIMjWPDp47xY4F9gKXEeX 1KaQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=HPz4CZZ4; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from snail.vger.email (snail.vger.email. [2620:137:e000::3:7]) by mx.google.com with ESMTPS id fh13-20020a056a00390d00b006c081a3fe4dsi3843681pfb.259.2023.11.02.08.13.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Nov 2023 08:13:20 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) client-ip=2620:137:e000::3:7; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=HPz4CZZ4; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 9C684823CEBC; Thu, 2 Nov 2023 08:13:15 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1376598AbjKBPNF (ORCPT + 35 others); Thu, 2 Nov 2023 11:13:05 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42562 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235611AbjKBPMu (ORCPT ); Thu, 2 Nov 2023 11:12:50 -0400 Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 613B3D67 for ; Thu, 2 Nov 2023 08:12:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1698937961; x=1730473961; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=sOlXPhm2EWggWgC9auNPoDBOg8jjBU+Gm+8lS7rVTqE=; b=HPz4CZZ4V79hoi2qRYOBiisXbor15Rn7KIxwTPQ/cBup7qeWjY5e3rgb SG21OGIE8gOAdCRKhMvtq/098yM2W+sXX6YfTjfBWklr60jgmmGHcaKwW MJ5Nbdwp8Lvg7MrvWj56H1gHJO1zn70sVTfoqlgx0lryzHxLqOxnyC0F4 jVzIMI22hoa1Ld7Msf22pnZNZgbnNRzuaZplfn5QYH6VA6cKsksZKKMLg rv+xvCqSjD0Wbc0ptTIRcDr1b4jpZxUNN+6iFJjA2ZsDrytCylB9YxqSN f9Q+OH6DQDgkuonzCGgnLO9+6Du7AzoaEV9/moTQxIslc/H53L5PAe8KT A==; X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="373773429" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="373773429" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Nov 2023 08:12:35 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="711173922" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="711173922" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga003.jf.intel.com with ESMTP; 02 Nov 2023 08:12:32 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id A7C3E5E5; Thu, 2 Nov 2023 17:12:30 +0200 (EET) From: Andy Shevchenko To: Jani Nikula , Andy Shevchenko , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , Hans de Goede Subject: [PATCH v3 03/15] drm/i915/dsi: clarify GPIO exec sequence Date: Thu, 2 Nov 2023 17:12:16 +0200 Message-Id: <20231102151228.668842-4-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.40.0.1.gaa8946217a0b In-Reply-To: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> References: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED, SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Thu, 02 Nov 2023 08:13:15 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781465612915672393 X-GMAIL-MSGID: 1781465612915672393 From: Jani Nikula With the various sequence versions and pointer increments interleaved, it's a bit hard to decipher what's going on. Add separate paths for different sequence versions. Cc: Andy Shevchenko Cc: Hans de Goede Signed-off-by: Jani Nikula Signed-off-by: Andy Shevchenko --- drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 31 +++++++++++--------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c index 8b962f2ac475..11073efe26c0 100644 --- a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c +++ b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c @@ -456,26 +456,29 @@ static const u8 *mipi_exec_gpio(struct intel_dsi *intel_dsi, const u8 *data) struct drm_device *dev = intel_dsi->base.base.dev; struct drm_i915_private *i915 = to_i915(dev); struct intel_connector *connector = intel_dsi->attached_connector; - u8 gpio_source, gpio_index = 0, gpio_number; + u8 gpio_source = 0, gpio_index = 0, gpio_number; bool value; + int size; bool native = DISPLAY_VER(i915) >= 11; - if (connector->panel.vbt.dsi.seq_version >= 3) - gpio_index = *data++; + if (connector->panel.vbt.dsi.seq_version >= 3) { + size = 3; - gpio_number = *data++; + gpio_index = data[0]; + gpio_number = data[1]; + value = data[2] & BIT(0); - /* gpio source in sequence v2 only */ - if (connector->panel.vbt.dsi.seq_version == 2) - gpio_source = (*data >> 1) & 3; - else - gpio_source = 0; + if (connector->panel.vbt.dsi.seq_version >= 4 && data[2] & BIT(1)) + native = false; + } else { + size = 2; - if (connector->panel.vbt.dsi.seq_version >= 4 && *data & BIT(1)) - native = false; + gpio_number = data[0]; + value = data[1] & BIT(0); - /* pull up/down */ - value = *data++ & 1; + if (connector->panel.vbt.dsi.seq_version == 2) + gpio_source = (data[1] >> 1) & 3; + } drm_dbg_kms(&i915->drm, "GPIO index %u, number %u, source %u, native %s, set to %s\n", gpio_index, gpio_number, gpio_source, str_yes_no(native), str_on_off(value)); @@ -491,7 +494,7 @@ static const u8 *mipi_exec_gpio(struct intel_dsi *intel_dsi, const u8 *data) else bxt_exec_gpio(connector, gpio_source, gpio_index, value); - return data; + return data + size; } #ifdef CONFIG_ACPI From patchwork Thu Nov 2 15:12:17 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 160922 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:8f47:0:b0:403:3b70:6f57 with SMTP id j7csp423691vqu; Thu, 2 Nov 2023 08:13:19 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEy5+ZH092hPIdrQDXBIIUH3BZCstkUDqopvR3k8KMEH8mxGJcMdw3a8kXPhybph7GGCs1v X-Received: by 2002:a05:6a20:7d9e:b0:180:e2b8:3b05 with SMTP id v30-20020a056a207d9e00b00180e2b83b05mr9973050pzj.52.1698937999697; Thu, 02 Nov 2023 08:13:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698937999; cv=none; d=google.com; s=arc-20160816; b=Kfq31IWGPQy/lXCSRVbqVgii6xFJZosA/K37VeOTaSLdlHmU+arzGfABLQpvlimDzB K/2o2gNkm4WxkwgJUXJZ9QGh2s3R2sL05ILMM5O+zB6O8mk3Y4f9H/ZPjdVIYnRfPy1B Cs4zthVCMdx7Otn6OCi+3ka+uyLHnA3i/7nEyPxF2cudpOfxnEZNHdk5tsBNZjboDIrf PlZZT60/oFspjY/GSSB6XPc+gvEEuLFxXKx/cxKwaK/HEELmb00DpfygqfESvePriKi5 AVDhumD0wcEDuktWg5CHYi3wnqBtsEGu/FsaT+K6IIX3eTywDAMDn1gaHG0XMn4PZ2u3 mcHg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=waqxZLUT7qcUZ9sUk4WxxYNw+t5JCB3hSP4+67Vzsiw=; fh=W9Apx1mxfI4Sn4Tfu/ApINr5FKslMaF8Hy7vCgvNWsQ=; b=x1H272iPRrExOkXWmNz9TTc8jgRi0Z6jsLJ/H/zHH3ln8LHQIUXq+i1XERbz7jcWQF E5EgKDN9gBle6533QazmrQiY+F+a6KYRJ8FMDG04VrvcxPdmbH8utXfSn2i0riyaiRVZ 1GV9m7av6v+WRcaccURMCcFl8NwqpfZ69QjjvkK/i/yLUbmlNeuXOveEo5uZA4UgDAJh 03e28ixKxE98ZpJcOUDSPCNHg4hEGxFYxJlyRzS8A7mxnUkp+KlD1nkBqGdcyDze0qz9 NwPE4u/k5t/0EjpavWgfU2H4EZ+aiPoKXF8WXNgYfDFCFgb3z7S3IoYRPcPd4FLBJzGG Hkcg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=cqPTCe7F; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from snail.vger.email (snail.vger.email. [2620:137:e000::3:7]) by mx.google.com with ESMTPS id z1-20020aa78881000000b0068e2b901138si3787779pfe.158.2023.11.02.08.13.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Nov 2023 08:13:19 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) client-ip=2620:137:e000::3:7; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=cqPTCe7F; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 6482C823CE8D; Thu, 2 Nov 2023 08:13:14 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347566AbjKBPNB (ORCPT + 35 others); Thu, 2 Nov 2023 11:13:01 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55452 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235599AbjKBPMu (ORCPT ); Thu, 2 Nov 2023 11:12:50 -0400 Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 43F9AD64 for ; Thu, 2 Nov 2023 08:12:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1698937960; x=1730473960; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=+d2Ama+P0okGNCcoxtJKk+xZsdc9UC+/3+lzRqHrSJs=; b=cqPTCe7FmaO6+EE37y85KgvR6ThjY6Wu8hbeis+0Xu0/ZxGk3/2/iRED h+knwcDPLZbwPheB4yjlN06nku3AfOAF6g8Paqn+RJBjj3pHykah15Rwm 465OKElGlf+o9X42pLs7n81YNkOkAidEPbv/C9OnumKlmzqzxQbtIPZz0 xnS12YtVUpGD8+CvywY8moVoRFjCtUlEFE84qxVqU7X7iFUODUZBDFIKk 5hq8u/FKeC9ZUlEst2b0kiWdlSn6SGT3X8ebynexEMcG67GvlSBAS1myb I78kELko1ZnP3T63CmmR/qbGuB50R0B+QLgxOdG8MXvJ7z5b8lfHvzfAp g==; X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="373773431" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="373773431" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Nov 2023 08:12:35 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="711173926" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="711173926" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga003.jf.intel.com with ESMTP; 02 Nov 2023 08:12:32 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id B761B5E8; Thu, 2 Nov 2023 17:12:30 +0200 (EET) From: Andy Shevchenko To: Jani Nikula , Andy Shevchenko , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , Hans de Goede Subject: [PATCH v3 04/15] drm/i915/dsi: rename platform specific *_exec_gpio() to *_gpio_set_value() Date: Thu, 2 Nov 2023 17:12:17 +0200 Message-Id: <20231102151228.668842-5-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.40.0.1.gaa8946217a0b In-Reply-To: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> References: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED, SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Thu, 02 Nov 2023 08:13:14 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781465611632725727 X-GMAIL-MSGID: 1781465611632725727 From: Jani Nikula The lowest level functions are about setting GPIO values, not about executing any sequences anymore. Cc: Andy Shevchenko Cc: Hans de Goede Signed-off-by: Jani Nikula Signed-off-by: Andy Shevchenko --- drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c index 11073efe26c0..f977d63a0ad4 100644 --- a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c +++ b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c @@ -243,8 +243,8 @@ static const u8 *mipi_exec_delay(struct intel_dsi *intel_dsi, const u8 *data) return data; } -static void vlv_exec_gpio(struct intel_connector *connector, - u8 gpio_source, u8 gpio_index, bool value) +static void vlv_gpio_set_value(struct intel_connector *connector, + u8 gpio_source, u8 gpio_index, bool value) { struct drm_i915_private *dev_priv = to_i915(connector->base.dev); struct gpio_map *map; @@ -291,8 +291,8 @@ static void vlv_exec_gpio(struct intel_connector *connector, vlv_iosf_sb_put(dev_priv, BIT(VLV_IOSF_SB_GPIO)); } -static void chv_exec_gpio(struct intel_connector *connector, - u8 gpio_source, u8 gpio_index, bool value) +static void chv_gpio_set_value(struct intel_connector *connector, + u8 gpio_source, u8 gpio_index, bool value) { struct drm_i915_private *dev_priv = to_i915(connector->base.dev); u16 cfg0, cfg1; @@ -345,8 +345,8 @@ static void chv_exec_gpio(struct intel_connector *connector, vlv_iosf_sb_put(dev_priv, BIT(VLV_IOSF_SB_GPIO)); } -static void bxt_exec_gpio(struct intel_connector *connector, - u8 gpio_source, u8 gpio_index, bool value) +static void bxt_gpio_set_value(struct intel_connector *connector, + u8 gpio_source, u8 gpio_index, bool value) { struct drm_i915_private *dev_priv = to_i915(connector->base.dev); /* XXX: this table is a quick ugly hack. */ @@ -486,13 +486,13 @@ static const u8 *mipi_exec_gpio(struct intel_dsi *intel_dsi, const u8 *data) if (native) icl_native_gpio_set_value(i915, gpio_number, value); else if (DISPLAY_VER(i915) >= 11) - bxt_exec_gpio(connector, gpio_source, gpio_index, value); + bxt_gpio_set_value(connector, gpio_source, gpio_index, value); else if (IS_VALLEYVIEW(i915)) - vlv_exec_gpio(connector, gpio_source, gpio_number, value); + vlv_gpio_set_value(connector, gpio_source, gpio_number, value); else if (IS_CHERRYVIEW(i915)) - chv_exec_gpio(connector, gpio_source, gpio_number, value); + chv_gpio_set_value(connector, gpio_source, gpio_number, value); else - bxt_exec_gpio(connector, gpio_source, gpio_index, value); + bxt_gpio_set_value(connector, gpio_source, gpio_index, value); return data + size; } From patchwork Thu Nov 2 15:12:18 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 160936 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:8f47:0:b0:403:3b70:6f57 with SMTP id j7csp424958vqu; Thu, 2 Nov 2023 08:14:57 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFj+CoslgOEYwAQLHPukRngqsKzYjZJwNvI5ieWzKMmZraKy7fAXwPmik4MVpFSh1epfT2H X-Received: by 2002:a05:6a21:78a5:b0:17b:c254:a6a9 with SMTP id bf37-20020a056a2178a500b0017bc254a6a9mr19752057pzc.50.1698938096737; Thu, 02 Nov 2023 08:14:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698938096; cv=none; d=google.com; s=arc-20160816; b=MlvtUcb/Mndtf3dbELDYXmY4Jg0QblAp2DOmBD5KrNLzsvTWiEF9MiBnPvxjhyM0Mp 7oX2w9p8TCMfBMWHsCEcPS5HemxJxT9hpU2Tq887z/3aDs93dtE1qwZ/7Edxd/2c/IwY t6sLQbJquEATF1F66tP1+skZcMi7PFfxCdhX/fXvFbNMl8VhrHluvN95bUnkI5mLpbRm lMCEzB7Oes9er/vtZgF7cdJmHnJc6sit6jAr+qWIHOQJvbXvipqe36la1MNJysL6HqNE 62xT+hDof5PACpu1GoVsVTO55ruvcKxxVGd7QjPwHlsFEBqS+c/RjU1VuVFhkWVZ3pcz yJ6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=2h5mYzkiKOShs14983E4OXvBx34bV+QxCJxiDl7eUb0=; fh=W9Apx1mxfI4Sn4Tfu/ApINr5FKslMaF8Hy7vCgvNWsQ=; b=c0ufvWo0lIRvnOFjVA1zpMa61UURyl6kkrA8YyMnG4Bq3FzNm9cXPF87TLht7FaF1F +cNxN9KSQCe4VUmunYHsP2AQ/+vb4XYuFx7gJQdOF57caMzodDN1iMpMDhSYninIJTst 2yvEXgcN8VFO+7cBn0MR3SthHqOV6T8BgBStLZrWh8BMe5ER5NXOsKl0LMPDtdf6B4YO vy2eq77Edd5wGEhF5el7H3/ZdFeJMts9afFzmEY07cF7dCH97HQlI7E/h3cS/z/8Rz6a 4PrH7nPzJgi0EaIJiUh0Pu/nPsIq37ljYM1Kah5tUcWVNkWXyAJ7RvZspsApOivZRWDK vEPQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=mY+NxiR2; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from lipwig.vger.email (lipwig.vger.email. [2620:137:e000::3:3]) by mx.google.com with ESMTPS id f9-20020a056a001ac900b006bd0842622asi3668914pfv.239.2023.11.02.08.14.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Nov 2023 08:14:56 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) client-ip=2620:137:e000::3:3; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=mY+NxiR2; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by lipwig.vger.email (Postfix) with ESMTP id 8676E8179129; Thu, 2 Nov 2023 08:14:46 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at lipwig.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347477AbjKBPNU (ORCPT + 35 others); Thu, 2 Nov 2023 11:13:20 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55500 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345957AbjKBPMy (ORCPT ); Thu, 2 Nov 2023 11:12:54 -0400 Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 84E681A2 for ; Thu, 2 Nov 2023 08:12:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1698937965; x=1730473965; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=wc6Dw16jrK2JuaQigVkusqKe77bPKOF3ZrL7ybVE950=; b=mY+NxiR2KLNLY/QfcNVAnyYqNn1ei4wWZajfHIazNUU3vgDNORHMXLct WIhCSgxhKIMePEKGJa7VbWe5Tbqf1aN8y6k1yxlwggqqXXeuD9Nk4+iCV lSdBPENYtelq+PvfuPHBIZDUQ6DPbMXo/A/nXCC7xk70nydnp8PjtCNC9 OZW5L9vi8h2/mKs3RZ61pRftLNWayCgs0kZhm6Ck6lGG0h4whg7nE6gZC nUp4pkENO1xyo6E6oSatxGFMbCDvLdwRrGRI1xI7Qp0vH9ZV4qiwJIFQ7 nGyAAV+jSYhSff8Lul+kLFuDXYlXMxtT2V56tXi/zhH0/gWQVApXddB1Q w==; X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="373773456" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="373773456" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Nov 2023 08:12:39 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="711174060" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="711174060" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga003.jf.intel.com with ESMTP; 02 Nov 2023 08:12:36 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id C426A5F9; Thu, 2 Nov 2023 17:12:30 +0200 (EET) From: Andy Shevchenko To: Jani Nikula , Andy Shevchenko , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , Hans de Goede Subject: [PATCH v3 05/15] drm/i915/dsi: bxt/icl GPIO set value do not need gpio source Date: Thu, 2 Nov 2023 17:12:18 +0200 Message-Id: <20231102151228.668842-6-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.40.0.1.gaa8946217a0b In-Reply-To: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> References: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-1.2 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lipwig.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (lipwig.vger.email [0.0.0.0]); Thu, 02 Nov 2023 08:14:46 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781465714133155885 X-GMAIL-MSGID: 1781465714133155885 From: Jani Nikula Drop the unused parameter. Cc: Andy Shevchenko Cc: Hans de Goede Signed-off-by: Jani Nikula Signed-off-by: Andy Shevchenko --- drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c index f977d63a0ad4..4af43cf3cee0 100644 --- a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c +++ b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c @@ -346,7 +346,7 @@ static void chv_gpio_set_value(struct intel_connector *connector, } static void bxt_gpio_set_value(struct intel_connector *connector, - u8 gpio_source, u8 gpio_index, bool value) + u8 gpio_index, bool value) { struct drm_i915_private *dev_priv = to_i915(connector->base.dev); /* XXX: this table is a quick ugly hack. */ @@ -486,13 +486,13 @@ static const u8 *mipi_exec_gpio(struct intel_dsi *intel_dsi, const u8 *data) if (native) icl_native_gpio_set_value(i915, gpio_number, value); else if (DISPLAY_VER(i915) >= 11) - bxt_gpio_set_value(connector, gpio_source, gpio_index, value); + bxt_gpio_set_value(connector, gpio_index, value); else if (IS_VALLEYVIEW(i915)) vlv_gpio_set_value(connector, gpio_source, gpio_number, value); else if (IS_CHERRYVIEW(i915)) chv_gpio_set_value(connector, gpio_source, gpio_number, value); else - bxt_gpio_set_value(connector, gpio_source, gpio_index, value); + bxt_gpio_set_value(connector, gpio_index, value); return data + size; } From patchwork Thu Nov 2 15:12:19 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 160929 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:8f47:0:b0:403:3b70:6f57 with SMTP id j7csp424077vqu; Thu, 2 Nov 2023 08:13:47 -0700 (PDT) X-Google-Smtp-Source: AGHT+IE0/2yjOR0sBRmoYZUhQa2B9mU6x1Pe2nSXyvhtxAzmXqsgOfzg7Zh+qXV/7p9ahGzJQwUo X-Received: by 2002:a05:6a00:1a93:b0:6b6:7a04:6f9 with SMTP id e19-20020a056a001a9300b006b67a0406f9mr18019775pfv.28.1698938027308; Thu, 02 Nov 2023 08:13:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698938027; cv=none; d=google.com; s=arc-20160816; b=MvC5Ow4F/SYhnqbaXa0F7AV7vekJw2OSDxrEvAPLJ1197bEa3JN5FT7br5boJ4cjyb zvkC+2xdAqH08GOuz164RhmVyWqYabbu7mUKIfZMOZwRn4arZ9JHaaeSp7G7GcrFnFLW +GqrJZfR6yOSUidg7OSS0XdJlyvrOsTCTVA85GkoVEpp9NmuLGoqhtYXJllrS00/nra2 5BvkFJKM5cKhAH7NGWgbi6YCHeAOWB686gp/7Xki5lOrJVom7+lh4DF1K2YuU0KNNRVS VfOwxhVJhQYl2/ieCw7tJQtStxsoXKOCkvrOFo/slej7yuZyS2PdWtIkDPaasVXF8laL Z8rg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=d3mmz+1V2lp5MptD7mFvsgsvjGF8vDNU9FgWyDYdZoI=; fh=V5ywgBf85rQkHF36Ko7g9kTUFkdCX9ky0xG0tyEYPww=; b=wE1c2ySeh1da8VHcXZ/Qj4WnGojDFoUDxIRorpPqmjf8HbFBAoLzexATOQPxEvlsmN ASc5hKdAc+nWsKGFB9QDx2pA2B0RP3YdB3UBmUCcMb5vbSf6A+8Ct/OQEzuPUDjuMPXu pt6M+sd8sX1d9ghO3wDaqpedVxnWEhcGDeT+zUfFt4L+87S9qG2b2Jv3WGOOk11ZQjT5 t2a9BOQK1dysM460lWWrNl85QnLLsPOjRI1oOxn3SvwWuf2zJBV//AXSwaahuyvYbrIQ AeP7pClzTnfHt81WCdTP40DGKsEyXnFwxJMdGDHixW7mq8UMcHWpmJ/5R2nquiO8/rb7 GO5w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b="kCQ/YfB6"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from snail.vger.email (snail.vger.email. [2620:137:e000::3:7]) by mx.google.com with ESMTPS id x185-20020a6386c2000000b00573f885c4easi1775779pgd.753.2023.11.02.08.13.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Nov 2023 08:13:47 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) client-ip=2620:137:e000::3:7; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b="kCQ/YfB6"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 894F8826C0FD; Thu, 2 Nov 2023 08:13:36 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347662AbjKBPN2 (ORCPT + 35 others); Thu, 2 Nov 2023 11:13:28 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42480 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1346414AbjKBPMz (ORCPT ); Thu, 2 Nov 2023 11:12:55 -0400 Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6C190181 for ; Thu, 2 Nov 2023 08:12:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1698937966; x=1730473966; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=EwelSoZ61k9tZJuVFvgxr/RQChgXvtfD52YtSTJ+m/s=; b=kCQ/YfB6dv3DozGZmO3Whqpyrom519b9WRFRNw/fc2WKnKsJmV3Pi3Mz DN/qlCRCLP1nNFDu4ttBfxASh+w6tZqDyjiTHwr6MC8X5a0sj0/7orGT6 c9JLNDKGXqfvx84e0NCjhjIJl1NjiYVKL5EVkmhwO+rCpRW0gXOdtvUVF uXoXau2HX9/m4YPsTvQdjNZhrcQ/QIlaDQl7SAsxhN2amYTGQ4SoxxGVJ wID4ZbPdQmDmQqCgCOKOgXUCqqowB3UTNuzk+z+JV85LUAgWsQO9m67jh FZAtVq+VMjU5rD329Af46GppQ7cRO8TtuTyK/PIGzhzH/pXl3UaaJaSzt w==; X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="373773461" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="373773461" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Nov 2023 08:12:39 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="711174065" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="711174065" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga003.jf.intel.com with ESMTP; 02 Nov 2023 08:12:36 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id D074C618; Thu, 2 Nov 2023 17:12:30 +0200 (EET) From: Andy Shevchenko To: Jani Nikula , Andy Shevchenko , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , Hans de Goede , Andi Shyti Subject: [PATCH v3 06/15] drm/i915/dsi: Replace while(1) with one with clear exit condition Date: Thu, 2 Nov 2023 17:12:19 +0200 Message-Id: <20231102151228.668842-7-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.40.0.1.gaa8946217a0b In-Reply-To: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> References: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED, SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Thu, 02 Nov 2023 08:13:36 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781465640963606264 X-GMAIL-MSGID: 1781465640963606264 Move existing condition to while(), so it will be clear on what circumstances the loop is successfully finishing. Reviewed-by: Andi Shyti Signed-off-by: Andy Shevchenko --- drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c index 4af43cf3cee0..290a112f1b63 100644 --- a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c +++ b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c @@ -702,13 +702,10 @@ static void intel_dsi_vbt_exec(struct intel_dsi *intel_dsi, if (connector->panel.vbt.dsi.seq_version >= 3) data += 4; - while (1) { + while (*data != MIPI_SEQ_ELEM_END) { u8 operation_byte = *data++; u8 operation_size = 0; - if (operation_byte == MIPI_SEQ_ELEM_END) - break; - if (operation_byte < ARRAY_SIZE(exec_elem)) mipi_elem_exec = exec_elem[operation_byte]; else From patchwork Thu Nov 2 15:12:20 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 160932 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:8f47:0:b0:403:3b70:6f57 with SMTP id j7csp424132vqu; Thu, 2 Nov 2023 08:13:53 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGFLT4KBLnK+OILA47ibrF40/v1n/jP22ds7f/7ZO09VbRKPc3U1IwYmC0Lij+LxTB/RMP6 X-Received: by 2002:a05:6a20:8f1c:b0:153:63b9:8bf9 with SMTP id b28-20020a056a208f1c00b0015363b98bf9mr23316541pzk.0.1698938033003; Thu, 02 Nov 2023 08:13:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698938032; cv=none; d=google.com; s=arc-20160816; b=ZEmZGonA6vnfyO/Hs/IxGMj+wLFOd7U3HPY/XpJ62bK1hZe013LRY75KvTcipOs+7Q XgkJQ3H0mnX9pkjctgdMMvmj7qjGVS5HtXJdWoNQQIY4X//SyBak0rTWe3gHeLHcQqZN UdidRiGqJ83+VE14v474c/KZLHQ1UgBp11gWw4Srjl9uOBUFsFcddmOiWWNSsxyPPHnz IOx/K5iFhHfPaJAuUDawEH3/ekwA2NLSTVTlw+VuppXXkLQe01vp3RikYD4NDRehaXly d/XZ/MIJsQHH7o51Gl1NQ4NYehE6DcrZwI00jAqjfAoD35pGyl7Z26QfugypmCMYaGUe 83BA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=ER1emMhMIRO/2bl7ZTwHUAlZs2KuQJ1mUaQX5DUqbrI=; fh=V5ywgBf85rQkHF36Ko7g9kTUFkdCX9ky0xG0tyEYPww=; b=huAEgwzUQXXyQE8fcdnmdAVIvxRuxy90IagRHeMFQY8biatWXI9zUvCUxlTmLPrkrt 6s+cCQn9/NFjGicRXnnTZe6DxDiqrc39rN2sJ1r5RHNMjxN22OMsNhh9LqmaIZhj5SX2 o6YWskHkNEU2nYQ0cUzQ0TiI9Fc7qEIOFjILxe9DXJlbocT1LJ4vehHPA/UxlSkvaQXN XtFzPmQ6vGCROjViKNZElkKV6e+aMq92U7TaB3z5n472jdxRCfIbYbBiUe3Yg7AtvWda E7Pp4l0Mm0My8tFne1TDc6th8D5ZgjNrHb2vl/rvBZ51F4mW7glKNCqxjzyhZtOlrJ/X njLA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=Gd9C50G+; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from snail.vger.email (snail.vger.email. [23.128.96.37]) by mx.google.com with ESMTPS id l125-20020a633e83000000b0058988999c70si1994346pga.165.2023.11.02.08.13.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Nov 2023 08:13:52 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) client-ip=23.128.96.37; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=Gd9C50G+; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 11186823CEBC; Thu, 2 Nov 2023 08:13:42 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347650AbjKBPNe (ORCPT + 35 others); Thu, 2 Nov 2023 11:13:34 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49226 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1347529AbjKBPNA (ORCPT ); Thu, 2 Nov 2023 11:13:00 -0400 Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5E851193 for ; Thu, 2 Nov 2023 08:12:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1698937973; x=1730473973; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=OjtX56iRe2R3p5yMpkS5TZ75eagAFRwkxp7gUYAmyeg=; b=Gd9C50G+Moyuqb1fDgEDubMSgw9GEe4Gt1MY8yv6XV0ukjnhjJz1V6S9 XBRp/qNqMQRDSBGoWGw0YLbApxl6M8xkyNK+SE5qdJfyzmJ+J+8RoCK0f u+VP7jzw7xAN/UWgFjnqyD6Nmi8ce4fxXWTsA9UwM102ypxWAeBvMuJoh fOx9bG+fp8r6TXyCde+qLJiJJgb8SUWwINUbtvZP5EMMo4p7GbuQLbxpu hlk3MOHAIASjKn+we0B+DEBozoV3hUqs+XwmfdzyN1oCfP30INg9s7ZfS UHIA1QIi8cNk9lsds6hWUZaiUBqnU/SV1SogP+aJQ3Nu+pHRrd9bGmzva w==; X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="373773472" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="373773472" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Nov 2023 08:12:40 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="711174072" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="711174072" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga003.jf.intel.com with ESMTP; 02 Nov 2023 08:12:36 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id DC358644; Thu, 2 Nov 2023 17:12:30 +0200 (EET) From: Andy Shevchenko To: Jani Nikula , Andy Shevchenko , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , Hans de Goede , Andi Shyti Subject: [PATCH v3 07/15] drm/i915/dsi: Get rid of redundant 'else' Date: Thu, 2 Nov 2023 17:12:20 +0200 Message-Id: <20231102151228.668842-8-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.40.0.1.gaa8946217a0b In-Reply-To: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> References: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED, SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Thu, 02 Nov 2023 08:13:42 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781465646812919139 X-GMAIL-MSGID: 1781465646812919139 In the snippets like the following if (...) return / goto / break / continue ...; else ... the 'else' is redundant. Get rid of it. Reviewed-by: Andi Shyti Signed-off-by: Andy Shevchenko --- drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 58 ++++++++++---------- 1 file changed, 28 insertions(+), 30 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c index 290a112f1b63..4ed5ede9ec5b 100644 --- a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c +++ b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c @@ -142,7 +142,7 @@ static enum port intel_dsi_seq_port_to_port(struct intel_dsi *intel_dsi, if (seq_port) { if (intel_dsi->ports & BIT(PORT_B)) return PORT_B; - else if (intel_dsi->ports & BIT(PORT_C)) + if (intel_dsi->ports & BIT(PORT_C)) return PORT_C; } @@ -670,8 +670,8 @@ static const char *sequence_name(enum mipi_seq seq_id) { if (seq_id < ARRAY_SIZE(seq_name) && seq_name[seq_id]) return seq_name[seq_id]; - else - return "(unknown)"; + + return "(unknown)"; } static void intel_dsi_vbt_exec(struct intel_dsi *intel_dsi, @@ -865,36 +865,34 @@ bool intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id) * multiply by 100 to preserve remainder */ if (intel_dsi->video_mode == BURST_MODE) { - if (mipi_config->target_burst_mode_freq) { - u32 bitrate = intel_dsi_bitrate(intel_dsi); + u32 bitrate; - /* - * Sometimes the VBT contains a slightly lower clock, - * then the bitrate we have calculated, in this case - * just replace it with the calculated bitrate. - */ - if (mipi_config->target_burst_mode_freq < bitrate && - intel_fuzzy_clock_check( - mipi_config->target_burst_mode_freq, - bitrate)) - mipi_config->target_burst_mode_freq = bitrate; - - if (mipi_config->target_burst_mode_freq < bitrate) { - drm_err(&dev_priv->drm, - "Burst mode freq is less than computed\n"); - return false; - } - - burst_mode_ratio = DIV_ROUND_UP( - mipi_config->target_burst_mode_freq * 100, - bitrate); - - intel_dsi->pclk = DIV_ROUND_UP(intel_dsi->pclk * burst_mode_ratio, 100); - } else { - drm_err(&dev_priv->drm, - "Burst mode target is not set\n"); + if (mipi_config->target_burst_mode_freq == 0) { + drm_err(&dev_priv->drm, "Burst mode target is not set\n"); return false; } + + bitrate = intel_dsi_bitrate(intel_dsi); + + /* + * Sometimes the VBT contains a slightly lower clock, then + * the bitrate we have calculated, in this case just replace it + * with the calculated bitrate. + */ + if (mipi_config->target_burst_mode_freq < bitrate && + intel_fuzzy_clock_check(mipi_config->target_burst_mode_freq, + bitrate)) + mipi_config->target_burst_mode_freq = bitrate; + + if (mipi_config->target_burst_mode_freq < bitrate) { + drm_err(&dev_priv->drm, "Burst mode freq is less than computed\n"); + return false; + } + + burst_mode_ratio = + DIV_ROUND_UP(mipi_config->target_burst_mode_freq * 100, bitrate); + + intel_dsi->pclk = DIV_ROUND_UP(intel_dsi->pclk * burst_mode_ratio, 100); } else burst_mode_ratio = 100; From patchwork Thu Nov 2 15:12:21 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 160931 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:8f47:0:b0:403:3b70:6f57 with SMTP id j7csp424103vqu; Thu, 2 Nov 2023 08:13:50 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFhtUw/QAMcMD9/AoMzx3JYkLIO7VVEPY6CUrOvCHg7f5YmLLzXR1egLPexruO1H2ROLuTR X-Received: by 2002:a05:6a20:e101:b0:181:b23a:b88c with SMTP id kr1-20020a056a20e10100b00181b23ab88cmr1615379pzb.49.1698938029921; Thu, 02 Nov 2023 08:13:49 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698938029; cv=none; d=google.com; s=arc-20160816; b=eukbJqrhzNG0slH6dPOAStqbeClVJlGsVbj3m32jrwL0xGLxsfO0fEz1TLV8whaqtP XcijB5HnAfQt5QnMymoDud9rO5k428rMiwx/tzl6QuLxOnU6CUDKr6ZhVf8p5QQgqnJf hr8BVdREnrDH2JwKXFpfCVPKRymj2IvInRLHSwYkVVW7FjfJHgc7zsbo3Qtx5Hw5Yo2U 6Eun/BLMfwT5lWY5cTHWe7KmPQ3DO0MN5cKzSzg9ygSGYV/ZTK+4JaHEKj6MQ7nEvpqz uQ0F/Lwmn4fBGC2adS/Lcd8Vo61Oak6ln1M1grSGbkFm9d0dQw8+IJU9qRuU+hqQ3gvk g/kA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=oIMmKySKw7gyB97KpcVj84ElMUCRTot2jwvs7fLC70o=; fh=V5ywgBf85rQkHF36Ko7g9kTUFkdCX9ky0xG0tyEYPww=; b=ZF1ry8KQ1jh+/FnMSBC1fiOz0Wy0r8L4VDtTevou1//h2LBdYASudEhKXz+5RD8Rpz eyQdWvexytfx1FnKvxI2afs2mV9uQZJLNUQ4KqzyKpqt9cXmxXxu8LPtXsdVb073au4j Kbi+QNSilgB5QDFKshd4YoJ5KlB/IX8dzQr7pBaMRSozBN7jFDv8MdB6iYygpAt+3zYC 0qZyWYr2m4eD9mv9DYzpkuYKkfBTZnHPPlw4mJRx6saiTqBNIKPNlDSA+uBHOsHeu+74 6R8StHMRonHNFmDEOVNrIJGTjZ9cW9VyhFwBtHRMroA+cc4cij2I42pj1byx/c/e872j qRXA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=MjE6fIh4; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from snail.vger.email (snail.vger.email. [23.128.96.37]) by mx.google.com with ESMTPS id r20-20020a6560d4000000b005b8edc44692si1872799pgv.721.2023.11.02.08.13.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Nov 2023 08:13:49 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) client-ip=23.128.96.37; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=MjE6fIh4; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id E0873826DBC5; Thu, 2 Nov 2023 08:13:38 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1346324AbjKBPNb (ORCPT + 35 others); Thu, 2 Nov 2023 11:13:31 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42562 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1346685AbjKBPMz (ORCPT ); Thu, 2 Nov 2023 11:12:55 -0400 Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9FF7F194 for ; Thu, 2 Nov 2023 08:12:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1698937966; x=1730473966; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=GllTeDr5X3asel3oBTv59ZoUHW/F9FWypvBlv9MLNPM=; b=MjE6fIh4ikPtKaBX47Ba5LzOYVic2HPIDI8hYHAcLnt1RWc1QxGXVTtk PVdzgIr4YswHxJ9DgCCNryT/ZxBnRAakcXP6JRVP8vaI60VCjwHcw+W3u 1RbcUa4UYOBNVgXng2E2nRdmtTywDt8zyjHVXVagRC8Ic6oefdxv0CA+z B96tS/LvnH5dHx8V0rmhpdC2iwjUFdl7Dw/PmMOZPAcxXY/f3em6C2pL2 qRZ+XSK9v6tRzQEiaoVyxrzsAmdP6Rs6Jb8Ds81FXE0/vfgtenop7OEVz e8CDIAgChpJSpi66sanXDp/qHMoFWTGKEopFh0r9ajMN8ekkqz6u3uejK g==; X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="373773467" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="373773467" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Nov 2023 08:12:40 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="711174070" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="711174070" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga003.jf.intel.com with ESMTP; 02 Nov 2023 08:12:36 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id E881D65B; Thu, 2 Nov 2023 17:12:30 +0200 (EET) From: Andy Shevchenko To: Jani Nikula , Andy Shevchenko , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , Hans de Goede , Andi Shyti Subject: [PATCH v3 08/15] drm/i915/dsi: Replace check with a (missing) MIPI sequence name Date: Thu, 2 Nov 2023 17:12:21 +0200 Message-Id: <20231102151228.668842-9-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.40.0.1.gaa8946217a0b In-Reply-To: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> References: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED, SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Thu, 02 Nov 2023 08:13:39 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781465643761084290 X-GMAIL-MSGID: 1781465643761084290 Names of the MIPI sequence steps are sequential and defined, no need to check for the gaps. However in seq_name the MIPI_SEQ_END is missing. Add it there, and drop unneeded NULL check in sequence_name(). Reviewed-by: Andi Shyti Signed-off-by: Andy Shevchenko --- drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c index 4ed5ede9ec5b..d270437217b3 100644 --- a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c +++ b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c @@ -653,6 +653,7 @@ static const fn_mipi_elem_exec exec_elem[] = { */ static const char * const seq_name[] = { + [MIPI_SEQ_END] = "MIPI_SEQ_END", [MIPI_SEQ_DEASSERT_RESET] = "MIPI_SEQ_DEASSERT_RESET", [MIPI_SEQ_INIT_OTP] = "MIPI_SEQ_INIT_OTP", [MIPI_SEQ_DISPLAY_ON] = "MIPI_SEQ_DISPLAY_ON", @@ -668,7 +669,7 @@ static const char * const seq_name[] = { static const char *sequence_name(enum mipi_seq seq_id) { - if (seq_id < ARRAY_SIZE(seq_name) && seq_name[seq_id]) + if (seq_id < ARRAY_SIZE(seq_name)) return seq_name[seq_id]; return "(unknown)"; From patchwork Thu Nov 2 15:12:22 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 160933 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:8f47:0:b0:403:3b70:6f57 with SMTP id j7csp424133vqu; Thu, 2 Nov 2023 08:13:53 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEhD7HFgQYMqGu1j2jf8u1L9saGGvk5CnQqNukcfJWusR/vqnw9haQidxy7pJeX/Zgg/nI1 X-Received: by 2002:a05:6a20:160e:b0:17b:2b7e:923a with SMTP id l14-20020a056a20160e00b0017b2b7e923amr18267544pzj.7.1698938033051; Thu, 02 Nov 2023 08:13:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698938033; cv=none; d=google.com; s=arc-20160816; b=v0vYcSLcUhHaPd+lSpRjSL6CM97wVn+cDwwUX5XP9Mi22Zm6dcSPPi+v2ubfObGOIk a1boys2lTD40YiCF7nwk4xyT50fP3I9kI/yGEHtFvKtCNq0D7M8d1QYJVJT6zFMVM/58 JrvssQ3AZMlc6B+hpL3gCDbdtVpKbgtm7HKHN/ayDzTo1BYOZk7lt7V7TN2f10YRRrRb I9qO6BngyQUWJJdq7qhjDocKrvi+/j7ilJrWlzEDCXO+W1gxISHtFelN93FIaFV3IoOz IAO9rBKhjWMguv9llAaoPFmkeiP7WK3XsT7Aej4TYcp2YzXl7WnNefdtoeyX6u7DPgId NY3A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=pns3+jGURCBE2Dbzpip28imN3tRaoOSQ0sIU3ksp9ds=; fh=W9Apx1mxfI4Sn4Tfu/ApINr5FKslMaF8Hy7vCgvNWsQ=; b=pbiVBz11mIze2xSnioYXFd9+iLg6iRz6v0jnECRLDNbxVAkVJtL44zQZaTNuzaqZA6 xX3yaR1WkAk08JPCzCRtLwEn8biahXbQnCoyiY9n2Agwr/bFopHulEKPOeCC2+bRfGUQ wI3bD6tHlEuK/QVgiW0XNgh0B2niMHfGIZUkWbbtJIRnAYzgqMhSy9U5OOuXma/srphG kpdANxnR2XUk9MTmNzZE99lVZCAWbF8+8+LHylyQmF/XRBzdHbr8jvOYFLeeQ7+qciC+ TlzBoid6VpzLTtN9Gjl1PIFHAsKvaLEfhjKGLNdIpz0Yt4K2yvt8dJX3iPq06dEVm/6j wFvQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=mFLgUlR7; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from snail.vger.email (snail.vger.email. [2620:137:e000::3:7]) by mx.google.com with ESMTPS id fh13-20020a056a00390d00b006c081a3fe4dsi3844593pfb.259.2023.11.02.08.13.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Nov 2023 08:13:53 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) client-ip=2620:137:e000::3:7; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=mFLgUlR7; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 135D5826C0F4; Thu, 2 Nov 2023 08:13:42 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347718AbjKBPNi (ORCPT + 35 others); Thu, 2 Nov 2023 11:13:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49244 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1347540AbjKBPNA (ORCPT ); Thu, 2 Nov 2023 11:13:00 -0400 Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2563918B for ; Thu, 2 Nov 2023 08:12:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1698937974; x=1730473974; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=d5TnJD8mZT4XCWRMm2D4HqLq+7mmDEPFtEmjmsmEvVE=; b=mFLgUlR76hkhjwo4koa+PL3BEYgn3Yuw0U48qFrE+/jGbvO4h2JmWFri UAtTTfx7oa7ygFmfFVU5Y9bqAT9t0WrZvjr1LBj1esZCgvIbskYBEqizj ktbhtJB5SV+2ndjodZbncQIUdo2iAjttgz0x3jZL7abD3jXfxCDSjIiEv 4y4OPkD6E23XXO9MBw3cdnz+XV1zUhp4utVnW6FljyIP+6suhJChViZI0 WeTTZohX+2uQIAmukIWA9mF4hf18EBTwIgvlTzAMe498Mwrmibmx7STMo APdDFf24tzbrGqwmON70DfWKijTRRo9EdlBPg82biCuYNaOUHOIKVG37K g==; X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="373773478" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="373773478" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Nov 2023 08:12:40 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="711174074" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="711174074" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga003.jf.intel.com with ESMTP; 02 Nov 2023 08:12:36 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id 03C84690; Thu, 2 Nov 2023 17:12:30 +0200 (EET) From: Andy Shevchenko To: Jani Nikula , Andy Shevchenko , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , Hans de Goede Subject: [PATCH v3 09/15] drm/i915/dsi: Remove GPIO lookup table at the end of intel_dsi_vbt_gpio_init() Date: Thu, 2 Nov 2023 17:12:22 +0200 Message-Id: <20231102151228.668842-10-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.40.0.1.gaa8946217a0b In-Reply-To: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> References: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED, SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Thu, 02 Nov 2023 08:13:42 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781465646667757193 X-GMAIL-MSGID: 1781465646667757193 From: Hans de Goede To properly deal with GPIOs used in MIPI panel sequences a temporary GPIO lookup will be used. Since there can only be 1 GPIO lookup table for the "0000:00:02.0" device this will not work if the GPIO lookup table used by intel_dsi_vbt_gpio_init() is still registered. After getting the "backlight" and "panel" GPIOs the lookup table registered by intel_dsi_vbt_gpio_init() is no longer necessary, remove it so that another temporary lookup-table for the "0000:00:02.0" device can be added. Signed-off-by: Hans de Goede Signed-off-by: Andy Shevchenko --- drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 25 +++++++------------- 1 file changed, 9 insertions(+), 16 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c index d270437217b3..8e6beef90e5e 100644 --- a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c +++ b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c @@ -955,6 +955,7 @@ void intel_dsi_vbt_gpio_init(struct intel_dsi *intel_dsi, bool panel_is_on) struct intel_connector *connector = intel_dsi->attached_connector; struct mipi_config *mipi_config = connector->panel.vbt.dsi.config; enum gpiod_flags flags = panel_is_on ? GPIOD_OUT_HIGH : GPIOD_OUT_LOW; + struct gpiod_lookup_table *gpiod_lookup_table = NULL; bool want_backlight_gpio = false; bool want_panel_gpio = false; struct pinctrl *pinctrl; @@ -962,12 +963,12 @@ void intel_dsi_vbt_gpio_init(struct intel_dsi *intel_dsi, bool panel_is_on) if ((IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv)) && mipi_config->pwm_blc == PPS_BLC_PMIC) { - gpiod_add_lookup_table(&pmic_panel_gpio_table); + gpiod_lookup_table = &pmic_panel_gpio_table; want_panel_gpio = true; } if (IS_VALLEYVIEW(dev_priv) && mipi_config->pwm_blc == PPS_BLC_SOC) { - gpiod_add_lookup_table(&soc_panel_gpio_table); + gpiod_lookup_table = &soc_panel_gpio_table; want_panel_gpio = true; want_backlight_gpio = true; @@ -984,6 +985,9 @@ void intel_dsi_vbt_gpio_init(struct intel_dsi *intel_dsi, bool panel_is_on) "Failed to set pinmux to PWM\n"); } + if (gpiod_lookup_table) + gpiod_add_lookup_table(gpiod_lookup_table); + if (want_panel_gpio) { intel_dsi->gpio_panel = gpiod_get(dev->dev, "panel", flags); if (IS_ERR(intel_dsi->gpio_panel)) { @@ -1002,15 +1006,13 @@ void intel_dsi_vbt_gpio_init(struct intel_dsi *intel_dsi, bool panel_is_on) intel_dsi->gpio_backlight = NULL; } } + + if (gpiod_lookup_table) + gpiod_remove_lookup_table(gpiod_lookup_table); } void intel_dsi_vbt_gpio_cleanup(struct intel_dsi *intel_dsi) { - struct drm_device *dev = intel_dsi->base.base.dev; - struct drm_i915_private *dev_priv = to_i915(dev); - struct intel_connector *connector = intel_dsi->attached_connector; - struct mipi_config *mipi_config = connector->panel.vbt.dsi.config; - if (intel_dsi->gpio_panel) { gpiod_put(intel_dsi->gpio_panel); intel_dsi->gpio_panel = NULL; @@ -1020,13 +1022,4 @@ void intel_dsi_vbt_gpio_cleanup(struct intel_dsi *intel_dsi) gpiod_put(intel_dsi->gpio_backlight); intel_dsi->gpio_backlight = NULL; } - - if ((IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv)) && - mipi_config->pwm_blc == PPS_BLC_PMIC) - gpiod_remove_lookup_table(&pmic_panel_gpio_table); - - if (IS_VALLEYVIEW(dev_priv) && mipi_config->pwm_blc == PPS_BLC_SOC) { - pinctrl_unregister_mappings(soc_pwm_pinctrl_map); - gpiod_remove_lookup_table(&soc_panel_gpio_table); - } } From patchwork Thu Nov 2 15:12:23 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 160926 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:8f47:0:b0:403:3b70:6f57 with SMTP id j7csp423812vqu; Thu, 2 Nov 2023 08:13:28 -0700 (PDT) X-Google-Smtp-Source: AGHT+IF6FXd3ZQBrs3/PKCkFc9hqwzlk7arpMAe7LlcTH8QQGuFkTR+nLMpNiZ04FjSxG2OWHWv0 X-Received: by 2002:a05:6a20:3d82:b0:16b:9886:7eda with SMTP id s2-20020a056a203d8200b0016b98867edamr21764709pzi.35.1698938008610; Thu, 02 Nov 2023 08:13:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698938008; cv=none; d=google.com; s=arc-20160816; b=XhMICY52JL4t0vw0Mg/XSd/vAO6NyhI6P1WJmKwBmEeLlVSnjRO9QgIcz6hGru55Qi 3EjfbWWEAJ40VFH/pZwxEyWGJaTJo67kkaufqeCNgSDTzpMHOcwPtZ8+Rjeo6SzWDIfO nsfIPUN6hN3cVNyYBJr1qiHhfEZ5WNMWiSMM8MT6nuOplTSoNIMFkX9igheESeUvYEuB EV3Py6qQcF9EnSZusxAtJr1IVr73znURE6Zj4R9xzH49jS5LPa+i3xE9Ra4hssi2LJ9w sTEzKefKHbnPwfTyJW6eJoHyvpYFnQ4kPadlPGTesz0rxUgq7YvZ9YuxRGgI5jFfbFPu tdow== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=q0uv42fuhulH/dUMageM0zLyCy4tlcQOEZWXIGsTMJg=; fh=W9Apx1mxfI4Sn4Tfu/ApINr5FKslMaF8Hy7vCgvNWsQ=; b=mDGykZMzsf6YabRJqGaPMCgKbGon58eJAdnaIpJCslVTB9DdUPQOlcjr8Hlde/T+2+ zfHE+7EpFhhMZmkZ1DsAepHMhxab/mamTkF//ffUsDML7fwnWGHLzvMY1oAXdg9/+paC thSQd+weN/0zH1evdA7b3epOJoYvQEvyt9Mjj5Tc63e1kOonE3tgTqRBem8ioDSNTAUb GDwHiLOlASkG4FOTgrqzaf1ZZ5Xo73SdegY4IKrxghrtqkkZ8Wa6lMAXfnhWIG6RCNUx MUNjMKT5w2kcR6//k0vKghIk95KkQZc83wJnux4cuifu1/ygzQlAc05AOsWxBWBGXxOi /3vA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=DTQFJ32l; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from snail.vger.email (snail.vger.email. [2620:137:e000::3:7]) by mx.google.com with ESMTPS id j63-20020a638042000000b005abdf91a0c4si1826973pgd.611.2023.11.02.08.13.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Nov 2023 08:13:28 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) client-ip=2620:137:e000::3:7; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=DTQFJ32l; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id C84588269180; Thu, 2 Nov 2023 08:13:24 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347090AbjKBPNR (ORCPT + 35 others); Thu, 2 Nov 2023 11:13:17 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42548 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235605AbjKBPMu (ORCPT ); Thu, 2 Nov 2023 11:12:50 -0400 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3BD08D63 for ; Thu, 2 Nov 2023 08:12:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1698937960; x=1730473960; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=ODvGQw6Tg94m3psZSIA44X71pQMmWqIy0X3VaZ/r7qU=; b=DTQFJ32ls1Gn1cn8Fc2Nlfg3bQDPT/T1XuZ5TfdFja99PJ0i0PSRmUdu KCT8pmp01n5GWr8UqBuOL+9qwSp8xWTn2rmknthyPNaaFBl6O84M08LJi PnFnAaZcX/gBF20eDfyxj43ZZJ3dw4HqbD7kAvsK1Y57SSKFhosNxClUu TFy9+XxAhn3BGhym1EGHNdgddBxrflA5h4up2z57HV23BD66UUmMalfhm LnB6NbLQWspPmAu78OCoT+pYyKh7QKVZToqklCESdVw3dkc91qwPg2HBA brFvnNL+KFJ/r/LH7CqLUy9ANUMhKFHFwmTcLvAHGtv9uHyEqNkEUrFLv g==; X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="1660170" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="1660170" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Nov 2023 08:12:40 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="737784566" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="737784566" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga006.jf.intel.com with ESMTP; 02 Nov 2023 08:12:36 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id 0E9036B4; Thu, 2 Nov 2023 17:12:31 +0200 (EET) From: Andy Shevchenko To: Jani Nikula , Andy Shevchenko , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , Hans de Goede Subject: [PATCH v3 10/15] drm/i915/dsi: Fix wrong initial value for GPIOs in bxt_exec_gpio() Date: Thu, 2 Nov 2023 17:12:23 +0200 Message-Id: <20231102151228.668842-11-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.40.0.1.gaa8946217a0b In-Reply-To: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> References: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,SPF_HELO_NONE,SPF_NONE, T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Thu, 02 Nov 2023 08:13:24 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781465621336787067 X-GMAIL-MSGID: 1781465621336787067 From: Hans de Goede Fix wrong initial value for GPIOs in bxt_exec_gpio(). Signed-off-by: Hans de Goede Signed-off-by: Andy Shevchenko --- drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c index 8e6beef90e5e..0f9da0168a7b 100644 --- a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c +++ b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c @@ -356,9 +356,7 @@ static void bxt_gpio_set_value(struct intel_connector *connector, if (!gpio_desc) { gpio_desc = devm_gpiod_get_index(dev_priv->drm.dev, NULL, gpio_index, - value ? GPIOD_OUT_LOW : - GPIOD_OUT_HIGH); - + value ? GPIOD_OUT_HIGH : GPIOD_OUT_LOW); if (IS_ERR_OR_NULL(gpio_desc)) { drm_err(&dev_priv->drm, "GPIO index %u request failed (%ld)\n", From patchwork Thu Nov 2 15:12:24 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 160927 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:8f47:0:b0:403:3b70:6f57 with SMTP id j7csp424045vqu; Thu, 2 Nov 2023 08:13:46 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHw/zrYBOCAEJNNO9L2L7LKDkeS2lF3TdYi93EIju1C3UAgwuKR+CDevtjfbHei66ym2JZs X-Received: by 2002:a05:6a21:6d86:b0:166:82cf:424a with SMTP id wl6-20020a056a216d8600b0016682cf424amr18403329pzb.33.1698938025884; Thu, 02 Nov 2023 08:13:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698938025; cv=none; d=google.com; s=arc-20160816; b=BtlDnnMr7VVGfhzSJZi71pYH9WNt3tkToZkAvG894s9z/DsN+ekYDY20sBAk7pxQNW eF+HNUDWlXSnXPlsC1QxlAkeG9+O+LepRXqgylw23qJ4eKEyRLpns/ManztId8fUX+eu GT8IZ5m54TbbKx1gbZhvZjkmwU6SwfbLA1EhCoV6eyQFEAc8dEz+oDIkU4g1EGromysO nq4PkSWDlNov33oD6bps0oTkgpljR5kkxB/g1Fso2Nn0mnvzsWkNGZTJgzJwjCa+a68P JDApEmz8Z0Rx4ow6dnudzshzOoyefUb/sG0xJAZE4PxmfNSOmalMSEHnkQS6xEK3qjAX 53mA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=Kpod/AbA98A3aJmp40hVCjwntV5Lu4v34vGTSXvV0Jk=; fh=W9Apx1mxfI4Sn4Tfu/ApINr5FKslMaF8Hy7vCgvNWsQ=; b=nnF3OZIna2B8kMzZbHZZ58GKICdJRBQQNMMMwVvz3kQWNhKsfh21uo7CDCq08adY1f 0OQrNHWnAhj0dkbdXcqo37X5p2bLX28bPvgz3zMtBGYLRmFxZm0z9o8okGzGoEP6aW+4 2ZO4N7G6LJ99Kop/Chtl05G9ZbPGFvdH+NHBhwyFogQImgEsvO5wlFWGtlBo7TTvNRLh tnD+QGkzps8XUNwI7ctb2zs1JQUYu3/Bm6ZXcG4vBQezib3Cj9qPD5L8kMnCg77YiEPO rlAUxgfVVAnBp+LVrKj8/SpZUwlmb59NTbemJwNmCW3fS3/vnDIoWBY200ArcOQ5MzC+ TzVg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=MVNGOqE0; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from snail.vger.email (snail.vger.email. [2620:137:e000::3:7]) by mx.google.com with ESMTPS id t32-20020a056a0013a000b006be246c6decsi3663209pfg.351.2023.11.02.08.13.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Nov 2023 08:13:45 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) client-ip=2620:137:e000::3:7; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=MVNGOqE0; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 27888825D128; Thu, 2 Nov 2023 08:13:31 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347685AbjKBPNX (ORCPT + 35 others); Thu, 2 Nov 2023 11:13:23 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42488 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1346201AbjKBPMz (ORCPT ); Thu, 2 Nov 2023 11:12:55 -0400 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EC727D7B for ; Thu, 2 Nov 2023 08:12:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1698937966; x=1730473966; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=rHniHgFscmNqI1jUGvH0qfntkiUkNVL9qWW5lkhoJb8=; b=MVNGOqE0sEs39Ybi+R3Bc61KM4Wy1Tw97A0Lnrqlsd43RgWmcgPeV/YH QCLc+S1LsaMvr8+8c132lynsHvuL3GxT8OpiKNOFbZv7nKWa9p+CTQXao 9+Q/FkE23iYAnjlLJPNz6gGxf+KNXzEHkBi2iUol4qDKoWVSQjFbqNFwi hWkrtvdPUxaetHlUFvQaDGRLGah6z5PTtud8i7LKUPC8Lb2hT8wV8ILtH SzR/ighcyJdwQJZF0Y+e9CQCFDgHZkNZ0LipfJDtgTyJYvYoZSNF+NpQ8 Fk/gHVQsYOjb5sU26PqeZMJFv4cIOOIP9I7WOsaBQOPowOD8IoxXvrDG7 Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="1660188" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="1660188" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Nov 2023 08:12:40 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="737784569" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="737784569" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga006.jf.intel.com with ESMTP; 02 Nov 2023 08:12:36 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id 1D98E6B5; Thu, 2 Nov 2023 17:12:31 +0200 (EET) From: Andy Shevchenko To: Jani Nikula , Andy Shevchenko , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , Hans de Goede Subject: [PATCH v3 11/15] drm/i915/dsi: Extract common soc_gpio_set_value() helper Date: Thu, 2 Nov 2023 17:12:24 +0200 Message-Id: <20231102151228.668842-12-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.40.0.1.gaa8946217a0b In-Reply-To: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> References: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,SPF_HELO_NONE,SPF_NONE, T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Thu, 02 Nov 2023 08:13:31 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781465639103792662 X-GMAIL-MSGID: 1781465639103792662 Extract a common soc_gpio_set_value() helper that may be used by a few SoCs. Signed-off-by: Andy Shevchenko --- drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 46 +++++++++++--------- 1 file changed, 26 insertions(+), 20 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c index 0f9da0168a7b..9847a92fdfc3 100644 --- a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c +++ b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c @@ -243,6 +243,31 @@ static const u8 *mipi_exec_delay(struct intel_dsi *intel_dsi, const u8 *data) return data; } +static void soc_gpio_set_value(struct intel_connector *connector, const char *con_id, + u8 gpio_index, bool value) +{ + struct drm_i915_private *dev_priv = to_i915(connector->base.dev); + /* XXX: this table is a quick ugly hack. */ + static struct gpio_desc *soc_gpio_table[U8_MAX + 1]; + struct gpio_desc *gpio_desc = soc_gpio_table[gpio_index]; + + if (gpio_desc) { + gpiod_set_value(gpio_desc, value); + } else { + gpio_desc = devm_gpiod_get_index(dev_priv->drm.dev, + con_id, gpio_index, + value ? GPIOD_OUT_HIGH : GPIOD_OUT_LOW); + if (IS_ERR(gpio_desc)) { + drm_err(&dev_priv->drm, + "GPIO index %u request failed (%pe)\n", + gpio_index, gpio_desc); + return; + } + + soc_gpio_table[gpio_index] = gpio_desc; + } +} + static void vlv_gpio_set_value(struct intel_connector *connector, u8 gpio_source, u8 gpio_index, bool value) { @@ -348,26 +373,7 @@ static void chv_gpio_set_value(struct intel_connector *connector, static void bxt_gpio_set_value(struct intel_connector *connector, u8 gpio_index, bool value) { - struct drm_i915_private *dev_priv = to_i915(connector->base.dev); - /* XXX: this table is a quick ugly hack. */ - static struct gpio_desc *bxt_gpio_table[U8_MAX + 1]; - struct gpio_desc *gpio_desc = bxt_gpio_table[gpio_index]; - - if (!gpio_desc) { - gpio_desc = devm_gpiod_get_index(dev_priv->drm.dev, - NULL, gpio_index, - value ? GPIOD_OUT_HIGH : GPIOD_OUT_LOW); - if (IS_ERR_OR_NULL(gpio_desc)) { - drm_err(&dev_priv->drm, - "GPIO index %u request failed (%ld)\n", - gpio_index, PTR_ERR(gpio_desc)); - return; - } - - bxt_gpio_table[gpio_index] = gpio_desc; - } - - gpiod_set_value(gpio_desc, value); + soc_gpio_set_value(connector, NULL, gpio_index, value); } enum { From patchwork Thu Nov 2 15:12:25 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 160924 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:8f47:0:b0:403:3b70:6f57 with SMTP id j7csp423730vqu; Thu, 2 Nov 2023 08:13:23 -0700 (PDT) X-Google-Smtp-Source: AGHT+IE1y0Ub926KoQY/IdXOj/EB6Aqp9OH90Tk/w1xPuM3UJawpDtpz3jMZyvI90zp+Xb8uf6w2 X-Received: by 2002:a17:90a:5a82:b0:27e:1ea0:c6fc with SMTP id n2-20020a17090a5a8200b0027e1ea0c6fcmr15117881pji.6.1698938002914; Thu, 02 Nov 2023 08:13:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698938002; cv=none; d=google.com; s=arc-20160816; b=R/X6ETr5cdbc5uL3bMlGb0aV1ypVE3621vzcArhghlq+i7PGSAzygPxjbOFTi6ZQvu kR4dlKK4ptgXUQRprx+pdNDMw9eG948kbYAj3HStjOupJWT79T4Ib3aQbkWqtkWgihS0 Dyyd5VaeIEAeVaIHDz+wA7ejSiaJSkpiehfNCsGN/Se9gNlYYXwLxmeTNg9kNtlZdiIw ZGSFzgfAbxHrCR0hy2xkAdp7BLmOzvv71USpA9i0zX8U0wWF+SRKdLO2njDv1VDuW2nx CF/eoYc2RDyEBHzw9K0jVNT3s/bZp48FbN70seFezBqaHi7WLyL/JodgddngyNrdTM8l vYPw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=zoctGF8QCbkSgLpdzncNfEtst+HzCesf6MNQxPCqb9I=; fh=W9Apx1mxfI4Sn4Tfu/ApINr5FKslMaF8Hy7vCgvNWsQ=; b=Cm7HABedDsuGEu1DDVNyUTamOzabANeHXct6jq1AlTZQbXgZIOV6uZ9RWCzV2l7zOe k4wgvhMFcV6w+4+GfJUbJ/biGZCT+rjROuifAgeZZ2pcdR4z/3pf4iO3XLYV+0HNI3FW wbFsrwwFyu8+AL1G7J702oXCJyT5u9FHP52FUP2WOjLgMCi4NjSiHWgudSoDdEJxyxo4 99wCfONObMRtr3xz1TCojNwS3Mn0lgyRXLBCWFY5+x7cAxwxtkJgYemibB16BiMRzeFJ xZ1/QfN8io2edxYsKCg435EQKBztXF5wjqVv9YyDG8LFURXj8yAFt3PJ/eGs2Gl5H1Cx mn3w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=PGw8EeBG; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from snail.vger.email (snail.vger.email. [23.128.96.37]) by mx.google.com with ESMTPS id k8-20020a17090a590800b00280298a68c4si18430pji.186.2023.11.02.08.13.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Nov 2023 08:13:22 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) client-ip=23.128.96.37; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=PGw8EeBG; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 110658251383; Thu, 2 Nov 2023 08:13:18 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1346371AbjKBPNJ (ORCPT + 35 others); Thu, 2 Nov 2023 11:13:09 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42574 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235616AbjKBPMv (ORCPT ); Thu, 2 Nov 2023 11:12:51 -0400 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 97D51D68 for ; Thu, 2 Nov 2023 08:12:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1698937962; x=1730473962; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=U916ePMmAwBoX5bKvIh4POiqEwJn346oKhQfL/AepWk=; b=PGw8EeBGsn1SFOnLEkytL0HpcDVUGIldF/7+75bRn2E53LNxqxIovS6H a2uI/ncIjKM5Jf66A6PVB0uVFkagKHliOHU2/43D2cLYjnpHOa5e1cWvz w87CaZWu+mpI/u6UsRNY2mD+YYHK2/0L903+lmV1khT01jFiAj0GHjyv0 t4M+qmWJpDdR4VfUYok9dhSSdWHUhpZWYnVchuo+7pkXtzf2PBQ61XF2W LxL6UAirsgep5KqAPJZRMmbqZNglfqL30tYcSvDVjnALDUC87Mn0oFgxO Z+EKZ0oIsEVs5/15XThmql24G0waq414xBfFj8syxQZx1dL+CQ/K7Yuo2 g==; X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="1660175" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="1660175" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Nov 2023 08:12:40 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="737784570" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="737784570" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga006.jf.intel.com with ESMTP; 02 Nov 2023 08:12:36 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id 285F7706; Thu, 2 Nov 2023 17:12:31 +0200 (EET) From: Andy Shevchenko To: Jani Nikula , Andy Shevchenko , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , Hans de Goede Subject: [PATCH v3 12/15] drm/i915/dsi: Replace poking of VLV GPIOs behind the driver's back Date: Thu, 2 Nov 2023 17:12:25 +0200 Message-Id: <20231102151228.668842-13-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.40.0.1.gaa8946217a0b In-Reply-To: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> References: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,SPF_HELO_NONE,SPF_NONE, T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Thu, 02 Nov 2023 08:13:18 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781465615165417709 X-GMAIL-MSGID: 1781465615165417709 It's a dirty hack in the driver that pokes GPIO registers behind the driver's back. Moreoever it might be problematic as simultaneous I/O may hang the system, see the commit 40ecab551232 ("pinctrl: baytrail: Really serialize all register accesses") for the details. Taking all this into consideration replace the hack with proper GPIO APIs being used. Signed-off-by: Andy Shevchenko --- drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 98 ++++++-------------- 1 file changed, 28 insertions(+), 70 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c index 9847a92fdfc3..552bc6564d79 100644 --- a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c +++ b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c @@ -55,43 +55,6 @@ #define MIPI_VIRTUAL_CHANNEL_SHIFT 1 #define MIPI_PORT_SHIFT 3 -/* base offsets for gpio pads */ -#define VLV_GPIO_NC_0_HV_DDI0_HPD 0x4130 -#define VLV_GPIO_NC_1_HV_DDI0_DDC_SDA 0x4120 -#define VLV_GPIO_NC_2_HV_DDI0_DDC_SCL 0x4110 -#define VLV_GPIO_NC_3_PANEL0_VDDEN 0x4140 -#define VLV_GPIO_NC_4_PANEL0_BKLTEN 0x4150 -#define VLV_GPIO_NC_5_PANEL0_BKLTCTL 0x4160 -#define VLV_GPIO_NC_6_HV_DDI1_HPD 0x4180 -#define VLV_GPIO_NC_7_HV_DDI1_DDC_SDA 0x4190 -#define VLV_GPIO_NC_8_HV_DDI1_DDC_SCL 0x4170 -#define VLV_GPIO_NC_9_PANEL1_VDDEN 0x4100 -#define VLV_GPIO_NC_10_PANEL1_BKLTEN 0x40E0 -#define VLV_GPIO_NC_11_PANEL1_BKLTCTL 0x40F0 - -#define VLV_GPIO_PCONF0(base_offset) (base_offset) -#define VLV_GPIO_PAD_VAL(base_offset) ((base_offset) + 8) - -struct gpio_map { - u16 base_offset; - bool init; -}; - -static struct gpio_map vlv_gpio_table[] = { - { VLV_GPIO_NC_0_HV_DDI0_HPD }, - { VLV_GPIO_NC_1_HV_DDI0_DDC_SDA }, - { VLV_GPIO_NC_2_HV_DDI0_DDC_SCL }, - { VLV_GPIO_NC_3_PANEL0_VDDEN }, - { VLV_GPIO_NC_4_PANEL0_BKLTEN }, - { VLV_GPIO_NC_5_PANEL0_BKLTCTL }, - { VLV_GPIO_NC_6_HV_DDI1_HPD }, - { VLV_GPIO_NC_7_HV_DDI1_DDC_SDA }, - { VLV_GPIO_NC_8_HV_DDI1_DDC_SCL }, - { VLV_GPIO_NC_9_PANEL1_VDDEN }, - { VLV_GPIO_NC_10_PANEL1_BKLTEN }, - { VLV_GPIO_NC_11_PANEL1_BKLTCTL }, -}; - struct i2c_adapter_lookup { u16 slave_addr; struct intel_dsi *intel_dsi; @@ -268,52 +231,47 @@ static void soc_gpio_set_value(struct intel_connector *connector, const char *co } } +static void soc_opaque_gpio_set_value(struct intel_connector *connector, + const char *chip, const char *con_id, + u8 gpio_index, bool value) +{ + struct gpiod_lookup_table *lookup; + + lookup = kzalloc(struct_size(lookup, table, 2), GFP_KERNEL); + if (!lookup) + return; + + lookup->dev_id = "0000:00:02.0"; + lookup->table[0] = + GPIO_LOOKUP_IDX(chip, gpio_index, con_id, gpio_index, GPIO_ACTIVE_HIGH); + + gpiod_add_lookup_table(lookup); + + soc_gpio_set_value(connector, con_id, gpio_index, value); + + gpiod_remove_lookup_table(lookup); + kfree(lookup); +} + static void vlv_gpio_set_value(struct intel_connector *connector, u8 gpio_source, u8 gpio_index, bool value) { struct drm_i915_private *dev_priv = to_i915(connector->base.dev); - struct gpio_map *map; - u16 pconf0, padval; - u32 tmp; - u8 port; - if (gpio_index >= ARRAY_SIZE(vlv_gpio_table)) { - drm_dbg_kms(&dev_priv->drm, "unknown gpio index %u\n", - gpio_index); - return; - } - - map = &vlv_gpio_table[gpio_index]; - - if (connector->panel.vbt.dsi.seq_version >= 3) { - /* XXX: this assumes vlv_gpio_table only has NC GPIOs. */ - port = IOSF_PORT_GPIO_NC; - } else { - if (gpio_source == 0) { - port = IOSF_PORT_GPIO_NC; - } else if (gpio_source == 1) { + /* XXX: this assumes vlv_gpio_table only has NC GPIOs. */ + if (connector->panel.vbt.dsi.seq_version < 3) { + if (gpio_source == 1) { drm_dbg_kms(&dev_priv->drm, "SC gpio not supported\n"); return; - } else { + } + if (gpio_source > 1) { drm_dbg_kms(&dev_priv->drm, "unknown gpio source %u\n", gpio_source); return; } } - pconf0 = VLV_GPIO_PCONF0(map->base_offset); - padval = VLV_GPIO_PAD_VAL(map->base_offset); - - vlv_iosf_sb_get(dev_priv, BIT(VLV_IOSF_SB_GPIO)); - if (!map->init) { - /* FIXME: remove constant below */ - vlv_iosf_sb_write(dev_priv, port, pconf0, 0x2000CC00); - map->init = true; - } - - tmp = 0x4 | value; - vlv_iosf_sb_write(dev_priv, port, padval, tmp); - vlv_iosf_sb_put(dev_priv, BIT(VLV_IOSF_SB_GPIO)); + soc_opaque_gpio_set_value(connector, "INT33FC:01", "Panel N", gpio_index, value); } static void chv_gpio_set_value(struct intel_connector *connector, From patchwork Thu Nov 2 15:12:26 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 160934 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:8f47:0:b0:403:3b70:6f57 with SMTP id j7csp424139vqu; Thu, 2 Nov 2023 08:13:53 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFZ6GFwzcXLp2QiHCWfQLb5YdizJG8VSrf5xunKUtYTAGd8xXRT9ZP12ytKFhFmHw0HbRx5 X-Received: by 2002:a17:902:c94c:b0:1cc:70ed:1d68 with SMTP id i12-20020a170902c94c00b001cc70ed1d68mr6959963pla.67.1698938033554; Thu, 02 Nov 2023 08:13:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698938033; cv=none; d=google.com; s=arc-20160816; b=WepCqWRSYKHHHQzx1N13u03e55V/L1Xfo31ndNsFprQBhin71B+Wn5+RBjKCH/iWwH bIxh5DUe23fUfG9CN+YwhKXJUPWml9loKAAJtmtxKlYyfRzfPLzE9W2yTfgf3dZol1Ma pCvoCLsM4FSSTcYXqInmoalPNA6LbWn5ezt0VBpCeA/6QgCTFDFqPjF+LkIJLx0cWAG4 9vbkk73UINNfU2Jye0KlB/Wv9gUsNbn87SElg2ANQIP8Df73m933NaulrV1wxGIut4dg eDkJvVHkjt5o7mDJDRcAsZzPUet1sEQ0xFG8qry1agXEvbJj3uQEs+O7ljr8v8QNQN92 lrqQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=2jf0hsUI75RoATRNlnZkn1Is+Xix5W/3XP94VBgHOEk=; fh=W9Apx1mxfI4Sn4Tfu/ApINr5FKslMaF8Hy7vCgvNWsQ=; b=InNMeldlbNbi9w+2SxcKg4DcPE3v/GdjQ7mqQZBdApV4xCXKWTAZw34tapljaO6NX1 34+84w3tYJsBVpW+SSMj8I6voziKsVIbA02Jm0rdV5m2W80yZuTKl4Dc773j05Et18Jm Lf3slpkS/wR9M+iPLqRICs0w98hb+yCla9Qyvb/0SzZnc9or7xXszo55l2SDVd8FRStA Jf5EuzXXUZEeBWKGEWzDSmVrJ/WbJmHKBaIqlBO/9qx7TE37zPsbqvCw7HARR29zrUFe 0fDF/9zsZF15+JXNQSpAaGL2d3yQ2qGtR2TNYNOTAndmB5A426R5HvaLrK/A7laFX/Zd E41g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=fwT7Yyvj; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from snail.vger.email (snail.vger.email. [23.128.96.37]) by mx.google.com with ESMTPS id jx15-20020a170903138f00b001c20db25108si36540plb.41.2023.11.02.08.13.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Nov 2023 08:13:53 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) client-ip=23.128.96.37; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=fwT7Yyvj; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id E7ACE827004F; Thu, 2 Nov 2023 08:13:44 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347738AbjKBPNl (ORCPT + 35 others); Thu, 2 Nov 2023 11:13:41 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42630 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1347559AbjKBPNB (ORCPT ); Thu, 2 Nov 2023 11:13:01 -0400 Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 71F13195 for ; Thu, 2 Nov 2023 08:12:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1698937974; x=1730473974; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=tPOo2JFZjmGlcEg5hgEz5myL83a6tVD72rxMxo2uXXU=; b=fwT7YyvjwVRWmFcnoROh1R+USKvJKfte2AKeIAOEQZ0pHlSAbV5CHHi0 04Y/3kNOxuA5w9hFgkNqCkP7rkMQ4d/sO9m3fsO7z4s8kFLFXDp5O8zw+ E5zRHpNuHGjBjInnUvk14HpyKizm2WA06Ls/EXnGL3EAE1GvI+GZ1wW48 Jq76AgzJMo55x3Qr7QiuZwHV5H8yGKt57TgKKL7OjCpQjsjybw95uNtRb 5FTopYKyGimgjIusBlC3xpvt4P1DrwloArK4ur6OenISBMe/Nr5HwGQWQ EGS3LqwQh1aYL7zaToEUESMH+P563LgRCrwQmnctHLiUwnfRh6ZRKx+v2 g==; X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="373773487" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="373773487" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Nov 2023 08:12:40 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="711174078" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="711174078" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga003.jf.intel.com with ESMTP; 02 Nov 2023 08:12:36 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id 32AC672F; Thu, 2 Nov 2023 17:12:31 +0200 (EET) From: Andy Shevchenko To: Jani Nikula , Andy Shevchenko , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , Hans de Goede Subject: [PATCH v3 13/15] drm/i915/dsi: Prepare soc_gpio_set_value() to distinguish GPIO communities Date: Thu, 2 Nov 2023 17:12:26 +0200 Message-Id: <20231102151228.668842-14-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.40.0.1.gaa8946217a0b In-Reply-To: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> References: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED, SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Thu, 02 Nov 2023 08:13:45 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781465647220403180 X-GMAIL-MSGID: 1781465647220403180 Currently soc_gpio_set_value() supports only a single indexing for GPIO pin. For CHV case, for example, we will need to distinguish community based index from the one that VBT is using. Introduce an additional parameter to soc_gpio_set_value() and its callers. Signed-off-by: Andy Shevchenko --- drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c index 552bc6564d79..b1736c1301ea 100644 --- a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c +++ b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c @@ -206,8 +206,8 @@ static const u8 *mipi_exec_delay(struct intel_dsi *intel_dsi, const u8 *data) return data; } -static void soc_gpio_set_value(struct intel_connector *connector, const char *con_id, - u8 gpio_index, bool value) +static void soc_gpio_set_value(struct intel_connector *connector, u8 gpio_index, + const char *con_id, u8 idx, bool value) { struct drm_i915_private *dev_priv = to_i915(connector->base.dev); /* XXX: this table is a quick ugly hack. */ @@ -217,8 +217,7 @@ static void soc_gpio_set_value(struct intel_connector *connector, const char *co if (gpio_desc) { gpiod_set_value(gpio_desc, value); } else { - gpio_desc = devm_gpiod_get_index(dev_priv->drm.dev, - con_id, gpio_index, + gpio_desc = devm_gpiod_get_index(dev_priv->drm.dev, con_id, idx, value ? GPIOD_OUT_HIGH : GPIOD_OUT_LOW); if (IS_ERR(gpio_desc)) { drm_err(&dev_priv->drm, @@ -232,8 +231,8 @@ static void soc_gpio_set_value(struct intel_connector *connector, const char *co } static void soc_opaque_gpio_set_value(struct intel_connector *connector, - const char *chip, const char *con_id, - u8 gpio_index, bool value) + u8 gpio_index, const char *chip, + const char *con_id, u8 idx, bool value) { struct gpiod_lookup_table *lookup; @@ -243,11 +242,11 @@ static void soc_opaque_gpio_set_value(struct intel_connector *connector, lookup->dev_id = "0000:00:02.0"; lookup->table[0] = - GPIO_LOOKUP_IDX(chip, gpio_index, con_id, gpio_index, GPIO_ACTIVE_HIGH); + GPIO_LOOKUP_IDX(chip, idx, con_id, idx, GPIO_ACTIVE_HIGH); gpiod_add_lookup_table(lookup); - soc_gpio_set_value(connector, con_id, gpio_index, value); + soc_gpio_set_value(connector, gpio_index, con_id, idx, value); gpiod_remove_lookup_table(lookup); kfree(lookup); @@ -271,7 +270,8 @@ static void vlv_gpio_set_value(struct intel_connector *connector, } } - soc_opaque_gpio_set_value(connector, "INT33FC:01", "Panel N", gpio_index, value); + soc_opaque_gpio_set_value(connector, gpio_index, + "INT33FC:01", "Panel N", gpio_index, value); } static void chv_gpio_set_value(struct intel_connector *connector, @@ -331,7 +331,7 @@ static void chv_gpio_set_value(struct intel_connector *connector, static void bxt_gpio_set_value(struct intel_connector *connector, u8 gpio_index, bool value) { - soc_gpio_set_value(connector, NULL, gpio_index, value); + soc_gpio_set_value(connector, gpio_index, NULL, gpio_index, value); } enum { From patchwork Thu Nov 2 15:12:27 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 160935 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:8f47:0:b0:403:3b70:6f57 with SMTP id j7csp424235vqu; Thu, 2 Nov 2023 08:14:00 -0700 (PDT) X-Google-Smtp-Source: AGHT+IH7bamDcyqZqhV6J3iIeRt0ueUPOW9MYXq1AsEVeq5lBYvHnZLfMN0DCHFqncsChfbuG/jj X-Received: by 2002:a17:906:d7bc:b0:9da:de23:738e with SMTP id pk28-20020a170906d7bc00b009dade23738emr74286ejb.37.1698938040166; Thu, 02 Nov 2023 08:14:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698938040; cv=none; d=google.com; s=arc-20160816; b=YzBVSu+X9grMKv8Nd8L9tDwd0yzBEosOSlX6kqXFAO3jo1n9i7PyBEHfwwyhOaHIIc 1W5GWRHi+A10HCX6puwJmfABtTbBW261H8kqYYbtv0AoaRqxGjmukxeCp93hSqU+WnCe Fjv5ui/6EeAL+vHDI8aSMKpF5MGMRi0VvBg8KOz6RuH5958J2fCvz/DwMxEoAszgKXqM 5ftVRSiHN11E2WMKONNfRvKteWp6thmwrzZeDlCMNB+HNq9WNEGK8HwH7ODMGPPPGkLl tAFUrRVi91Q8t+OTyhqJcqDq0eUucwVcV8bYOrmGvxWb/55GkDE9GEXFHS2hZ/W+Cz0n 9tTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=z3bKgEsTWd9XiEUJm5pyWOZR+3cOSrQgtHe3RyBqb2A=; fh=W9Apx1mxfI4Sn4Tfu/ApINr5FKslMaF8Hy7vCgvNWsQ=; b=mp/YdM7LiiOqO2SY8P15IR5FTzb8ngLTgvD98ZwFzZE1tvHslPXYv6EnxIlFjF/SkY MKiwFkD7T4Y8pF2a/BzHKjYIQw9itJVxhYNP5GiN1zLDnudlfg7PIT5YUtmTX3bVxdku 85ryjMeBq8Xzsp9J7NEO/AQ25oUJGz3XCN53r6bz5onB7x4Nwhl+LREpuzDru3yJN5lz JgB+RpMVMcUYmo9nbiOOWmOj17yuNyJTAfFkgAQWuxfCVAFMqqbW/GxCaaGpbcgGokZ9 BUaCC1fEDYSiyfgu1pQO2aCHp/rPdTZUDG702qVTzJJ0n4KtnkmzZcJPQHR0S/gdjyep aUdQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=ZOnrt2Ub; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from lipwig.vger.email (lipwig.vger.email. [2620:137:e000::3:3]) by mx.google.com with ESMTPS id nb9-20020a1709071c8900b0099cc15f09a1si1058374ejc.118.2023.11.02.08.13.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Nov 2023 08:14:00 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) client-ip=2620:137:e000::3:3; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=ZOnrt2Ub; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by lipwig.vger.email (Postfix) with ESMTP id A10DE817913C; Thu, 2 Nov 2023 08:13:45 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at lipwig.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347652AbjKBPNL (ORCPT + 35 others); Thu, 2 Nov 2023 11:13:11 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42416 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235622AbjKBPMv (ORCPT ); Thu, 2 Nov 2023 11:12:51 -0400 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C71AD185 for ; Thu, 2 Nov 2023 08:12:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1698937962; x=1730473962; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=9aluI6zbH8D/Sjkz7dz1700dHJd2ex1h5F6FMyNEQM8=; b=ZOnrt2UbwrYyAtoK/sYSwgSBWeqxCSzRte8bK7cr/16eKaqLqawA1sdl kMBVDQMOXEkfc1XcdXZgyngARbKyqiAsxOWuCeJByphYhd2ijBtxa6rFj XIUzYU5ay/mol3+YKEKR7tfcYvKmLeB+BdPKzOrgHzcPrmcXOIDqF4DKR DtwOU1G6fx7ZSZsBwbGYwdARywUhr9mqxwCfFAHE1BjpQIhKcY8c6I9Q4 3giy2to2P+Of3UsN1qMz0fDTgepAM/WzGnZdD9miXrTrox7hLmzFtEUZo 4MiHJoQ6Xpre8EGk5G1gb4+/uHQHTsFD8ekK0YB8MohgoziYVmYbnevbh A==; X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="1660183" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="1660183" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Nov 2023 08:12:40 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="737784572" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="737784572" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga006.jf.intel.com with ESMTP; 02 Nov 2023 08:12:36 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id 384F1591; Thu, 2 Nov 2023 17:12:31 +0200 (EET) From: Andy Shevchenko To: Jani Nikula , Andy Shevchenko , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , Hans de Goede Subject: [PATCH v3 14/15] drm/i915/dsi: Replace poking of CHV GPIOs behind the driver's back Date: Thu, 2 Nov 2023 17:12:27 +0200 Message-Id: <20231102151228.668842-15-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.40.0.1.gaa8946217a0b In-Reply-To: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> References: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-1.2 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lipwig.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (lipwig.vger.email [0.0.0.0]); Thu, 02 Nov 2023 08:13:45 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781465654348507195 X-GMAIL-MSGID: 1781465654348507195 It's a dirty hack in the driver that pokes GPIO registers behind the driver's back. Moreoever it might be problematic as simultaneous I/O may hang the system, see the commit 0bd50d719b00 ("pinctrl: cherryview: prevent concurrent access to GPIO controllers") for the details. Taking all this into consideration replace the hack with proper GPIO APIs being used. Signed-off-by: Andy Shevchenko --- drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 47 +++++--------------- 1 file changed, 10 insertions(+), 37 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c index b1736c1301ea..ffc65c943b11 100644 --- a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c +++ b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c @@ -66,19 +66,6 @@ struct i2c_adapter_lookup { #define CHV_GPIO_IDX_START_SW 100 #define CHV_GPIO_IDX_START_SE 198 -#define CHV_VBT_MAX_PINS_PER_FMLY 15 - -#define CHV_GPIO_PAD_CFG0(f, i) (0x4400 + (f) * 0x400 + (i) * 8) -#define CHV_GPIO_GPIOEN (1 << 15) -#define CHV_GPIO_GPIOCFG_GPIO (0 << 8) -#define CHV_GPIO_GPIOCFG_GPO (1 << 8) -#define CHV_GPIO_GPIOCFG_GPI (2 << 8) -#define CHV_GPIO_GPIOCFG_HIZ (3 << 8) -#define CHV_GPIO_GPIOTXSTATE(state) ((!!(state)) << 1) - -#define CHV_GPIO_PAD_CFG1(f, i) (0x4400 + (f) * 0x400 + (i) * 8 + 4) -#define CHV_GPIO_CFGLOCK (1 << 31) - /* ICL DSI Display GPIO Pins */ #define ICL_GPIO_DDSP_HPD_A 0 #define ICL_GPIO_L_VDDEN_1 1 @@ -278,23 +265,21 @@ static void chv_gpio_set_value(struct intel_connector *connector, u8 gpio_source, u8 gpio_index, bool value) { struct drm_i915_private *dev_priv = to_i915(connector->base.dev); - u16 cfg0, cfg1; - u16 family_num; - u8 port; if (connector->panel.vbt.dsi.seq_version >= 3) { if (gpio_index >= CHV_GPIO_IDX_START_SE) { /* XXX: it's unclear whether 255->57 is part of SE. */ - gpio_index -= CHV_GPIO_IDX_START_SE; - port = CHV_IOSF_PORT_GPIO_SE; + soc_exec_opaque_gpio(connector, gpio_index, "INT33FF:03", "Panel SE", + gpio_index - CHV_GPIO_IDX_START_SW, value); } else if (gpio_index >= CHV_GPIO_IDX_START_SW) { - gpio_index -= CHV_GPIO_IDX_START_SW; - port = CHV_IOSF_PORT_GPIO_SW; + soc_exec_opaque_gpio(connector, gpio_index, "INT33FF:00", "Panel SW", + gpio_index - CHV_GPIO_IDX_START_SW, value); } else if (gpio_index >= CHV_GPIO_IDX_START_E) { - gpio_index -= CHV_GPIO_IDX_START_E; - port = CHV_IOSF_PORT_GPIO_E; + soc_exec_opaque_gpio(connector, gpio_index, "INT33FF:02", "Panel E", + gpio_index - CHV_GPIO_IDX_START_E, value); } else { - port = CHV_IOSF_PORT_GPIO_N; + soc_exec_opaque_gpio(connector, gpio_index, "INT33FF:01", "Panel N", + gpio_index - CHV_GPIO_IDX_START_N, value); } } else { /* XXX: The spec is unclear about CHV GPIO on seq v2 */ @@ -311,21 +296,9 @@ static void chv_gpio_set_value(struct intel_connector *connector, return; } - port = CHV_IOSF_PORT_GPIO_N; + soc_exec_opaque_gpio(connector, gpio_index, "INT33FF:01", "Panel N", + gpio_index - CHV_GPIO_IDX_START_N, value); } - - family_num = gpio_index / CHV_VBT_MAX_PINS_PER_FMLY; - gpio_index = gpio_index % CHV_VBT_MAX_PINS_PER_FMLY; - - cfg0 = CHV_GPIO_PAD_CFG0(family_num, gpio_index); - cfg1 = CHV_GPIO_PAD_CFG1(family_num, gpio_index); - - vlv_iosf_sb_get(dev_priv, BIT(VLV_IOSF_SB_GPIO)); - vlv_iosf_sb_write(dev_priv, port, cfg1, 0); - vlv_iosf_sb_write(dev_priv, port, cfg0, - CHV_GPIO_GPIOEN | CHV_GPIO_GPIOCFG_GPO | - CHV_GPIO_GPIOTXSTATE(value)); - vlv_iosf_sb_put(dev_priv, BIT(VLV_IOSF_SB_GPIO)); } static void bxt_gpio_set_value(struct intel_connector *connector, From patchwork Thu Nov 2 15:12:28 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 160928 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:8f47:0:b0:403:3b70:6f57 with SMTP id j7csp424053vqu; Thu, 2 Nov 2023 08:13:46 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGOJKNY4IS+71qwqSvxBDVJ2nHR3Nwuq6TL0KYhUf1BkDjaGFvUmCuSSLGx8Pm+BybZYxwV X-Received: by 2002:a05:6a21:3389:b0:17d:b971:ebc3 with SMTP id yy9-20020a056a21338900b0017db971ebc3mr19676922pzb.0.1698938026379; Thu, 02 Nov 2023 08:13:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698938026; cv=none; d=google.com; s=arc-20160816; b=hTXgk6v0F+mQE4pMX530MZZ2sg0ZiIu38tnDqAfRyVM5nPb2CsRal5/u+8cle1p0QC ORPxpUbUzco5rGyGHKWuowtymiMmFttahhdcI5DEjvKT4gUfnHIom0V9+dZ/j6nNlVDn jwZaQ+kw9q8IyQ0XMzRQqjZ9s/Pa6HIRq4p7zM33iTRV/U0QaML1IZIuc8i8hVpawnCG WuQUaePjBWI5FsLzmeI3wknVI7AVFqeZ7j2jK8dseEoaK1xeELcM85iZiX1mxyhouWQc umkYpVFKbY5WDN2duvnb3yljQ7aJurBqJM0/R3sk6ZAD6Xy66TnbvTCazwSO6ffAsjVZ 0cbA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=qIqJfCQdzu6UmlKomWc0ugVmqYXv+M6SfG+nAYk5tb8=; fh=W9Apx1mxfI4Sn4Tfu/ApINr5FKslMaF8Hy7vCgvNWsQ=; b=wb1bV8EXzrj70lBChf97r3/svUWmJ7IX1xv5N9UEjKlCpasWHm8Wm7s8Dx48JhZR9j nxX/QFNXrZsrpobMpGBQfavVTOB+6c2L13fQKYnwnJSdnuvWDtAGiWQJU5za/JqODolG H4upsGdVwwF0RNzz5QHUQzBjkBVW2fo1PdrkAX+HMj/fwryjslmL2APoj08aq10rypGD 2h+khfjiUqmgw6PDlGaYVd8/Qnod5Gu5I5MIzBX9DKM6sE3Uim8rU4IKJTkMg6nBxN69 hfuWK341wahKSf74zQLRWEd2IbepowajxrWpsNtOQmCP7tEbj0xKwbSIJ/w2Ktjxcp0H IwSA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=j4Ct5TFZ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from snail.vger.email (snail.vger.email. [2620:137:e000::3:7]) by mx.google.com with ESMTPS id by1-20020a056a02058100b00578afd89ba6si2035340pgb.457.2023.11.02.08.13.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Nov 2023 08:13:46 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) client-ip=2620:137:e000::3:7; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=j4Ct5TFZ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 74599826C0D5; Thu, 2 Nov 2023 08:13:34 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1376781AbjKBPN0 (ORCPT + 35 others); Thu, 2 Nov 2023 11:13:26 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55452 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1346677AbjKBPMz (ORCPT ); Thu, 2 Nov 2023 11:12:55 -0400 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 72AEB192 for ; Thu, 2 Nov 2023 08:12:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1698937966; x=1730473966; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=sX1J1ySAF4MO+eRhktvw93+gXMSrlD5/6fA9bNgY1QY=; b=j4Ct5TFZE5TdkARhwaq+YMt/M6JAkmvjwFuZBr1Vz0vyNDl9IhIrU7hK TvcMJQJWr5+nd7y4VFZnwRBHSQAdfS17BgWrZD7WclA3/2dc9M9rTRtLQ 4aYzl32MndZIK9CMHTKJW+FSHQEla87zQ3QS8YUJmYkqYerpwQ2njqUNS 1CVz3thZDTDLXGL2x48Z0fAcjxKFvLH90aw3oshjPAvRKjX2Auz+PPojR fuJ0yFAf3NjWPh1zV9dkQp5RXDU7OnmmttMOSIfhEOtQn2Bclk2Xsay3x CErdQjsiKDk4XvBwZp97hJa2NnPzmW4jg4irmp+1RXGAfZAZ/tCxNbp6/ A==; X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="1660208" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="1660208" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Nov 2023 08:12:44 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10882"; a="737784575" X-IronPort-AV: E=Sophos;i="6.03,271,1694761200"; d="scan'208";a="737784575" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga006.jf.intel.com with ESMTP; 02 Nov 2023 08:12:40 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id 48FFF76F; Thu, 2 Nov 2023 17:12:31 +0200 (EET) From: Andy Shevchenko To: Jani Nikula , Andy Shevchenko , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Daniel Vetter , Hans de Goede Subject: [PATCH v3 15/15] drm/i915/iosf: Drop unused APIs Date: Thu, 2 Nov 2023 17:12:28 +0200 Message-Id: <20231102151228.668842-16-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.40.0.1.gaa8946217a0b In-Reply-To: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> References: <20231102151228.668842-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,SPF_HELO_NONE,SPF_NONE, T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Thu, 02 Nov 2023 08:13:34 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781465639619039762 X-GMAIL-MSGID: 1781465639619039762 Drop unused vlv_iosf_sb_read() and vlv_iosf_sb_write(). Signed-off-by: Andy Shevchenko --- drivers/gpu/drm/i915/vlv_sideband.c | 17 ----------------- drivers/gpu/drm/i915/vlv_sideband.h | 3 --- 2 files changed, 20 deletions(-) diff --git a/drivers/gpu/drm/i915/vlv_sideband.c b/drivers/gpu/drm/i915/vlv_sideband.c index b98dec3ad817..13b644958e38 100644 --- a/drivers/gpu/drm/i915/vlv_sideband.c +++ b/drivers/gpu/drm/i915/vlv_sideband.c @@ -166,23 +166,6 @@ u32 vlv_nc_read(struct drm_i915_private *i915, u8 addr) return val; } -u32 vlv_iosf_sb_read(struct drm_i915_private *i915, u8 port, u32 reg) -{ - u32 val = 0; - - vlv_sideband_rw(i915, PCI_DEVFN(0, 0), port, - SB_CRRDDA_NP, reg, &val); - - return val; -} - -void vlv_iosf_sb_write(struct drm_i915_private *i915, - u8 port, u32 reg, u32 val) -{ - vlv_sideband_rw(i915, PCI_DEVFN(0, 0), port, - SB_CRWRDA_NP, reg, &val); -} - u32 vlv_cck_read(struct drm_i915_private *i915, u32 reg) { u32 val = 0; diff --git a/drivers/gpu/drm/i915/vlv_sideband.h b/drivers/gpu/drm/i915/vlv_sideband.h index 9ce283d96b80..8b4495e14bce 100644 --- a/drivers/gpu/drm/i915/vlv_sideband.h +++ b/drivers/gpu/drm/i915/vlv_sideband.h @@ -26,9 +26,6 @@ enum { }; void vlv_iosf_sb_get(struct drm_i915_private *i915, unsigned long ports); -u32 vlv_iosf_sb_read(struct drm_i915_private *i915, u8 port, u32 reg); -void vlv_iosf_sb_write(struct drm_i915_private *i915, - u8 port, u32 reg, u32 val); void vlv_iosf_sb_put(struct drm_i915_private *i915, unsigned long ports); static inline void vlv_bunit_get(struct drm_i915_private *i915)