From 70c4f19642f3a196b01f22c9cc8e0629df609727 Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Thu, 27 Feb 2020 22:51:41 +0000 Subject: [PATCH] Fixes and enhancements to some AllWinner Pine64 devices Signed-off-by: Peter Robinson --- ...CD-support-for-Pine64-Pinebook-1080p.patch | 1218 +++++++++++++++++ arm64-a64-mbus.patch | 69 + arm64-pine64-pinephone.patch | 568 ++++++++ arm64-pine64-pinetab.patch | 583 ++++++++ arm64-pinebook-fixes.patch | 429 ++++++ kernel.spec | 14 + 6 files changed, 2881 insertions(+) create mode 100644 Add-LCD-support-for-Pine64-Pinebook-1080p.patch create mode 100644 arm64-a64-mbus.patch create mode 100644 arm64-pine64-pinephone.patch create mode 100644 arm64-pine64-pinetab.patch create mode 100644 arm64-pinebook-fixes.patch diff --git a/Add-LCD-support-for-Pine64-Pinebook-1080p.patch b/Add-LCD-support-for-Pine64-Pinebook-1080p.patch new file mode 100644 index 000000000..2247358cf --- /dev/null +++ b/Add-LCD-support-for-Pine64-Pinebook-1080p.patch @@ -0,0 +1,1218 @@ +From patchwork Wed Feb 26 08:10:06 2020 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +X-Patchwork-Submitter: Vasily Khoruzhick +X-Patchwork-Id: 11405523 +Return-Path: + +Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org + [172.30.200.123]) + by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 02E1C138D + for ; + Wed, 26 Feb 2020 08:11:21 +0000 (UTC) +Received: from bombadil.infradead.org (bombadil.infradead.org + [198.137.202.133]) + (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) + (No client certificate requested) + by mail.kernel.org (Postfix) with ESMTPS id 8290920714 + for ; + Wed, 26 Feb 2020 08:11:20 +0000 (UTC) +Authentication-Results: mail.kernel.org; + dkim=pass (2048-bit key) header.d=lists.infradead.org + header.i=@lists.infradead.org header.b="NC4UyvmJ"; + dkim=fail reason="signature verification failed" (2048-bit key) + header.d=gmail.com header.i=@gmail.com header.b="dgRS/obe" +DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8290920714 +Authentication-Results: mail.kernel.org; + dmarc=fail (p=none dis=none) header.from=gmail.com +Authentication-Results: mail.kernel.org; + spf=none + smtp.mailfrom=linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org +DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; + d=lists.infradead.org; s=bombadil.20170209; h=Sender: + Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: + List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: + Message-Id:Date:Subject:To:From:Reply-To:Content-ID:Content-Description: + Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: + List-Owner; bh=ifkHwwwyIAcS8LX6zs1w9giDBKxk8pj28d5xFaSqglI=; b=NC4UyvmJVZ+ONg + /A8ilsjAqJhTC8MaSgpoj5PtQJbjPjlGZbanGvdYADstThCTcDhB3JaTr2OpYD33lkNLcdv3ZAFU1 + AnTRQtFkgWzjhjePM/+S5KOVHoA+qgME1ZirVrirqulkCrnzlqwzoiHVRrDfuHasnmHQwywjthV7j + YdAJTaGBt4B1YcxalS0NJ/TxVgp9YQPaYDxGqSOsNp47p74ZAcpJDWq97X+gphoM7A12wMy26ox/j + WPKddrvS+kU9biyMlV3E+7B7WhC9rsjcoKV06vcNFxG9AOkucLtbaYHij3lcWbV4LiBm9CvzrzZch + l27BRKyW2mKvnJLBHRvA==; +Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) + by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) + id 1j6rmm-0001N1-2G; Wed, 26 Feb 2020 08:11:16 +0000 +Received: from mail-pg1-x543.google.com ([2607:f8b0:4864:20::543]) + by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) + id 1j6rmH-0000rr-Ht + for linux-arm-kernel@lists.infradead.org; Wed, 26 Feb 2020 08:10:47 +0000 +Received: by mail-pg1-x543.google.com with SMTP id y30so910400pga.13 + for ; + Wed, 26 Feb 2020 00:10:43 -0800 (PST) +DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; + h=from:to:cc:subject:date:message-id:in-reply-to:references + :mime-version:content-transfer-encoding; + bh=4KM0r5uD7rljHPdtJuNxVsZCmDnwVuLvCzxfAh27Klw=; + b=dgRS/obec3aOByr8PTKvXVfLFPdY1OXcSqqEUuyzPCu3aykdzkVOJ72/vImDdDvwYy + u6HGV4iMY1+UU+6DDHioTxtUmpb4PL1lZF9mvbpeFOT35Mv2rS6loQXlTy5PFr/ULB4B + lWV4RthTKBuPwRIoUJkcrsrmXJSZo5zuYr9Oo1NFcrbFmqPY68uGSvIhMKxSZsO769hX + ujP/inLHS1BnYoTZvXdKpMKWCie+TcW+f6ic+DwM5gEVUlvh2oZnE/KN+Mq3UuB1youB + dUl46XZqucP07YZ37nkUhsXFZn5UiopzPt1a6mWynNd4vdD+LEgxQgd3WURCof44zIb4 + ifRQ== +X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; + d=1e100.net; s=20161025; + h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to + :references:mime-version:content-transfer-encoding; + bh=4KM0r5uD7rljHPdtJuNxVsZCmDnwVuLvCzxfAh27Klw=; + b=LMuXV8i7l22WzitvvRZD61Yrkp8uF0h/+ejHJuZCCukaTOB+9bsZ6+6Gh4N2P1IrBu + nKDyKfhOFo28xZ56hDPQH1/OkI8LwHx/uVFrbpJYszeamkklpekkRGKRK/5RpRk81oXd + fxUgtGCJouVC9bdOFBbRecr5EaD6j0hRl+hHzXwNsO68r0z0xtmTprbGHHjgJCjQ37ur + eNaxd2pBwU6H8OtmXgRNzLbKnmqv+E8P125dUWGYfLLS53dGM1WiQZsaDY1s8fbeI28J + mRFdXfpF9fU5HDIdzp3TUSTV5OiPKIB/7J1z191AHWnqQ3DZQaaFkMpdInNTq3tBZNxf + bsMQ== +X-Gm-Message-State: APjAAAXRf2LNxHyoVBoE3gnXd8gwgTMib7VQTV+LLhFEVvw+kWaBJjVB + ANMsOuSPjpCbvB3mXZuD+oc= +X-Google-Smtp-Source: + APXvYqyQjLc15uh0MUo/Upb22dso+icknd9LfH39mfhW5X2d4U/9EURWB7pcI9luJw0/E5sOA2wZ5Q== +X-Received: by 2002:a62:3304:: with SMTP id z4mr2893899pfz.79.1582704643017; + Wed, 26 Feb 2020 00:10:43 -0800 (PST) +Received: from anarsoul-thinkpad.lan (216-71-213-236.dyn.novuscom.net. + [216.71.213.236]) + by smtp.gmail.com with ESMTPSA id v7sm1679230pfn.61.2020.02.26.00.10.41 + (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); + Wed, 26 Feb 2020 00:10:42 -0800 (PST) +From: Vasily Khoruzhick +To: Thierry Reding , + Sam Ravnborg , + David Airlie , Daniel Vetter , + Rob Herring , Mark Rutland , + Maxime Ripard , Chen-Yu Tsai , + Andrzej Hajda , + Neil Armstrong , + Laurent Pinchart , + Jonas Karlman , Jernej Skrabec , + Torsten Duwe , Icenowy Zheng , + Heiko Stuebner , + Stephan Gerhold , Mark Brown , + Stephen Rothwell , + Samuel Holland , dri-devel@lists.freedesktop.org, + devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, + linux-arm-kernel@lists.infradead.org +Subject: [PATCH v2 1/6] drm/bridge: anx6345: Fix getting anx6345 regulators +Date: Wed, 26 Feb 2020 00:10:06 -0800 +Message-Id: <20200226081011.1347245-2-anarsoul@gmail.com> +X-Mailer: git-send-email 2.25.0 +In-Reply-To: <20200226081011.1347245-1-anarsoul@gmail.com> +References: <20200226081011.1347245-1-anarsoul@gmail.com> +MIME-Version: 1.0 +X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 +X-CRM114-CacheID: sfid-20200226_001045_589863_8FCB25B5 +X-CRM114-Status: GOOD ( 12.63 ) +X-Spam-Score: -0.2 (/) +X-Spam-Report: SpamAssassin version 3.4.3 on bombadil.infradead.org summary: + Content analysis details: (-0.2 points) + pts rule name description + ---- ---------------------- + -------------------------------------------------- + -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, + no trust [2607:f8b0:4864:20:0:0:0:543 listed in] + [list.dnswl.org] + 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record + 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail + provider [anarsoul[at]gmail.com] + -0.0 SPF_PASS SPF: sender matches SPF record + -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from + envelope-from domain + 0.1 DKIM_SIGNED Message has a DKIM or DK signature, + not necessarily + valid + -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from + author's domain + -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature +X-BeenThere: linux-arm-kernel@lists.infradead.org +X-Mailman-Version: 2.1.29 +Precedence: list +List-Id: +List-Unsubscribe: + , + +List-Archive: +List-Post: +List-Help: +List-Subscribe: + , + +Cc: Laurent Pinchart +Sender: "linux-arm-kernel" +Errors-To: + linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org + +From: Samuel Holland + +We don't need to pass '-supply' suffix to devm_regulator_get() + +Fixes: 6aa192698089 ("drm/bridge: Add Analogix anx6345 support") +Reviewed-by: Laurent Pinchart +Signed-off-by: Samuel Holland +Signed-off-by: Vasily Khoruzhick +--- + drivers/gpu/drm/bridge/analogix/analogix-anx6345.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c b/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c +index 56f55c53abfd..0d8d083b0207 100644 +--- a/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c ++++ b/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c +@@ -712,14 +712,14 @@ static int anx6345_i2c_probe(struct i2c_client *client, + DRM_DEBUG("No panel found\n"); + + /* 1.2V digital core power regulator */ +- anx6345->dvdd12 = devm_regulator_get(dev, "dvdd12-supply"); ++ anx6345->dvdd12 = devm_regulator_get(dev, "dvdd12"); + if (IS_ERR(anx6345->dvdd12)) { + DRM_ERROR("dvdd12-supply not found\n"); + return PTR_ERR(anx6345->dvdd12); + } + + /* 2.5V digital core power regulator */ +- anx6345->dvdd25 = devm_regulator_get(dev, "dvdd25-supply"); ++ anx6345->dvdd25 = devm_regulator_get(dev, "dvdd25"); + if (IS_ERR(anx6345->dvdd25)) { + DRM_ERROR("dvdd25-supply not found\n"); + return PTR_ERR(anx6345->dvdd25); + +From patchwork Wed Feb 26 08:10:07 2020 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +X-Patchwork-Submitter: Vasily Khoruzhick +X-Patchwork-Id: 11405511 +Return-Path: + +Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org + [172.30.200.123]) + by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 7C17F138D + for ; + Wed, 26 Feb 2020 08:10:50 +0000 (UTC) +Received: from bombadil.infradead.org (bombadil.infradead.org + [198.137.202.133]) + (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) + (No client certificate requested) + by mail.kernel.org (Postfix) with ESMTPS id 285BF20714 + for ; + Wed, 26 Feb 2020 08:10:50 +0000 (UTC) +Authentication-Results: mail.kernel.org; + dkim=pass (2048-bit key) header.d=lists.infradead.org + header.i=@lists.infradead.org header.b="cdeyR8r0"; + dkim=fail reason="signature verification failed" (2048-bit key) + header.d=gmail.com header.i=@gmail.com header.b="Q0cii6N4" +DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 285BF20714 +Authentication-Results: mail.kernel.org; + dmarc=fail (p=none dis=none) header.from=gmail.com +Authentication-Results: mail.kernel.org; + spf=none + smtp.mailfrom=linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org +DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; + d=lists.infradead.org; s=bombadil.20170209; h=Sender: + Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: + List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: + Message-Id:Date:Subject:To:From:Reply-To:Content-ID:Content-Description: + Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: + List-Owner; bh=Peo+SfFmr062rl3tgDW98UrixycGQzBn/gdB0fqrEec=; b=cdeyR8r0WrrQXL + fhHLecv9WUzj5mN4Jb7+S8U3VVCIJu7TkDD13MiIv2xqHbC9HXLBkGdb2Vrq2Rcfkl/jwWjXcgwST + vrUCWMU4jaNlxmeTiAXDyI1I6SEZ/9haXD8IUv7hU1BNoVyeH2GeaVHvTAwIA7TKEWzJHb3/naGAz + Yir51L7gXJoATQ86WVBgdnZ/6rUUmZe1Gs9aHwEjMZ5Rz/9WNydTH/VLWBCVDA9zdZiq8+jhja7y6 + Dh8VhWGpCuvJ/6W0c7viQtFIuJAYI2cYQmI+ebHLMeiv0g7cZnaTxi/PPSICIl3iA9MSUbfVcYSoC + Ro1yQC9H+yqHToXqdWTg==; +Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) + by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) + id 1j6rmK-0000to-Bs; Wed, 26 Feb 2020 08:10:48 +0000 +Received: from mail-pl1-x644.google.com ([2607:f8b0:4864:20::644]) + by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) + id 1j6rmH-0000rv-7o + for linux-arm-kernel@lists.infradead.org; Wed, 26 Feb 2020 08:10:46 +0000 +Received: by mail-pl1-x644.google.com with SMTP id a6so990257plm.3 + for ; + Wed, 26 Feb 2020 00:10:44 -0800 (PST) +DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; + h=from:to:cc:subject:date:message-id:in-reply-to:references + :mime-version:content-transfer-encoding; + bh=bV3ZvEYwFOIunmpWLGzAgCdGTlK6S+EV6uVEHB+FGxY=; + b=Q0cii6N45xFi8jvZk47bAoc1Nxu6hFKn2R/6gr1ZfjKbVoDJZ64PKB8Z3UWgfpC96z + m858biDFlV7/4mo1LjVTUmbbBHm1yKrJnJ3uLVZBlEdyOFSDznZRxrzu6B/mSXoBfdGU + mlGpBVLSLPU/z8ykPcedU1XFyCgTRivYgIcpSqG+QITc7/eIRdzyugFFz9Yzl27ql70w + 8AlOefrAt/HgAlO+4L6JoXtZp+YN7BobPP6qXr0OfqH/1PLZecbnI0vC7uItRmmZkPfN + j7AsPd8mIOV8s5KgCaaK+xwtreytUn7QQZvq+Frfrl0pLWndKlgav8D5uWnV85pooXdR + SCgg== +X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; + d=1e100.net; s=20161025; + h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to + :references:mime-version:content-transfer-encoding; + bh=bV3ZvEYwFOIunmpWLGzAgCdGTlK6S+EV6uVEHB+FGxY=; + b=ECNexu4zW9OhYucRWaQRPAtEEWE7WmtUxDePEa2BlUp2b5Kd9R3BagblFLB6VAHhjR + wSrCiVTMvlAgNAiXJuKq/J5YnOKBFR7YdGYc9odgo3waiK/XQw5lNOjmNA3hJepAn0wb + MXB9jYsbW2B5kyNLwCFFG6d6jTJEY6Q87mzTx3wqL6nBq6sjdHN5JvBkaERdHCCqKUVH + /jOwV7W2QFG0Kb+DYvfelZbfBCUOMf68VHiwQICiY52q5geL/Oa8/ZO56kEfCx3geUXF + qCuCL4PKAO3hL6jqm5peuzVj69VP64wtkL/eTdM7KKlJDTczayTs3A6DMsI9lRzmA7Ro + w63A== +X-Gm-Message-State: APjAAAWTEdsoaCfLa1vBLhPyuzgRQw35FJ8aGRWduCgpvWjMqcy6TWNi + T7YrobqhUcuRzq8O/y3mjZo= +X-Google-Smtp-Source: + APXvYqwzmN2dNDKDPwprqjYoy3wHRxeIo1QTGdy8Nrs8WKG2CT6K8e2fuBfcpdmu4anfHjvkmdpjJQ== +X-Received: by 2002:a17:902:6184:: with SMTP id + u4mr2301682plj.216.1582704644297; + Wed, 26 Feb 2020 00:10:44 -0800 (PST) +Received: from anarsoul-thinkpad.lan (216-71-213-236.dyn.novuscom.net. + [216.71.213.236]) + by smtp.gmail.com with ESMTPSA id v7sm1679230pfn.61.2020.02.26.00.10.43 + (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); + Wed, 26 Feb 2020 00:10:43 -0800 (PST) +From: Vasily Khoruzhick +To: Thierry Reding , + Sam Ravnborg , + David Airlie , Daniel Vetter , + Rob Herring , Mark Rutland , + Maxime Ripard , Chen-Yu Tsai , + Andrzej Hajda , + Neil Armstrong , + Laurent Pinchart , + Jonas Karlman , Jernej Skrabec , + Torsten Duwe , Icenowy Zheng , + Heiko Stuebner , + Stephan Gerhold , Mark Brown , + Stephen Rothwell , + Samuel Holland , dri-devel@lists.freedesktop.org, + devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, + linux-arm-kernel@lists.infradead.org +Subject: [PATCH v2 2/6] drm/bridge: anx6345: don't print error message if + regulator is not ready +Date: Wed, 26 Feb 2020 00:10:07 -0800 +Message-Id: <20200226081011.1347245-3-anarsoul@gmail.com> +X-Mailer: git-send-email 2.25.0 +In-Reply-To: <20200226081011.1347245-1-anarsoul@gmail.com> +References: <20200226081011.1347245-1-anarsoul@gmail.com> +MIME-Version: 1.0 +X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 +X-CRM114-CacheID: sfid-20200226_001045_305939_7F59723B +X-CRM114-Status: GOOD ( 13.16 ) +X-Spam-Score: -0.2 (/) +X-Spam-Report: SpamAssassin version 3.4.3 on bombadil.infradead.org summary: + Content analysis details: (-0.2 points) + pts rule name description + ---- ---------------------- + -------------------------------------------------- + -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, + no trust [2607:f8b0:4864:20:0:0:0:644 listed in] + [list.dnswl.org] + 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record + 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail + provider [anarsoul[at]gmail.com] + -0.0 SPF_PASS SPF: sender matches SPF record + -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from + envelope-from domain + 0.1 DKIM_SIGNED Message has a DKIM or DK signature, + not necessarily + valid + -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from + author's domain + -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature +X-BeenThere: linux-arm-kernel@lists.infradead.org +X-Mailman-Version: 2.1.29 +Precedence: list +List-Id: +List-Unsubscribe: + , + +List-Archive: +List-Post: +List-Help: +List-Subscribe: + , + +Cc: Laurent Pinchart +Sender: "linux-arm-kernel" +Errors-To: + linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org + +We don't want to print scary message if devm_regulator_get() returns +-EPROBE_DEFER + +Reviewed-by: Laurent Pinchart +Signed-off-by: Vasily Khoruzhick +--- + drivers/gpu/drm/bridge/analogix/analogix-anx6345.c | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c b/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c +index 0d8d083b0207..0bf81b9b5faa 100644 +--- a/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c ++++ b/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c +@@ -714,14 +714,18 @@ static int anx6345_i2c_probe(struct i2c_client *client, + /* 1.2V digital core power regulator */ + anx6345->dvdd12 = devm_regulator_get(dev, "dvdd12"); + if (IS_ERR(anx6345->dvdd12)) { +- DRM_ERROR("dvdd12-supply not found\n"); ++ if (PTR_ERR(anx6345->dvdd12) != -EPROBE_DEFER) ++ DRM_ERROR("Failed to get dvdd12 supply (%ld)\n", ++ PTR_ERR(anx6345->dvdd12)); + return PTR_ERR(anx6345->dvdd12); + } + + /* 2.5V digital core power regulator */ + anx6345->dvdd25 = devm_regulator_get(dev, "dvdd25"); + if (IS_ERR(anx6345->dvdd25)) { +- DRM_ERROR("dvdd25-supply not found\n"); ++ if (PTR_ERR(anx6345->dvdd25) != -EPROBE_DEFER) ++ DRM_ERROR("Failed to get dvdd25 supply (%ld)\n", ++ PTR_ERR(anx6345->dvdd25)); + return PTR_ERR(anx6345->dvdd25); + } + + +From patchwork Wed Feb 26 08:10:08 2020 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +X-Patchwork-Submitter: Vasily Khoruzhick +X-Patchwork-Id: 11405525 +Return-Path: + +Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org + [172.30.200.123]) + by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id BA056930 + for ; + Wed, 26 Feb 2020 08:11:35 +0000 (UTC) +Received: from bombadil.infradead.org (bombadil.infradead.org + [198.137.202.133]) + (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) + (No client certificate requested) + by mail.kernel.org (Postfix) with ESMTPS id 9013820714 + for ; + Wed, 26 Feb 2020 08:11:35 +0000 (UTC) +Authentication-Results: mail.kernel.org; + dkim=pass (2048-bit key) header.d=lists.infradead.org + header.i=@lists.infradead.org header.b="LGhb4fkQ"; + dkim=fail reason="signature verification failed" (2048-bit key) + header.d=gmail.com header.i=@gmail.com header.b="ZqFr2Xde" +DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9013820714 +Authentication-Results: mail.kernel.org; + dmarc=fail (p=none dis=none) header.from=gmail.com +Authentication-Results: mail.kernel.org; + spf=none + smtp.mailfrom=linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org +DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; + d=lists.infradead.org; s=bombadil.20170209; h=Sender: + Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: + List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: + Message-Id:Date:Subject:To:From:Reply-To:Cc:Content-ID:Content-Description: + Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: + List-Owner; bh=8ADp0ZCf/RXeiG8WcqeiUa/p9bRVFg9MWHrmkEvydR4=; b=LGhb4fkQPVOahi + BJtXEN4XzL/JpAolHzThXXSCz6Ga6a4XRsdusD5lW+G9d20OKblS1Li2yUXQBF3gD69zww/f2uZ89 + SCjOIeF8YUi4eRd//H2ki/ugHNFjjr7D5+6X8lBg3oTpatQ2D+Snv83BF6PgDCBec7lxy6SgUaP77 + ouDw0lLlP00NBYXZp31b5lBknpI4oolPTNfq/3hCcsnQGKORXv4xPzuVGOj8m4Aj9K9Uc1D9o+S9t + kYan/5JdjUcE2XmXgKkvQ4mK60O74eH9QZ1nqDxgtvQHnX7+JWnWoTTiYsV+8A/TxWEOTIeLpKZQJ + f5BizujU0K80o5bM8ckg==; +Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) + by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) + id 1j6rn4-0001aC-Nf; Wed, 26 Feb 2020 08:11:34 +0000 +Received: from mail-pj1-x1044.google.com ([2607:f8b0:4864:20::1044]) + by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) + id 1j6rmI-0000se-31 + for linux-arm-kernel@lists.infradead.org; Wed, 26 Feb 2020 08:10:47 +0000 +Received: by mail-pj1-x1044.google.com with SMTP id fa20so941191pjb.1 + for ; + Wed, 26 Feb 2020 00:10:45 -0800 (PST) +DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; + h=from:to:cc:subject:date:message-id:in-reply-to:references + :mime-version:content-transfer-encoding; + bh=vEnVySXBYfW3b1su9MemqgqPSinDbCdHAw5n+ZVHXKA=; + b=ZqFr2XdedoNMMzSdc2eWipJbPoWCSoIWOaxz1zsBu+w5FRw0nlJVp7B9aMcVR/ECrM + fWpYYrpUhtSvO1rGsvHH3i7x8JxpD2QgM4DK0weubmj2twGyNSOa9Gvtg6KWDj0oARIV + ossJG+QlPSs1QhoRE2faVAv1lrRd7/LwUBqX6m+LwRkGl9SmUJ5qeccTbXxGKO/jke+J + hejsi+GJu4wBCG1LLI2Rb9i3hLwtSZ88dY/P2BygJXrOuCX1Xh6+4AO3P044cgvoby3X + oVgYppEgNor2/7HskWoAIOtOe2teNJqCPhYgfnRcBTVY+U0Ce7WQEZmjOKtWi3whIYeH + uQBQ== +X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; + d=1e100.net; s=20161025; + h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to + :references:mime-version:content-transfer-encoding; + bh=vEnVySXBYfW3b1su9MemqgqPSinDbCdHAw5n+ZVHXKA=; + b=j3wqnMuutM7fm6+CgtpzUtqOybHnpB5v7GqNm5NrPLnZppqmIhQfo+XB29LZIR96Qs + Jy7BnRxwn82nTsr0gsi1J1SPyTVkFBfD/FPq2K+ScOhP7bMVMYU+T7gh7VCDvj1OqGCr + lwQ1+LNbccyZRW86D//6ySKwTfecrJ56FsWmrvWHvXykcnH8BIPijoOUTk7JgDMifSKZ + KGWkKaKZsVGgzycQMDy2UnKCcgvfJ8NNCHS0aJEy7YIhVHyHct2MLeU2jOQsBNJAoB8p + khuqKa1HHg9kFHvXcBokIyToppXiELRtmWg5Aixj6554KNk33a1wSglXIpxPHxncZ8sX + wMUw== +X-Gm-Message-State: APjAAAVIaRZ6h9Ll6HvsBP2/ITar71fuZ8QWSrR6RUAlo4+/JyCCMCmC + nfYQIUTeyMaWhjT3gpH48Ag= +X-Google-Smtp-Source: + APXvYqySsTMpSDO1lKEob5Z3qPaMibUnculbDtGi+2b/LHKNJPcUDEb49L+OdYHplPurgC0YCZJGNA== +X-Received: by 2002:a17:90a:32e4:: with SMTP id + l91mr3675046pjb.23.1582704645464; + Wed, 26 Feb 2020 00:10:45 -0800 (PST) +Received: from anarsoul-thinkpad.lan (216-71-213-236.dyn.novuscom.net. + [216.71.213.236]) + by smtp.gmail.com with ESMTPSA id v7sm1679230pfn.61.2020.02.26.00.10.44 + (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); + Wed, 26 Feb 2020 00:10:44 -0800 (PST) +From: Vasily Khoruzhick +To: Thierry Reding , + Sam Ravnborg , + David Airlie , Daniel Vetter , + Rob Herring , Mark Rutland , + Maxime Ripard , Chen-Yu Tsai , + Andrzej Hajda , + Neil Armstrong , + Laurent Pinchart , + Jonas Karlman , Jernej Skrabec , + Torsten Duwe , Icenowy Zheng , + Heiko Stuebner , + Stephan Gerhold , Mark Brown , + Stephen Rothwell , + Samuel Holland , dri-devel@lists.freedesktop.org, + devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, + linux-arm-kernel@lists.infradead.org +Subject: [PATCH v2 3/6] dt-bindings: Add Guangdong Neweast Optoelectronics CO. + LTD vendor prefix +Date: Wed, 26 Feb 2020 00:10:08 -0800 +Message-Id: <20200226081011.1347245-4-anarsoul@gmail.com> +X-Mailer: git-send-email 2.25.0 +In-Reply-To: <20200226081011.1347245-1-anarsoul@gmail.com> +References: <20200226081011.1347245-1-anarsoul@gmail.com> +MIME-Version: 1.0 +X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 +X-CRM114-CacheID: sfid-20200226_001046_126436_F508C228 +X-CRM114-Status: GOOD ( 10.72 ) +X-Spam-Score: -0.2 (/) +X-Spam-Report: SpamAssassin version 3.4.3 on bombadil.infradead.org summary: + Content analysis details: (-0.2 points) + pts rule name description + ---- ---------------------- + -------------------------------------------------- + 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record + 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail + provider [anarsoul[at]gmail.com] + -0.0 SPF_PASS SPF: sender matches SPF record + -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from + envelope-from domain + 0.1 DKIM_SIGNED Message has a DKIM or DK signature, + not necessarily + valid + -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from + author's domain + -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature +X-BeenThere: linux-arm-kernel@lists.infradead.org +X-Mailman-Version: 2.1.29 +Precedence: list +List-Id: +List-Unsubscribe: + , + +List-Archive: +List-Post: +List-Help: +List-Subscribe: + , + +Sender: "linux-arm-kernel" +Errors-To: + linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org + +Add vendor prefix for Guangdong Neweast Optoelectronics CO. LTD + +Signed-off-by: Vasily Khoruzhick +Acked-by: Rob Herring +--- + Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml +index 6456a6dfd83d..5dfbad67aa81 100644 +--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml ++++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml +@@ -661,6 +661,8 @@ patternProperties: + description: Netron DY + "^netxeon,.*": + description: Shenzhen Netxeon Technology CO., LTD ++ "^neweast,.*": ++ description: Guangdong Neweast Optoelectronics CO., LTD + "^nexbox,.*": + description: Nexbox + "^nextthing,.*": + +From patchwork Wed Feb 26 08:10:09 2020 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +X-Patchwork-Submitter: Vasily Khoruzhick +X-Patchwork-Id: 11405527 +Return-Path: + +Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org + [172.30.200.123]) + by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 2CC5A930 + for ; + Wed, 26 Feb 2020 08:11:45 +0000 (UTC) +Received: from bombadil.infradead.org (bombadil.infradead.org + [198.137.202.133]) + (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) + (No client certificate requested) + by mail.kernel.org (Postfix) with ESMTPS id D99A220714 + for ; + Wed, 26 Feb 2020 08:11:44 +0000 (UTC) +Authentication-Results: mail.kernel.org; + dkim=pass (2048-bit key) header.d=lists.infradead.org + header.i=@lists.infradead.org header.b="NUXv3B19"; + dkim=fail reason="signature verification failed" (2048-bit key) + header.d=gmail.com header.i=@gmail.com header.b="TBrP0h2w" +DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D99A220714 +Authentication-Results: mail.kernel.org; + dmarc=fail (p=none dis=none) header.from=gmail.com +Authentication-Results: mail.kernel.org; + spf=none + smtp.mailfrom=linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org +DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; + d=lists.infradead.org; s=bombadil.20170209; h=Sender: + Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: + List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: + Message-Id:Date:Subject:To:From:Reply-To:Content-ID:Content-Description: + Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: + List-Owner; bh=anQFpGzSkI8IBbKtjkscYMGuTNi8IBx1f7ryKOpbIQ4=; b=NUXv3B191+285a + VyP0wvrXMEDMQsqqwv88YNzVR2CeJlhZYqbOVNDVdMHvHr7VbKohas0brz70I9kD9oQKr8t4lNbcq + p27kG4qmaeRzFa9TSIHJ6PLhfmuWhOctg7DrOaYPazvpEuklClpuIdh1nARq7aHgGVbwUQ2d9UAeL + DNq8Ux3oAlmn2fRtjEYbI2QEFz9SsD8mL0pK+qeYhw864dbHZoD4qv2z3wiRIOFxP5kjt9+cGXF32 + U1GcKdog5IoElC7tP0e4kSeB6uhotxHuDO0FXghwnV/ScLxd+6TtAaNNox4x40LRQl7k4Cj5QGKgC + VUXOowbwTnzHE53PQGUQ==; +Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) + by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) + id 1j6rnE-0001ln-0r; Wed, 26 Feb 2020 08:11:44 +0000 +Received: from mail-pf1-x42d.google.com ([2607:f8b0:4864:20::42d]) + by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) + id 1j6rmJ-0000tK-MR + for linux-arm-kernel@lists.infradead.org; Wed, 26 Feb 2020 08:10:48 +0000 +Received: by mail-pf1-x42d.google.com with SMTP id i19so1066942pfa.2 + for ; + Wed, 26 Feb 2020 00:10:47 -0800 (PST) +DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; + h=from:to:cc:subject:date:message-id:in-reply-to:references + :mime-version:content-transfer-encoding; + bh=UNDrMK3Cuph8hAawynxP4ClnMYdwocSlmGrvdp+XI7U=; + b=TBrP0h2wisco9iwCPRUPdbzfKPQaem8N0CCbkufM0ubNMvNGPVi7J4OrKi6XaCKbH6 + hh3Y+bgMR/KAzZy3SJxpHSn/W55kTsTGse062SF7bXdc1s6lOwPqxkWqbnhYBTrOOQRL + P5UEoGPV5IsF76w8fyduRaTE03AV7RIeG3tdyzE6dWtIWMgpvpx224lpnK6HQOTLFKGx + 8NN0VzAznR0u0zIR0NAXJZCtJ32GmXNwAp/DudApysZdxoB5XwxmgmLNpboYi0ogxMJL + H4NuemzoK00dffBEXYJVCaGEH3TCcpoSWqSDpn+UxmqlsA7Meikom5RyLGooaap33bAj + PsSg== +X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; + d=1e100.net; s=20161025; + h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to + :references:mime-version:content-transfer-encoding; + bh=UNDrMK3Cuph8hAawynxP4ClnMYdwocSlmGrvdp+XI7U=; + b=tNIHOh5/U2zSCDF9YxBv2gBrXaOp1Ic3Ed0/DF9W1SwZlsOm8NdJnPoG/Qzz4Zzq9f + XO2KlEwTsZL/p5cUoBsgJp31//jbQwtydKN7A6Bc8syqlzNqTKkbH0lWw27byIqRQNVb + LZPrt8szaFd6cOQMgYuhMuft7xy3AEwAflpXSPhYxAZ/7/+17p9vRxIYfeQL25gxolY5 + wcpVsTQNM58hJqeMjh5zlpTHzNVNi6eK1DfN4jgGyciaKSD2NkiJ8h94ilf+WPFSg2EC + tfX9NpVWx/fPa+99QUAGGBQZ6Rda+Iwf3iK2ypaJcz83ttVMLmZuoHn2gUauHWp5uwPX + nOQg== +X-Gm-Message-State: APjAAAXSV09JyCccUw4DNzettQ7Qf47judkIMcKg29H1A33F/f9wiexa + clMeRPA3ejNUAeXoRpvNjIE= +X-Google-Smtp-Source: + APXvYqx16ATSH0Ri7QydUSr5etiFpP7VXGwv2ajzCwfEDuf3Fsc6V5gruuHjTDm3C4cjgRnxu80rnQ== +X-Received: by 2002:a63:42c2:: with SMTP id + p185mr2844380pga.268.1582704646751; + Wed, 26 Feb 2020 00:10:46 -0800 (PST) +Received: from anarsoul-thinkpad.lan (216-71-213-236.dyn.novuscom.net. + [216.71.213.236]) + by smtp.gmail.com with ESMTPSA id v7sm1679230pfn.61.2020.02.26.00.10.45 + (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); + Wed, 26 Feb 2020 00:10:46 -0800 (PST) +From: Vasily Khoruzhick +To: Thierry Reding , + Sam Ravnborg , + David Airlie , Daniel Vetter , + Rob Herring , Mark Rutland , + Maxime Ripard , Chen-Yu Tsai , + Andrzej Hajda , + Neil Armstrong , + Laurent Pinchart , + Jonas Karlman , Jernej Skrabec , + Torsten Duwe , Icenowy Zheng , + Heiko Stuebner , + Stephan Gerhold , Mark Brown , + Stephen Rothwell , + Samuel Holland , dri-devel@lists.freedesktop.org, + devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, + linux-arm-kernel@lists.infradead.org +Subject: [PATCH v2 4/6] dt-bindings: display: simple: Add NewEast + Optoelectronics WJFH116008A compatible +Date: Wed, 26 Feb 2020 00:10:09 -0800 +Message-Id: <20200226081011.1347245-5-anarsoul@gmail.com> +X-Mailer: git-send-email 2.25.0 +In-Reply-To: <20200226081011.1347245-1-anarsoul@gmail.com> +References: <20200226081011.1347245-1-anarsoul@gmail.com> +MIME-Version: 1.0 +X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 +X-CRM114-CacheID: sfid-20200226_001047_734455_8E1B858A +X-CRM114-Status: GOOD ( 10.74 ) +X-Spam-Score: -0.2 (/) +X-Spam-Report: SpamAssassin version 3.4.3 on bombadil.infradead.org summary: + Content analysis details: (-0.2 points) + pts rule name description + ---- ---------------------- + -------------------------------------------------- + -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, + no trust [2607:f8b0:4864:20:0:0:0:42d listed in] + [list.dnswl.org] + 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record + 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail + provider [anarsoul[at]gmail.com] + -0.0 SPF_PASS SPF: sender matches SPF record + -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from + envelope-from domain + 0.1 DKIM_SIGNED Message has a DKIM or DK signature, + not necessarily + valid + -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from + author's domain + -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature +X-BeenThere: linux-arm-kernel@lists.infradead.org +X-Mailman-Version: 2.1.29 +Precedence: list +List-Id: +List-Unsubscribe: + , + +List-Archive: +List-Post: +List-Help: +List-Subscribe: + , + +Cc: Laurent Pinchart +Sender: "linux-arm-kernel" +Errors-To: + linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org + +This commit adds compatible for NewEast Optoelectronics WJFH116008A panel +to panel-simple binding + +Reviewed-by: Laurent Pinchart +Signed-off-by: Vasily Khoruzhick +--- + .../devicetree/bindings/display/panel/panel-simple.yaml | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/Documentation/devicetree/bindings/display/panel/panel-simple.yaml b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml +index 8fe60ee2531c..0e5d01ac32e1 100644 +--- a/Documentation/devicetree/bindings/display/panel/panel-simple.yaml ++++ b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml +@@ -39,6 +39,8 @@ properties: + - boe,nv140fhmn49 + # GiantPlus GPM940B0 3.0" QVGA TFT LCD panel + - giantplus,gpm940b0 ++ # NewEast Optoelectronics CO., LTD WJFH116008A eDP TFT LCD panel ++ - neweast,wjfh116008a + # Satoz SAT050AT40H12R2 5.0" WVGA TFT LCD panel + - satoz,sat050at40h12r2 + # Sharp LS020B1DD01D 2.0" HQVGA TFT LCD panel + +From patchwork Wed Feb 26 08:10:10 2020 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +X-Patchwork-Submitter: Vasily Khoruzhick +X-Patchwork-Id: 11405529 +Return-Path: + +Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org + [172.30.200.123]) + by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 98009138D + for ; + Wed, 26 Feb 2020 08:12:06 +0000 (UTC) +Received: from bombadil.infradead.org (bombadil.infradead.org + [198.137.202.133]) + (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) + (No client certificate requested) + by mail.kernel.org (Postfix) with ESMTPS id 706E22084E + for ; + Wed, 26 Feb 2020 08:12:06 +0000 (UTC) +Authentication-Results: mail.kernel.org; + dkim=pass (2048-bit key) header.d=lists.infradead.org + header.i=@lists.infradead.org header.b="RFmzpGxa"; + dkim=fail reason="signature verification failed" (2048-bit key) + header.d=gmail.com header.i=@gmail.com header.b="l/TW+lXA" +DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 706E22084E +Authentication-Results: mail.kernel.org; + dmarc=fail (p=none dis=none) header.from=gmail.com +Authentication-Results: mail.kernel.org; + spf=none + smtp.mailfrom=linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org +DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; + d=lists.infradead.org; s=bombadil.20170209; h=Sender: + Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: + List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: + Message-Id:Date:Subject:To:From:Reply-To:Cc:Content-ID:Content-Description: + Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: + List-Owner; bh=Pjezg2eBVUZyXclyd85ezSxR08wks+q8A4EL9XqNFV8=; b=RFmzpGxaCKDN3Z + TKB9iB1O5CpLIOo6BJ5GeTFZUYua2bsR/5wdIkFR8fHe0NtrBQBgr9UFC3bn7vAR4ElOOPsqyiY/U + sSFoABabi3ubYjB5EsEFderIxHy3jM1GCiATMOVuVlQUCp+RBUOrZ0BRaeCfZHQwQ+TC1XczMZi7K + 3XAWciGmtAuQ0Fc+gjavhcSmThyAtlQ6dsXPA4Hs4tprQ4d1n4JaaPj/aoigY2QgcBGm3ZoTjSf67 + lYjS0cBqOBMPxzeebuHILvAdrgyxP4euSXXQdM7ufztwwR60nibOMdsv9qjDABojmkq8B5MTZqdOH + 0ZaZ5qKKNoBg4Cc0s4tw==; +Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) + by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) + id 1j6rnW-00022y-I8; Wed, 26 Feb 2020 08:12:02 +0000 +Received: from mail-pf1-x444.google.com ([2607:f8b0:4864:20::444]) + by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) + id 1j6rmK-0000tn-HT + for linux-arm-kernel@lists.infradead.org; Wed, 26 Feb 2020 08:10:49 +0000 +Received: by mail-pf1-x444.google.com with SMTP id x185so1062134pfc.5 + for ; + Wed, 26 Feb 2020 00:10:48 -0800 (PST) +DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; + h=from:to:cc:subject:date:message-id:in-reply-to:references + :mime-version:content-transfer-encoding; + bh=2c6a2wUIf1607PZkN1rZk+L4ET6oyW/A+dmD8ze92gI=; + b=l/TW+lXATIXM17aGIZ9zrNTKWKrYbTiLzzjCckt2sYGCNOgBJIAM/09gAYIyO8Ix1n + UHbe88pAp1n0plvmre5V5bbjfK092LKIqAYUkzsgoJS7/2xUSMZgE5o2q6j40HA9jjre + FF8uZvB+fx7B6YmX6nxlrWe2JsyENeFsB23HdsKTAR2dEJOG0eVZaT0pJNwkmq0+XMJC + c9jFO1zsFW7hO9kM7570YJrU/mpImzvlnR4RWJMtjUx3BXAFto3xHr0udkFVc1dm8Tg0 + Ip4cwJcKanfhov2dNsyjvshdovNKgTGIdSWpGBGikwWBexhz01R0zL94DTwVMPuTLhGV + /+nw== +X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; + d=1e100.net; s=20161025; + h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to + :references:mime-version:content-transfer-encoding; + bh=2c6a2wUIf1607PZkN1rZk+L4ET6oyW/A+dmD8ze92gI=; + b=AFqJOlne6XiqyfXbe7Qg6mrk2SdVqJ7iExvkHRxNVYmdxUbR/6yRhvzOZQSVBtKC5i + TmW2u4Q8eZPHYreKvOIUWITey052Zg4u9hGHB3rMw7Av/4qxpWNPtkFqzZfU7XRxu98o + CGp2OcESKg6Ut1utUOOlHQrkxQCAKOG9z7/J5db2Ia8pCEzog0sZXpgIY4VSkT8+trYy + WcqYWGslvZVqZM/Vdc/26b2UTKBa6wqGA8lwIZ8hdr/UmSELSpEf6BVvU08zKfxoF/1B + 75us7suZtGwlG5X7xkj/8QUNiraZ4UQF4XTR7cywE+zar2l5vCrFG2751fJZrx9xW5+1 + w3oQ== +X-Gm-Message-State: APjAAAUZZE/KK0NMOoMfAeeMMg5NlS/caB+zFkrqz5jH670/oibneZxJ + h4YLd4JzSbuB9egyQmmLO68= +X-Google-Smtp-Source: + APXvYqy00/8d+Wer4Z0MFSOy0sPlhrq7zbo/TdsWVeXFTKfHPPar8rV+DBjhxAWH91y4lWNMO4S3Pw== +X-Received: by 2002:a63:ec0c:: with SMTP id j12mr2609426pgh.78.1582704647920; + Wed, 26 Feb 2020 00:10:47 -0800 (PST) +Received: from anarsoul-thinkpad.lan (216-71-213-236.dyn.novuscom.net. + [216.71.213.236]) + by smtp.gmail.com with ESMTPSA id v7sm1679230pfn.61.2020.02.26.00.10.46 + (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); + Wed, 26 Feb 2020 00:10:47 -0800 (PST) +From: Vasily Khoruzhick +To: Thierry Reding , + Sam Ravnborg , + David Airlie , Daniel Vetter , + Rob Herring , Mark Rutland , + Maxime Ripard , Chen-Yu Tsai , + Andrzej Hajda , + Neil Armstrong , + Laurent Pinchart , + Jonas Karlman , Jernej Skrabec , + Torsten Duwe , Icenowy Zheng , + Heiko Stuebner , + Stephan Gerhold , Mark Brown , + Stephen Rothwell , + Samuel Holland , dri-devel@lists.freedesktop.org, + devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, + linux-arm-kernel@lists.infradead.org +Subject: [PATCH v2 5/6] drm/panel: simple: Add NewEast Optoelectronics CO., + LTD WJFH116008A panel support +Date: Wed, 26 Feb 2020 00:10:10 -0800 +Message-Id: <20200226081011.1347245-6-anarsoul@gmail.com> +X-Mailer: git-send-email 2.25.0 +In-Reply-To: <20200226081011.1347245-1-anarsoul@gmail.com> +References: <20200226081011.1347245-1-anarsoul@gmail.com> +MIME-Version: 1.0 +X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 +X-CRM114-CacheID: sfid-20200226_001048_596182_84BBBB6A +X-CRM114-Status: GOOD ( 13.16 ) +X-Spam-Score: -0.2 (/) +X-Spam-Report: SpamAssassin version 3.4.3 on bombadil.infradead.org summary: + Content analysis details: (-0.2 points) + pts rule name description + ---- ---------------------- + -------------------------------------------------- + -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, + no trust [2607:f8b0:4864:20:0:0:0:444 listed in] + [list.dnswl.org] + 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record + 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail + provider [anarsoul[at]gmail.com] + -0.0 SPF_PASS SPF: sender matches SPF record + -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from + envelope-from domain + 0.1 DKIM_SIGNED Message has a DKIM or DK signature, + not necessarily + valid + -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from + author's domain + -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature +X-BeenThere: linux-arm-kernel@lists.infradead.org +X-Mailman-Version: 2.1.29 +Precedence: list +List-Id: +List-Unsubscribe: + , + +List-Archive: +List-Post: +List-Help: +List-Subscribe: + , + +Sender: "linux-arm-kernel" +Errors-To: + linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org + +This commit adds support for the NewEast Optoelectronics CO., LTD +WJFH116008A 11.6" 1920x1080 TFT LCD panel. + +Signed-off-by: Vasily Khoruzhick +--- + drivers/gpu/drm/panel/panel-simple.c | 48 ++++++++++++++++++++++++++++ + 1 file changed, 48 insertions(+) + +diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c +index e14c14ac62b5..4292e3e3a461 100644 +--- a/drivers/gpu/drm/panel/panel-simple.c ++++ b/drivers/gpu/drm/panel/panel-simple.c +@@ -2224,6 +2224,51 @@ static const struct panel_desc netron_dy_e231732 = { + .bus_format = MEDIA_BUS_FMT_RGB666_1X18, + }; + ++static const struct drm_display_mode neweast_wjfh116008a_modes[] = { ++ { ++ .clock = 138500, ++ .hdisplay = 1920, ++ .hsync_start = 1920 + 48, ++ .hsync_end = 1920 + 48 + 32, ++ .htotal = 1920 + 48 + 32 + 80, ++ .vdisplay = 1080, ++ .vsync_start = 1080 + 3, ++ .vsync_end = 1080 + 3 + 5, ++ .vtotal = 1080 + 3 + 5 + 23, ++ .vrefresh = 60, ++ .flags = DRM_MODE_FLAG_NVSYNC | DRM_MODE_FLAG_NHSYNC, ++ }, { ++ .clock = 110920, ++ .hdisplay = 1920, ++ .hsync_start = 1920 + 48, ++ .hsync_end = 1920 + 48 + 32, ++ .htotal = 1920 + 48 + 32 + 80, ++ .vdisplay = 1080, ++ .vsync_start = 1080 + 3, ++ .vsync_end = 1080 + 3 + 5, ++ .vtotal = 1080 + 3 + 5 + 23, ++ .vrefresh = 48, ++ .flags = DRM_MODE_FLAG_NVSYNC | DRM_MODE_FLAG_NHSYNC, ++ } ++}; ++ ++static const struct panel_desc neweast_wjfh116008a = { ++ .modes = neweast_wjfh116008a_modes, ++ .num_modes = 2, ++ .bpc = 6, ++ .size = { ++ .width = 260, ++ .height = 150, ++ }, ++ .delay = { ++ .prepare = 110, ++ .enable = 20, ++ .unprepare = 500, ++ }, ++ .bus_format = MEDIA_BUS_FMT_RGB666_1X18, ++ .connector_type = DRM_MODE_CONNECTOR_eDP, ++}; ++ + static const struct drm_display_mode newhaven_nhd_43_480272ef_atxl_mode = { + .clock = 9000, + .hdisplay = 480, +@@ -3399,6 +3444,9 @@ static const struct of_device_id platform_of_match[] = { + }, { + .compatible = "netron-dy,e231732", + .data = &netron_dy_e231732, ++ }, { ++ .compatible = "neweast,wjfh116008a", ++ .data = &neweast_wjfh116008a, + }, { + .compatible = "newhaven,nhd-4.3-480272ef-atxl", + .data = &newhaven_nhd_43_480272ef_atxl, + +From patchwork Wed Feb 26 08:10:11 2020 +Content-Type: text/plain; charset="utf-8" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +X-Patchwork-Submitter: Vasily Khoruzhick +X-Patchwork-Id: 11405531 +Return-Path: + +Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org + [172.30.200.123]) + by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 77856930 + for ; + Wed, 26 Feb 2020 08:12:17 +0000 (UTC) +Received: from bombadil.infradead.org (bombadil.infradead.org + [198.137.202.133]) + (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) + (No client certificate requested) + by mail.kernel.org (Postfix) with ESMTPS id 51B0C24670 + for ; + Wed, 26 Feb 2020 08:12:17 +0000 (UTC) +Authentication-Results: mail.kernel.org; + dkim=pass (2048-bit key) header.d=lists.infradead.org + header.i=@lists.infradead.org header.b="Ttb9cpIi"; + dkim=fail reason="signature verification failed" (2048-bit key) + header.d=gmail.com header.i=@gmail.com header.b="Uj9USULV" +DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 51B0C24670 +Authentication-Results: mail.kernel.org; + dmarc=fail (p=none dis=none) header.from=gmail.com +Authentication-Results: mail.kernel.org; + spf=none + smtp.mailfrom=linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org +DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; + d=lists.infradead.org; s=bombadil.20170209; h=Sender: + Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: + List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: + Message-Id:Date:Subject:To:From:Reply-To:Content-ID:Content-Description: + Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: + List-Owner; bh=LnkqG8iA0ymdTA2w7CdGVHSCIBdn7y28YqcNDvsJWNU=; b=Ttb9cpIiR16OSX + C+0UQyaaAqkD801MCZ65bwRsQy+0yRPSFzRfv8Tc2s5Gm5L6TR05fd2w3uM9MocpU2FRV80A2XmKG + rVRDRn0q7jNpoxIYIc+2RWUuL1Jr7YvueQgU57O5c69nl3SgTzbc1r1xUS/q3mQkrGHbpmY2PlayQ + RPA4BQ3hNGi6naA71o8hf+uG9U8PousU2XUFhROHgAx7hePPf25ESKTbZVfKke7QuDJBw4JFxYJym + MH/qF08Y4EMH0jZYh/oeBwEf8X3Kb0CWHSTjMi9ppWH/SimAViI2NWVuusqvOdmXWorBM0vPTx8dG + 0xJZ511Bv5LYDdz46Zgw==; +Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) + by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) + id 1j6rnk-0002Fx-FU; Wed, 26 Feb 2020 08:12:16 +0000 +Received: from mail-pf1-x441.google.com ([2607:f8b0:4864:20::441]) + by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) + id 1j6rmL-0000vN-TN + for linux-arm-kernel@lists.infradead.org; Wed, 26 Feb 2020 08:10:51 +0000 +Received: by mail-pf1-x441.google.com with SMTP id s1so1047374pfh.10 + for ; + Wed, 26 Feb 2020 00:10:49 -0800 (PST) +DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; + h=from:to:cc:subject:date:message-id:in-reply-to:references + :mime-version:content-transfer-encoding; + bh=1/9ulr35We1VvK4OKOtO+SeDdjZAIuN626KlRGL51e8=; + b=Uj9USULV1YhIjRQTGet+GBQYuuhLAkRgQq5aOXkZU55ZeXZOwYCvjYC0XTbkwI02vn + nMqNb637FbLBsLL+0OixEVNpFP/WYWrCLF5zLIEBTSZkXEK2J8hPyn24masq/KXBnUXK + 1WpXqTxgjbgl1eq/uxSXJMuc6aResWHy1sQuEaEYBEWdEyvPqtQts5z5Su639wYEgo9n + wE96FuZQY46tDJyTJqt+ZJrzDYNCNenLNiqWFwxe/zxWzBuM58iQ9ur+6Ym5ldZxRpj8 + JJ2JlN+8/BPq8Wk9S0SAMAUumaOifHahGje65ULSbNA6Krngc4WuiBgliS4rekKjbPPq + Xcow== +X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; + d=1e100.net; s=20161025; + h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to + :references:mime-version:content-transfer-encoding; + bh=1/9ulr35We1VvK4OKOtO+SeDdjZAIuN626KlRGL51e8=; + b=NlA7PKzSo4EOEYlOtdfcH6TkSjbixH6f2CBb9+YjK0Qva2JOIWHVkd/xLF8DiM7+a5 + WsI9c+6xtz/2NumAXPb3HJFRydr5L7HJjDvivJsN7nfSEG7DEhH69XXTIvEZenriDrMi + Y/e4D3KpvoqbzqXxLHj8aeWp4qLjT8qZkPhI2+wLfkiFn3RhC0Z7dPFHKp5axa/eBHDl + /P2wVZuhjA35KPAjAYlfuV8D1o3WnCOLw0ZUU3WlqU13p/3JBnZcqIzYgbspdp0VpGuF + FgeJtSaGyjIGdX5dS4zCvctLEovV3BWeFzMmx5oz2ugpokl4iACnNbBecKLEvWf5onEA + Iiow== +X-Gm-Message-State: APjAAAW9K1sMiX2Ac7+xWeNX1IDTamXxZ1XKYfBb0FZh75fpIBHjo5qr + ZkS5JBqo+VG0fyrC0fmOg4c= +X-Google-Smtp-Source: + APXvYqwdqfkaKNsVj/z20Fl00qUooa5Fc8g4w6gy6KhAC3QgiEMz+qOhI4aMxTYoHDNd7Lx/skz8fQ== +X-Received: by 2002:a62:1883:: with SMTP id 125mr3012096pfy.166.1582704649041; + Wed, 26 Feb 2020 00:10:49 -0800 (PST) +Received: from anarsoul-thinkpad.lan (216-71-213-236.dyn.novuscom.net. + [216.71.213.236]) + by smtp.gmail.com with ESMTPSA id v7sm1679230pfn.61.2020.02.26.00.10.48 + (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); + Wed, 26 Feb 2020 00:10:48 -0800 (PST) +From: Vasily Khoruzhick +To: Thierry Reding , + Sam Ravnborg , + David Airlie , Daniel Vetter , + Rob Herring , Mark Rutland , + Maxime Ripard , Chen-Yu Tsai , + Andrzej Hajda , + Neil Armstrong , + Laurent Pinchart , + Jonas Karlman , Jernej Skrabec , + Torsten Duwe , Icenowy Zheng , + Heiko Stuebner , + Stephan Gerhold , Mark Brown , + Stephen Rothwell , + Samuel Holland , dri-devel@lists.freedesktop.org, + devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, + linux-arm-kernel@lists.infradead.org +Subject: [PATCH v2 6/6] arm64: allwinner: a64: enable LCD-related hardware for + Pinebook +Date: Wed, 26 Feb 2020 00:10:11 -0800 +Message-Id: <20200226081011.1347245-7-anarsoul@gmail.com> +X-Mailer: git-send-email 2.25.0 +In-Reply-To: <20200226081011.1347245-1-anarsoul@gmail.com> +References: <20200226081011.1347245-1-anarsoul@gmail.com> +MIME-Version: 1.0 +X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 +X-CRM114-CacheID: sfid-20200226_001050_010315_52B91C3C +X-CRM114-Status: GOOD ( 14.29 ) +X-Spam-Score: -0.2 (/) +X-Spam-Report: SpamAssassin version 3.4.3 on bombadil.infradead.org summary: + Content analysis details: (-0.2 points) + pts rule name description + ---- ---------------------- + -------------------------------------------------- + -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, + no trust [2607:f8b0:4864:20:0:0:0:441 listed in] + [list.dnswl.org] + 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record + 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail + provider [anarsoul[at]gmail.com] + -0.0 SPF_PASS SPF: sender matches SPF record + -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from + envelope-from domain + 0.1 DKIM_SIGNED Message has a DKIM or DK signature, + not necessarily + valid + -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from + author's domain + -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature +X-BeenThere: linux-arm-kernel@lists.infradead.org +X-Mailman-Version: 2.1.29 +Precedence: list +List-Id: +List-Unsubscribe: + , + +List-Archive: +List-Post: +List-Help: +List-Subscribe: + , + +Cc: Laurent Pinchart +Sender: "linux-arm-kernel" +Errors-To: + linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org + +From: Icenowy Zheng + +Pinebook has an ANX6345 bridge connected to the RGB666 LCD output and +eDP panel input. The bridge is controlled via I2C that's connected to +R_I2C bus. + +Enable all this hardware in device tree. + +Reviewed-by: Laurent Pinchart +Signed-off-by: Icenowy Zheng +Signed-off-by: Vasily Khoruzhick +--- + .../dts/allwinner/sun50i-a64-pinebook.dts | 61 ++++++++++++++++++- + 1 file changed, 60 insertions(+), 1 deletion(-) + +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +index c06c540e6c08..0033f6a43d98 100644 +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +@@ -48,6 +48,18 @@ lid_switch { + }; + }; + ++ panel_edp: panel-edp { ++ compatible = "neweast,wjfh116008a"; ++ backlight = <&backlight>; ++ power-supply = <®_dc1sw>; ++ ++ port { ++ panel_edp_in: endpoint { ++ remote-endpoint = <&anx6345_out_edp>; ++ }; ++ }; ++ }; ++ + reg_vbklt: vbklt { + compatible = "regulator-fixed"; + regulator-name = "vbklt"; +@@ -109,6 +121,10 @@ &dai { + status = "okay"; + }; + ++&de { ++ status = "okay"; ++}; ++ + &ehci0 { + phys = <&usbphy 0>; + phy-names = "usb"; +@@ -119,6 +135,10 @@ &ehci1 { + status = "okay"; + }; + ++&mixer0 { ++ status = "okay"; ++}; ++ + &mmc0 { + pinctrl-names = "default"; + pinctrl-0 = <&mmc0_pins>; +@@ -177,12 +197,38 @@ &pwm { + status = "okay"; + }; + +-/* The ANX6345 eDP-bridge is on r_i2c */ + &r_i2c { + clock-frequency = <100000>; + pinctrl-names = "default"; + pinctrl-0 = <&r_i2c_pl89_pins>; + status = "okay"; ++ ++ anx6345: anx6345@38 { ++ compatible = "analogix,anx6345"; ++ reg = <0x38>; ++ reset-gpios = <&pio 3 24 GPIO_ACTIVE_LOW>; /* PD24 */ ++ dvdd25-supply = <®_dldo2>; ++ dvdd12-supply = <®_fldo1>; ++ ++ ports { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ anx6345_in: port@0 { ++ reg = <0>; ++ anx6345_in_tcon0: endpoint { ++ remote-endpoint = <&tcon0_out_anx6345>; ++ }; ++ }; ++ ++ anx6345_out: port@1 { ++ reg = <1>; ++ anx6345_out_edp: endpoint { ++ remote-endpoint = <&panel_edp_in>; ++ }; ++ }; ++ }; ++ }; + }; + + &r_pio { +@@ -357,6 +403,19 @@ &sound { + "MIC2", "Internal Microphone Right"; + }; + ++&tcon0 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&lcd_rgb666_pins>; ++ ++ status = "okay"; ++}; ++ ++&tcon0_out { ++ tcon0_out_anx6345: endpoint { ++ remote-endpoint = <&anx6345_in_tcon0>; ++ }; ++}; ++ + &uart0 { + pinctrl-names = "default"; + pinctrl-0 = <&uart0_pb_pins>; diff --git a/arm64-a64-mbus.patch b/arm64-a64-mbus.patch new file mode 100644 index 000000000..46efa29cf --- /dev/null +++ b/arm64-a64-mbus.patch @@ -0,0 +1,69 @@ +From daae9f66b29a04a94708b1b5a9b61e3ee14df031 Mon Sep 17 00:00:00 2001 +From: Jernej Skrabec +Date: Mon, 10 Feb 2020 18:06:52 +0100 +Subject: [PATCH 1/2] dt-bindings: interconnect: sunxi: Add A64 MBUS compatible + +A64 contains MBUS controller. Add a compatible for it. + +Acked-by: Rob Herring +Signed-off-by: Jernej Skrabec +Signed-off-by: Maxime Ripard +--- + .../devicetree/bindings/arm/sunxi/allwinner,sun4i-a10-mbus.yaml | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Documentation/devicetree/bindings/arm/sunxi/allwinner,sun4i-a10-mbus.yaml b/Documentation/devicetree/bindings/arm/sunxi/allwinner,sun4i-a10-mbus.yaml +index 9370e64992dd..aa0738b4d534 100644 +--- a/Documentation/devicetree/bindings/arm/sunxi/allwinner,sun4i-a10-mbus.yaml ++++ b/Documentation/devicetree/bindings/arm/sunxi/allwinner,sun4i-a10-mbus.yaml +@@ -30,6 +30,7 @@ properties: + enum: + - allwinner,sun5i-a13-mbus + - allwinner,sun8i-h3-mbus ++ - allwinner,sun50i-a64-mbus + + reg: + maxItems: 1 +-- +2.24.1 + +From 410bb2be7e1f1d329c238e2d6d06b6c25dcee404 Mon Sep 17 00:00:00 2001 +From: Jernej Skrabec +Date: Mon, 10 Feb 2020 18:06:54 +0100 +Subject: [PATCH 2/2] arm64: dts: allwinner: a64: Add MBUS controller node + +A64 contains MBUS, which is the bus used by DMA devices to access +system memory. + +MBUS controller is responsible for arbitration between channels based +on set priority and can do some other things as well, like report +bandwidth used. It also maps RAM region to different address than CPU. + +Signed-off-by: Jernej Skrabec +Signed-off-by: Maxime Ripard +--- + arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi +index 862b47dc9dc9..251c91724de1 100644 +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi +@@ -1061,6 +1061,14 @@ pwm: pwm@1c21400 { + status = "disabled"; + }; + ++ mbus: dram-controller@1c62000 { ++ compatible = "allwinner,sun50i-a64-mbus"; ++ reg = <0x01c62000 0x1000>; ++ clocks = <&ccu 112>; ++ dma-ranges = <0x00000000 0x40000000 0xc0000000>; ++ #interconnect-cells = <1>; ++ }; ++ + csi: csi@1cb0000 { + compatible = "allwinner,sun50i-a64-csi"; + reg = <0x01cb0000 0x1000>; +-- +2.24.1 + diff --git a/arm64-pine64-pinephone.patch b/arm64-pine64-pinephone.patch new file mode 100644 index 000000000..640d53e33 --- /dev/null +++ b/arm64-pine64-pinephone.patch @@ -0,0 +1,568 @@ +From 836821a0addbd8589e949801aaa7be244703c7f8 Mon Sep 17 00:00:00 2001 +From: Ondrej Jirman +Date: Thu, 27 Feb 2020 02:26:48 +0100 +Subject: [PATCH 1/3] arm64: dts: sun50i-a64: Add i2c2 pins + +PinePhone needs I2C2 pins description. Add it, and make it default +for i2c2, since it's the only possiblilty. + +Signed-off-by: Ondrej Jirman +Signed-off-by: Maxime Ripard +--- + arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi +index 862b47dc9dc9..107a48f9c5b3 100644 +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi +@@ -671,6 +671,11 @@ i2c1_pins: i2c1-pins { + function = "i2c1"; + }; + ++ i2c2_pins: i2c2-pins { ++ pins = "PE14", "PE15"; ++ function = "i2c2"; ++ }; ++ + /omit-if-no-ref/ + lcd_rgb666_pins: lcd-rgb666-pins { + pins = "PD0", "PD1", "PD2", "PD3", "PD4", +@@ -958,12 +963,13 @@ i2c2: i2c@1c2b400 { + interrupts = ; + clocks = <&ccu CLK_BUS_I2C2>; + resets = <&ccu RST_BUS_I2C2>; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&i2c2_pins>; + status = "disabled"; + #address-cells = <1>; + #size-cells = <0>; + }; + +- + spi0: spi@1c68000 { + compatible = "allwinner,sun8i-h3-spi"; + reg = <0x01c68000 0x1000>; +-- +2.24.1 + +From 5c4e2cd9e8b600cc622c10543f69fcd897557eee Mon Sep 17 00:00:00 2001 +From: Ondrej Jirman +Date: Thu, 27 Feb 2020 02:26:49 +0100 +Subject: [PATCH 2/3] dt-bindings: arm: sunxi: Add PinePhone 1.0 and 1.1 + bindings + +Document board compatible names for Pine64 PinePhone: + +- 1.0 - Developer variant +- 1.1 - Braveheart variant + +Signed-off-by: Ondrej Jirman +Reviewed-by: Rob Herring +Signed-off-by: Maxime Ripard +--- + Documentation/devicetree/bindings/arm/sunxi.yaml | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml +index 159060b65c5d..c632252be48b 100644 +--- a/Documentation/devicetree/bindings/arm/sunxi.yaml ++++ b/Documentation/devicetree/bindings/arm/sunxi.yaml +@@ -636,6 +636,16 @@ properties: + - const: pine64,pinebook + - const: allwinner,sun50i-a64 + ++ - description: Pine64 PinePhone Developer Batch (1.0) ++ items: ++ - const: pine64,pinephone-1.0 ++ - const: allwinner,sun50i-a64 ++ ++ - description: Pine64 PinePhone Braveheart (1.1) ++ items: ++ - const: pine64,pinephone-1.1 ++ - const: allwinner,sun50i-a64 ++ + - description: Pine64 PineTab + items: + - const: pine64,pinetab +-- +2.24.1 + +From 697f60799172569e8d502a44ad98994f2c48778c Mon Sep 17 00:00:00 2001 +From: Ondrej Jirman +Date: Thu, 27 Feb 2020 02:26:50 +0100 +Subject: [PATCH 3/3] arm64: dts: allwinner: Add initial support for Pine64 + PinePhone + +At the moment PinePhone comes in two slightly incompatible variants: + +- 1.0: Early Developer Batch +- 1.1: Braveheart Batch + +There will be at least one more incompatible variant in the very near +future, so let's start by sharing the dtsi among multiple variants, +right away, even though the HW description doesn't yet include the +different bits. + +The differences between 1.0 and 1.1 are: change in pins that control +the flash LED, differences in modem power status signal routing, and +maybe some other subtler things, that have not been determined yet. + +This is a basic DT that includes only features that are already +supported by mainline drivers. + +Co-developed-by: Samuel Holland +Signed-off-by: Samuel Holland +Co-developed-by: Martijn Braam +Signed-off-by: Martijn Braam +Co-developed-by: Luca Weiss +Signed-off-by: Luca Weiss +Signed-off-by: Bhushan Shah +Signed-off-by: Icenowy Zheng +Signed-off-by: Ondrej Jirman +Signed-off-by: Maxime Ripard +--- + arch/arm64/boot/dts/allwinner/Makefile | 2 + + .../allwinner/sun50i-a64-pinephone-1.0.dts | 11 + + .../allwinner/sun50i-a64-pinephone-1.1.dts | 11 + + .../dts/allwinner/sun50i-a64-pinephone.dtsi | 379 ++++++++++++++++++ + 4 files changed, 403 insertions(+) + create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.0.dts + create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.1.dts + create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi + +diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile +index 6dad63881cd3..e4d3cd0ac5bb 100644 +--- a/arch/arm64/boot/dts/allwinner/Makefile ++++ b/arch/arm64/boot/dts/allwinner/Makefile +@@ -9,6 +9,8 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-orangepi-win.dtb + dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pine64-lts.dtb + dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pine64-plus.dtb sun50i-a64-pine64.dtb + dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinebook.dtb ++dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinephone-1.0.dtb ++dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinephone-1.1.dtb + dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinetab.dtb + dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-sopine-baseboard.dtb + dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-teres-i.dtb +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.0.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.0.dts +new file mode 100644 +index 000000000000..0c42272106af +--- /dev/null ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.0.dts +@@ -0,0 +1,11 @@ ++// SPDX-License-Identifier: (GPL-2.0+ OR MIT) ++// Copyright (C) 2020 Ondrej Jirman ++ ++/dts-v1/; ++ ++#include "sun50i-a64-pinephone.dtsi" ++ ++/ { ++ model = "Pine64 PinePhone Developer Batch (1.0)"; ++ compatible = "pine64,pinephone-1.0", "allwinner,sun50i-a64"; ++}; +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.1.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.1.dts +new file mode 100644 +index 000000000000..06a775c41664 +--- /dev/null ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone-1.1.dts +@@ -0,0 +1,11 @@ ++// SPDX-License-Identifier: (GPL-2.0+ OR MIT) ++// Copyright (C) 2020 Ondrej Jirman ++ ++/dts-v1/; ++ ++#include "sun50i-a64-pinephone.dtsi" ++ ++/ { ++ model = "Pine64 PinePhone Braveheart (1.1)"; ++ compatible = "pine64,pinephone-1.1", "allwinner,sun50i-a64"; ++}; +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi +new file mode 100644 +index 000000000000..cefda145c3c9 +--- /dev/null ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi +@@ -0,0 +1,379 @@ ++// SPDX-License-Identifier: (GPL-2.0+ OR MIT) ++// Copyright (C) 2019 Icenowy Zheng ++// Copyright (C) 2020 Martijn Braam ++// Copyright (C) 2020 Ondrej Jirman ++ ++#include "sun50i-a64.dtsi" ++#include "sun50i-a64-cpu-opp.dtsi" ++ ++#include ++#include ++#include ++#include ++ ++/ { ++ aliases { ++ serial0 = &uart0; ++ }; ++ ++ chosen { ++ stdout-path = "serial0:115200n8"; ++ }; ++ ++ leds { ++ compatible = "gpio-leds"; ++ ++ blue { ++ function = LED_FUNCTION_INDICATOR; ++ color = ; ++ gpios = <&pio 3 20 GPIO_ACTIVE_HIGH>; /* PD20 */ ++ }; ++ ++ green { ++ function = LED_FUNCTION_INDICATOR; ++ color = ; ++ gpios = <&pio 3 18 GPIO_ACTIVE_HIGH>; /* PD18 */ ++ }; ++ ++ red { ++ function = LED_FUNCTION_INDICATOR; ++ color = ; ++ gpios = <&pio 3 19 GPIO_ACTIVE_HIGH>; /* PD19 */ ++ }; ++ }; ++ ++ speaker_amp: audio-amplifier { ++ compatible = "simple-audio-amplifier"; ++ enable-gpios = <&pio 2 7 GPIO_ACTIVE_HIGH>; /* PC7 */ ++ sound-name-prefix = "Speaker Amp"; ++ }; ++ ++ vibrator { ++ compatible = "gpio-vibrator"; ++ enable-gpios = <&pio 3 2 GPIO_ACTIVE_HIGH>; /* PD2 */ ++ vcc-supply = <®_dcdc1>; ++ }; ++}; ++ ++&codec { ++ status = "okay"; ++}; ++ ++&codec_analog { ++ cpvdd-supply = <®_eldo1>; ++ status = "okay"; ++}; ++ ++&cpu0 { ++ cpu-supply = <®_dcdc2>; ++}; ++ ++&cpu1 { ++ cpu-supply = <®_dcdc2>; ++}; ++ ++&cpu2 { ++ cpu-supply = <®_dcdc2>; ++}; ++ ++&cpu3 { ++ cpu-supply = <®_dcdc2>; ++}; ++ ++&dai { ++ status = "okay"; ++}; ++ ++&ehci0 { ++ status = "okay"; ++}; ++ ++&ehci1 { ++ status = "okay"; ++}; ++ ++&i2c1 { ++ status = "okay"; ++ ++ /* Magnetometer */ ++ lis3mdl@1e { ++ compatible = "st,lis3mdl-magn"; ++ reg = <0x1e>; ++ vdd-supply = <®_dldo1>; ++ vddio-supply = <®_dldo1>; ++ }; ++ ++ /* Accelerometer/gyroscope */ ++ mpu6050@68 { ++ compatible = "invensense,mpu6050"; ++ reg = <0x68>; ++ interrupt-parent = <&pio>; ++ interrupts = <7 5 IRQ_TYPE_EDGE_RISING>; /* PH5 */ ++ vdd-supply = <®_dldo1>; ++ vddio-supply = <®_dldo1>; ++ }; ++}; ++ ++/* Connected to pogo pins (external spring based pinheader for user addons) */ ++&i2c2 { ++ status = "okay"; ++}; ++ ++&lradc { ++ vref-supply = <®_aldo3>; ++ status = "okay"; ++ ++ button-200 { ++ label = "Volume Up"; ++ linux,code = ; ++ channel = <0>; ++ voltage = <200000>; ++ }; ++ ++ button-400 { ++ label = "Volume Down"; ++ linux,code = ; ++ channel = <0>; ++ voltage = <400000>; ++ }; ++}; ++ ++&mmc0 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&mmc0_pins>; ++ vmmc-supply = <®_dcdc1>; ++ vqmmc-supply = <®_dcdc1>; ++ cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */ ++ disable-wp; ++ bus-width = <4>; ++ status = "okay"; ++}; ++ ++&mmc2 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&mmc2_pins>; ++ vmmc-supply = <®_dcdc1>; ++ vqmmc-supply = <®_dcdc1>; ++ bus-width = <8>; ++ non-removable; ++ cap-mmc-hw-reset; ++ status = "okay"; ++}; ++ ++&ohci0 { ++ status = "okay"; ++}; ++ ++&ohci1 { ++ status = "okay"; ++}; ++ ++&pio { ++ vcc-pb-supply = <®_dcdc1>; ++ vcc-pc-supply = <®_dcdc1>; ++ vcc-pd-supply = <®_dcdc1>; ++ vcc-pe-supply = <®_aldo1>; ++ vcc-pf-supply = <®_dcdc1>; ++ vcc-pg-supply = <®_dldo4>; ++ vcc-ph-supply = <®_dcdc1>; ++}; ++ ++&r_pio { ++ /* ++ * FIXME: We can't add that supply for now since it would ++ * create a circular dependency between pinctrl, the regulator ++ * and the RSB Bus. ++ * ++ * vcc-pl-supply = <®_aldo2>; ++ */ ++}; ++ ++&r_rsb { ++ status = "okay"; ++ ++ axp803: pmic@3a3 { ++ compatible = "x-powers,axp803"; ++ reg = <0x3a3>; ++ interrupt-parent = <&r_intc>; ++ interrupts = <0 IRQ_TYPE_LEVEL_LOW>; ++ }; ++}; ++ ++#include "axp803.dtsi" ++ ++&ac_power_supply { ++ status = "okay"; ++}; ++ ++&battery_power_supply { ++ status = "okay"; ++}; ++ ++®_aldo1 { ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "dovdd-csi"; ++}; ++ ++®_aldo2 { ++ regulator-always-on; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "vcc-pl"; ++}; ++ ++®_aldo3 { ++ regulator-always-on; ++ regulator-min-microvolt = <2700000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-pll-avcc"; ++}; ++ ++®_dcdc1 { ++ regulator-always-on; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-3v3"; ++}; ++ ++®_dcdc2 { ++ regulator-always-on; ++ regulator-min-microvolt = <1000000>; ++ regulator-max-microvolt = <1300000>; ++ regulator-name = "vdd-cpux"; ++}; ++ ++/* DCDC3 is polyphased with DCDC2 */ ++ ++®_dcdc5 { ++ regulator-always-on; ++ regulator-min-microvolt = <1200000>; ++ regulator-max-microvolt = <1200000>; ++ regulator-name = "vcc-dram"; ++}; ++ ++®_dcdc6 { ++ regulator-always-on; ++ regulator-min-microvolt = <1100000>; ++ regulator-max-microvolt = <1100000>; ++ regulator-name = "vdd-sys"; ++}; ++ ++®_dldo1 { ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-dsi-sensor"; ++}; ++ ++®_dldo2 { ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "vcc-mipi-io"; ++}; ++ ++®_dldo3 { ++ regulator-min-microvolt = <2800000>; ++ regulator-max-microvolt = <2800000>; ++ regulator-name = "avdd-csi"; ++}; ++ ++®_dldo4 { ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-wifi-io"; ++}; ++ ++®_eldo1 { ++ regulator-always-on; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "vcc-lpddr"; ++}; ++ ++®_eldo3 { ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "dvdd-1v8-csi"; ++}; ++ ++®_fldo1 { ++ regulator-min-microvolt = <1200000>; ++ regulator-max-microvolt = <1200000>; ++ regulator-name = "vcc-1v2-hsic"; ++}; ++ ++®_fldo2 { ++ regulator-always-on; ++ regulator-min-microvolt = <1100000>; ++ regulator-max-microvolt = <1100000>; ++ regulator-name = "vdd-cpus"; ++}; ++ ++®_ldo_io0 { ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-lcd-ctp-stk"; ++ status = "okay"; ++}; ++ ++®_ldo_io1 { ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "vcc-1v8-typec"; ++ status = "okay"; ++}; ++ ++®_rtc_ldo { ++ regulator-name = "vcc-rtc"; ++}; ++ ++&sound { ++ status = "okay"; ++ simple-audio-card,aux-devs = <&codec_analog>, <&speaker_amp>; ++ simple-audio-card,widgets = "Microphone", "Headset Microphone", ++ "Microphone", "Internal Microphone", ++ "Headphone", "Headphone Jack", ++ "Speaker", "Internal Earpiece", ++ "Speaker", "Internal Speaker"; ++ simple-audio-card,routing = ++ "Headphone Jack", "HP", ++ "Internal Earpiece", "EARPIECE", ++ "Internal Speaker", "Speaker Amp OUTL", ++ "Internal Speaker", "Speaker Amp OUTR", ++ "Speaker Amp INL", "LINEOUT", ++ "Speaker Amp INR", "LINEOUT", ++ "Left DAC", "AIF1 Slot 0 Left", ++ "Right DAC", "AIF1 Slot 0 Right", ++ "AIF1 Slot 0 Left ADC", "Left ADC", ++ "AIF1 Slot 0 Right ADC", "Right ADC", ++ "Internal Microphone", "MBIAS", ++ "MIC1", "Internal Microphone", ++ "Headset Microphone", "HBIAS", ++ "MIC2", "Headset Microphone"; ++}; ++ ++&uart0 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart0_pb_pins>; ++ status = "okay"; ++}; ++ ++/* Connected to the modem (hardware flow control can't be used) */ ++&uart3 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart3_pins>; ++ status = "okay"; ++}; ++ ++&usb_otg { ++ dr_mode = "peripheral"; ++ status = "okay"; ++}; ++ ++&usb_power_supply { ++ status = "okay"; ++}; ++ ++&usbphy { ++ status = "okay"; ++}; +-- +2.24.1 + diff --git a/arm64-pine64-pinetab.patch b/arm64-pine64-pinetab.patch new file mode 100644 index 000000000..cafbc71bd --- /dev/null +++ b/arm64-pine64-pinetab.patch @@ -0,0 +1,583 @@ +From e15d9c7cb74033f668c19a65abfd77ed7331f91e Mon Sep 17 00:00:00 2001 +From: Icenowy Zheng +Date: Thu, 16 Jan 2020 11:36:35 +0800 +Subject: [PATCH 1/2] dt-bindings: arm: sunxi: add binding for PineTab tablet + +Add the device tree binding for Pine64's PineTab tablet, which uses +Allwinner A64 SoC. + +Signed-off-by: Icenowy Zheng +Reviewed-by: Rob Herring +Signed-off-by: Maxime Ripard +--- + Documentation/devicetree/bindings/arm/sunxi.yaml | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml +index 327ce6730823..159060b65c5d 100644 +--- a/Documentation/devicetree/bindings/arm/sunxi.yaml ++++ b/Documentation/devicetree/bindings/arm/sunxi.yaml +@@ -636,6 +636,11 @@ properties: + - const: pine64,pinebook + - const: allwinner,sun50i-a64 + ++ - description: Pine64 PineTab ++ items: ++ - const: pine64,pinetab ++ - const: allwinner,sun50i-a64 ++ + - description: Pine64 SoPine Baseboard + items: + - const: pine64,sopine-baseboard +-- +2.24.1 + +From d7b56d337bb980f0b996958ec6808253c4f50771 Mon Sep 17 00:00:00 2001 +From: Icenowy Zheng +Date: Thu, 16 Jan 2020 11:36:36 +0800 +Subject: [PATCH 2/2] arm64: dts: allwinner: a64: add support for PineTab + +PineTab is a 10.1" tablet by Pine64 with Allwinner A64 inside. + +It includes the following peripherals: + +USB: +- A microUSB Type-B port connected to the OTG-capable USB PHY of +Allwinner A64. The ID pin is connected to a GPIO of the A64 SoC, and the +Vbus is connected to the Vbus of AXP803 PMIC. These enables OTG +functionality on this port. +- A USB Type-A port is connected to the internal hub attached to the +non-OTG USB PHY of Allwinner A64. +- There are reserved pins for an external keyboard connected to the +internal hub. + +Power: +- The microUSB port has its Vbus connected to AXP803, mentioned above. +- A DC jack (of a strange size, 2.5mm outer diameter) is connected to +the ACIN of AXP803. +- A Li-Polymer battery is connected to the battery pins of AXP803. + +Storage: +- An tradition Pine64 eMMC slot is on the board, mounted with an eMMC +module by factory. +- An external microSD slot is hidden under a protect case. + +Display: +- A MIPI-DSI LCD panel (800x1280) is connected to the DSI port of A64 SoC. +- A mini HDMI port. + +Input: +- A touch panel attached to a Goodix GT9271 touch controller. +- Volume keys connected to the LRADC of the A64 SoC. + +Camera: +- An OV5640 CMOS camera is at rear, connected to the CSI bus of A64 SoC. +- A GC2145 CMOS camera is at front, shares the same CSI bus with OV5640. + +Audio: +- A headphone jack is conencted to the SoC's internal codec. +- A speaker connected is to the Line Out port of SoC's internal codec, via +an amplifier. + +Misc: +- Debug UART is muxed with the headphone jack, with the switch next to +the microSD slot. +- A bosch BMA223 accelerometer is connected to the I2C bus of A64 SoC. +- Wi-Fi and Bluetooth are available via a RTL8723CS chip, similar to the +one in Pinebook. + +This commit adds a basically usable device tree for it, implementing +most of the features mentioned above. HDMI is not supported now because +bad LCD-HDMI coexistence situation of mainline A64 display driver, the +front camera currently lacks a driver and a facility to share the bus +with the rear one, and the accelerometer currently lacks a DT binding. + +Signed-off-by: Icenowy Zheng +Signed-off-by: Maxime Ripard +--- + arch/arm64/boot/dts/allwinner/Makefile | 1 + + .../boot/dts/allwinner/sun50i-a64-pinetab.dts | 460 ++++++++++++++++++ + 2 files changed, 461 insertions(+) + create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab.dts + +diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile +index cf4f78617c3f..6dad63881cd3 100644 +--- a/arch/arm64/boot/dts/allwinner/Makefile ++++ b/arch/arm64/boot/dts/allwinner/Makefile +@@ -9,6 +9,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-orangepi-win.dtb + dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pine64-lts.dtb + dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pine64-plus.dtb sun50i-a64-pine64.dtb + dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinebook.dtb ++dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-pinetab.dtb + dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-sopine-baseboard.dtb + dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-teres-i.dtb + dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-bananapi-m2-plus.dtb +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab.dts +new file mode 100644 +index 000000000000..316e8a443913 +--- /dev/null ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinetab.dts +@@ -0,0 +1,460 @@ ++// SPDX-License-Identifier: (GPL-2.0+ OR MIT) ++/* ++ * Copyright (C) 2019 Icenowy Zheng ++ * ++ */ ++ ++/dts-v1/; ++ ++#include "sun50i-a64.dtsi" ++#include "sun50i-a64-cpu-opp.dtsi" ++ ++#include ++#include ++#include ++ ++/ { ++ model = "PineTab"; ++ compatible = "pine64,pinetab", "allwinner,sun50i-a64"; ++ ++ aliases { ++ serial0 = &uart0; ++ ethernet0 = &rtl8723cs; ++ }; ++ ++ backlight: backlight { ++ compatible = "pwm-backlight"; ++ pwms = <&pwm 0 50000 PWM_POLARITY_INVERTED>; ++ brightness-levels = <0 16 18 20 22 24 26 29 32 35 38 42 46 51 56 62 68 75 83 91 100>; ++ default-brightness-level = <15>; ++ enable-gpios = <&pio 3 23 GPIO_ACTIVE_HIGH>; /* PD23 */ ++ power-supply = <&vdd_bl>; ++ }; ++ ++ chosen { ++ stdout-path = "serial0:115200n8"; ++ }; ++ ++ i2c-csi { ++ compatible = "i2c-gpio"; ++ sda-gpios = <&pio 4 13 GPIO_ACTIVE_HIGH>; /* PE13 */ ++ scl-gpios = <&pio 4 12 GPIO_ACTIVE_HIGH>; /* PE12 */ ++ i2c-gpio,delay-us = <5>; ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ /* Rear camera */ ++ ov5640: camera@3c { ++ compatible = "ovti,ov5640"; ++ reg = <0x3c>; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&csi_mclk_pin>; ++ clocks = <&ccu CLK_CSI_MCLK>; ++ clock-names = "xclk"; ++ ++ AVDD-supply = <®_dldo3>; ++ DOVDD-supply = <®_aldo1>; ++ DVDD-supply = <®_eldo3>; ++ reset-gpios = <&pio 4 14 GPIO_ACTIVE_LOW>; /* PE14 */ ++ powerdown-gpios = <&pio 4 15 GPIO_ACTIVE_HIGH>; /* PE15 */ ++ ++ port { ++ ov5640_ep: endpoint { ++ remote-endpoint = <&csi_ep>; ++ bus-width = <8>; ++ hsync-active = <1>; /* Active high */ ++ vsync-active = <0>; /* Active low */ ++ data-active = <1>; /* Active high */ ++ pclk-sample = <1>; /* Rising */ ++ }; ++ }; ++ }; ++ }; ++ ++ speaker_amp: audio-amplifier { ++ compatible = "simple-audio-amplifier"; ++ enable-gpios = <&pio 7 7 GPIO_ACTIVE_HIGH>; /* PH7 */ ++ sound-name-prefix = "Speaker Amp"; ++ }; ++ ++ vdd_bl: regulator@0 { ++ compatible = "regulator-fixed"; ++ regulator-name = "bl-3v3"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ gpio = <&pio 7 6 GPIO_ACTIVE_HIGH>; /* PH6 */ ++ enable-active-high; ++ }; ++ ++ wifi_pwrseq: wifi_pwrseq { ++ compatible = "mmc-pwrseq-simple"; ++ reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */ ++ post-power-on-delay-ms = <200>; ++ }; ++}; ++ ++&codec { ++ status = "okay"; ++}; ++ ++&codec_analog { ++ hpvcc-supply = <®_eldo1>; ++ status = "okay"; ++}; ++ ++&cpu0 { ++ cpu-supply = <®_dcdc2>; ++}; ++ ++&cpu1 { ++ cpu-supply = <®_dcdc2>; ++}; ++ ++&cpu2 { ++ cpu-supply = <®_dcdc2>; ++}; ++ ++&cpu3 { ++ cpu-supply = <®_dcdc2>; ++}; ++ ++&csi { ++ status = "okay"; ++ ++ port { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ csi_ep: endpoint { ++ remote-endpoint = <&ov5640_ep>; ++ bus-width = <8>; ++ hsync-active = <1>; /* Active high */ ++ vsync-active = <0>; /* Active low */ ++ data-active = <1>; /* Active high */ ++ pclk-sample = <1>; /* Rising */ ++ }; ++ }; ++}; ++ ++&dai { ++ status = "okay"; ++}; ++ ++&de { ++ status = "okay"; ++}; ++ ++&dphy { ++ status = "okay"; ++}; ++ ++&dsi { ++ vcc-dsi-supply = <®_dldo1>; ++ status = "okay"; ++ ++ panel@0 { ++ compatible = "feixin,k101-im2ba02"; ++ reg = <0>; ++ avdd-supply = <®_dc1sw>; ++ dvdd-supply = <®_dc1sw>; ++ cvdd-supply = <®_ldo_io1>; ++ reset-gpios = <&pio 3 24 GPIO_ACTIVE_HIGH>; /* PD24 */ ++ backlight = <&backlight>; ++ }; ++}; ++ ++&ehci0 { ++ status = "okay"; ++}; ++ ++&ehci1 { ++ status = "okay"; ++}; ++ ++&i2c0 { ++ status = "okay"; ++ ++ touchscreen@5d { ++ compatible = "goodix,gt9271"; ++ reg = <0x5d>; ++ interrupt-parent = <&pio>; ++ interrupts = <7 4 IRQ_TYPE_LEVEL_HIGH>; /* PH4 */ ++ irq-gpios = <&pio 7 4 GPIO_ACTIVE_HIGH>; /* PH4 */ ++ reset-gpios = <&pio 7 8 GPIO_ACTIVE_HIGH>; /* PH8 */ ++ AVDD28-supply = <®_ldo_io1>; ++ }; ++}; ++ ++&i2c0_pins { ++ bias-pull-up; ++}; ++ ++&i2c1 { ++ status = "okay"; ++ ++ /* TODO: add Bochs BMA223 accelerometer here */ ++}; ++ ++&lradc { ++ vref-supply = <®_aldo3>; ++ status = "okay"; ++ ++ button-200 { ++ label = "Volume Up"; ++ linux,code = ; ++ channel = <0>; ++ voltage = <200000>; ++ }; ++ ++ button-400 { ++ label = "Volume Down"; ++ linux,code = ; ++ channel = <0>; ++ voltage = <400000>; ++ }; ++}; ++ ++&mixer1 { ++ status = "okay"; ++}; ++ ++&mmc0 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&mmc0_pins>; ++ vmmc-supply = <®_dcdc1>; ++ cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; ++ disable-wp; ++ bus-width = <4>; ++ status = "okay"; ++}; ++ ++&mmc1 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&mmc1_pins>; ++ vmmc-supply = <®_dldo4>; ++ vqmmc-supply = <®_eldo1>; ++ mmc-pwrseq = <&wifi_pwrseq>; ++ bus-width = <4>; ++ non-removable; ++ status = "okay"; ++ ++ rtl8723cs: wifi@1 { ++ reg = <1>; ++ }; ++}; ++ ++&mmc2 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&mmc2_pins>; ++ vmmc-supply = <®_dcdc1>; ++ vqmmc-supply = <®_dcdc1>; ++ bus-width = <8>; ++ non-removable; ++ cap-mmc-hw-reset; ++ status = "okay"; ++}; ++ ++&ohci0 { ++ status = "okay"; ++}; ++ ++&pwm { ++ status = "okay"; ++}; ++ ++&r_rsb { ++ status = "okay"; ++ ++ axp803: pmic@3a3 { ++ compatible = "x-powers,axp803"; ++ reg = <0x3a3>; ++ interrupt-parent = <&r_intc>; ++ interrupts = <0 IRQ_TYPE_LEVEL_LOW>; ++ x-powers,drive-vbus-en; ++ }; ++}; ++ ++#include "axp803.dtsi" ++ ++&ac_power_supply { ++ status = "okay"; ++}; ++ ++&battery_power_supply { ++ status = "okay"; ++}; ++ ++®_aldo1 { ++ regulator-min-microvolt = <2800000>; ++ regulator-max-microvolt = <2800000>; ++ regulator-name = "dovdd-csi"; ++}; ++ ++®_aldo2 { ++ regulator-always-on; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-pl"; ++}; ++ ++®_aldo3 { ++ regulator-always-on; ++ regulator-min-microvolt = <2700000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-pll-avcc"; ++}; ++ ++®_dc1sw { ++ regulator-name = "vcc-lcd"; ++}; ++ ++®_dcdc1 { ++ regulator-always-on; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-3v3"; ++}; ++ ++®_dcdc2 { ++ regulator-always-on; ++ regulator-min-microvolt = <1000000>; ++ regulator-max-microvolt = <1300000>; ++ regulator-name = "vdd-cpux"; ++}; ++ ++/* DCDC3 is polyphased with DCDC2 */ ++ ++®_dcdc5 { ++ regulator-always-on; ++ regulator-min-microvolt = <1200000>; ++ regulator-max-microvolt = <1200000>; ++ regulator-name = "vcc-dram"; ++}; ++ ++®_dcdc6 { ++ regulator-always-on; ++ regulator-min-microvolt = <1100000>; ++ regulator-max-microvolt = <1100000>; ++ regulator-name = "vdd-sys"; ++}; ++ ++®_dldo1 { ++ regulator-always-on; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-hdmi-dsi-sensor"; ++}; ++ ++®_dldo3 { ++ regulator-min-microvolt = <2800000>; ++ regulator-max-microvolt = <2800000>; ++ regulator-name = "avdd-csi"; ++}; ++ ++®_dldo4 { ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-wifi"; ++}; ++ ++®_drivevbus { ++ regulator-name = "usb0-vbus"; ++ status = "okay"; ++}; ++ ++®_eldo1 { ++ regulator-always-on; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "cpvdd"; ++}; ++ ++®_eldo2 { ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "vcca-1v8"; ++}; ++ ++®_eldo3 { ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "dvdd-1v8-csi"; ++}; ++ ++®_fldo1 { ++ regulator-min-microvolt = <1200000>; ++ regulator-max-microvolt = <1200000>; ++ regulator-name = "vcc-1v2-hsic"; ++}; ++ ++®_fldo2 { ++ regulator-always-on; ++ regulator-min-microvolt = <1100000>; ++ regulator-max-microvolt = <1100000>; ++ regulator-name = "vdd-cpus"; ++}; ++ ++®_ldo_io0 { ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-usb"; ++ status = "okay"; ++}; ++ ++®_ldo_io1 { ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-enable-ramp-delay = <3500000>; ++ regulator-name = "vcc-touchscreen"; ++ status = "okay"; ++}; ++ ++®_rtc_ldo { ++ regulator-name = "vcc-rtc"; ++}; ++ ++&sound { ++ status = "okay"; ++ simple-audio-card,aux-devs = <&codec_analog>, <&speaker_amp>; ++ simple-audio-card,widgets = "Microphone", "Internal Microphone Left", ++ "Microphone", "Internal Microphone Right", ++ "Headphone", "Headphone Jack", ++ "Speaker", "Internal Speaker"; ++ simple-audio-card,routing = ++ "Left DAC", "AIF1 Slot 0 Left", ++ "Right DAC", "AIF1 Slot 0 Right", ++ "Speaker Amp INL", "LINEOUT", ++ "Speaker Amp INR", "LINEOUT", ++ "Internal Speaker", "Speaker Amp OUTL", ++ "Internal Speaker", "Speaker Amp OUTR", ++ "Headphone Jack", "HP", ++ "AIF1 Slot 0 Left ADC", "Left ADC", ++ "AIF1 Slot 0 Right ADC", "Right ADC", ++ "Internal Microphone Left", "MBIAS", ++ "MIC1", "Internal Microphone Left", ++ "Internal Microphone Right", "HBIAS", ++ "MIC2", "Internal Microphone Right"; ++}; ++ ++&uart0 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart0_pb_pins>; ++ status = "okay"; ++}; ++ ++&usb_otg { ++ dr_mode = "otg"; ++ status = "okay"; ++}; ++ ++&usb_power_supply { ++ status = "okay"; ++}; ++ ++&usbphy { ++ usb0_id_det-gpios = <&pio 7 9 GPIO_ACTIVE_HIGH>; /* PH9 */ ++ usb0_vbus_power-supply = <&usb_power_supply>; ++ usb0_vbus-supply = <®_drivevbus>; ++ usb1_vbus-supply = <®_ldo_io0>; ++ status = "okay"; ++}; +-- +2.24.1 + diff --git a/arm64-pinebook-fixes.patch b/arm64-pinebook-fixes.patch new file mode 100644 index 000000000..410487293 --- /dev/null +++ b/arm64-pinebook-fixes.patch @@ -0,0 +1,429 @@ +From e7a6e6b0c6506a9f070dbfb2ca948770c47a1d78 Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Sun, 19 Jan 2020 10:30:57 -0600 +Subject: [PATCH 1/8] arm64: dts: allwinner: pinebook: Remove unused vcc3v3 + regulator + +This fixed regulator has no consumers, GPIOs, or other connections. +Remove it. + +Signed-off-by: Samuel Holland +Signed-off-by: Maxime Ripard +--- + arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts | 7 ------- + 1 file changed, 7 deletions(-) + +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +index 3d894b208901..ff32ca1a495e 100644 +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +@@ -63,13 +63,6 @@ lid_switch { + }; + }; + +- reg_vcc3v3: vcc3v3 { +- compatible = "regulator-fixed"; +- regulator-name = "vcc3v3"; +- regulator-min-microvolt = <3300000>; +- regulator-max-microvolt = <3300000>; +- }; +- + wifi_pwrseq: wifi_pwrseq { + compatible = "mmc-pwrseq-simple"; + reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */ +-- +2.24.1 + +From 5eea216437eeff908d6d2942bf893fb77ebfc111 Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Sun, 19 Jan 2020 10:30:59 -0600 +Subject: [PATCH 2/8] arm64: dts: allwinner: pinebook: Sort device tree nodes + +The r_i2c node should come before r_rsb, and in any case should not +separate the axp803 node from its subnodes. + +Signed-off-by: Samuel Holland +Signed-off-by: Maxime Ripard +--- + .../boot/dts/allwinner/sun50i-a64-pinebook.dts | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +index ff32ca1a495e..77784f7b1da7 100644 +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +@@ -172,6 +172,14 @@ &pwm { + status = "okay"; + }; + ++/* The ANX6345 eDP-bridge is on r_i2c */ ++&r_i2c { ++ clock-frequency = <100000>; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&r_i2c_pl89_pins>; ++ status = "okay"; ++}; ++ + &r_rsb { + status = "okay"; + +@@ -183,14 +191,6 @@ axp803: pmic@3a3 { + }; + }; + +-/* The ANX6345 eDP-bridge is on r_i2c */ +-&r_i2c { +- clock-frequency = <100000>; +- pinctrl-names = "default"; +- pinctrl-0 = <&r_i2c_pl89_pins>; +- status = "okay"; +-}; +- + #include "axp803.dtsi" + + &ac_power_supply { +-- +2.24.1 + +From 4bdf53ffc64e5c6738c942dcdc422d5ca8a2070a Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Sun, 19 Jan 2020 10:31:00 -0600 +Subject: [PATCH 3/8] arm64: dts: allwinner: pinebook: Make simplefb more + consistent + +Boards generally reference the simplefb nodes from the SoC dtsi by +label, not by full path. simplefb_hdmi is already like this in the +Pinebook DTS. Update simplefb_lcd to match. + +Signed-off-by: Samuel Holland +Signed-off-by: Maxime Ripard +--- + .../arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +index 77784f7b1da7..224bed65d008 100644 +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +@@ -41,12 +41,6 @@ backlight: backlight { + + chosen { + stdout-path = "serial0:115200n8"; +- +- framebuffer-lcd { +- panel-supply = <®_dc1sw>; +- dvdd25-supply = <®_dldo2>; +- dvdd12-supply = <®_fldo1>; +- }; + }; + + gpio_keys { +@@ -316,6 +310,12 @@ ®_rtc_ldo { + regulator-name = "vcc-rtc"; + }; + ++&simplefb_lcd { ++ panel-supply = <®_dc1sw>; ++ dvdd25-supply = <®_dldo2>; ++ dvdd12-supply = <®_fldo1>; ++}; ++ + &simplefb_hdmi { + vcc-hdmi-supply = <®_dldo1>; + }; +-- +2.24.1 + +From c0f416de7141bbc713f080ad123b256f6320ec92 Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Sun, 19 Jan 2020 10:31:01 -0600 +Subject: [PATCH 4/8] arm64: dts: allwinner: pinebook: Document MMC0 CD pin + name + +Normally GPIO pin references are followed by a comment giving the pin +name for searchability. Add the comment here where it was missing. + +Signed-off-by: Samuel Holland +Signed-off-by: Maxime Ripard +--- + arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +index 224bed65d008..a1e15777d524 100644 +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +@@ -119,7 +119,7 @@ &mmc0 { + pinctrl-names = "default"; + pinctrl-0 = <&mmc0_pins>; + vmmc-supply = <®_dcdc1>; +- cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; ++ cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */ + disable-wp; + bus-width = <4>; + status = "okay"; +-- +2.24.1 + +From 8818d55ec31fa6e0dc14fb7a4924b3e8d3ecef7d Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Sun, 19 Jan 2020 10:31:02 -0600 +Subject: [PATCH 5/8] arm64: dts: allwinner: pinebook: Add GPIO port regulators + +Allwinner A64 SoC has separate supplies for PC, PD, PE, PG and PL. + +VCC-PC and VCC-PG are supplied by ELDO1 at 1.8v. +VCC-PD is supplied by DCDC1 (VCC-IO) at 3.3v. +VCC-PE is supplied by ALDO1, and is unused. + +VCC-PL creates a circular dependency, so it is omitted for now. + +Signed-off-by: Samuel Holland +Signed-off-by: Maxime Ripard +--- + .../boot/dts/allwinner/sun50i-a64-pinebook.dts | 17 +++++++++++++++++ + 1 file changed, 17 insertions(+) + +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +index a1e15777d524..1ec39120323f 100644 +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +@@ -162,6 +162,13 @@ &ohci1 { + status = "okay"; + }; + ++&pio { ++ vcc-pc-supply = <®_eldo1>; ++ vcc-pd-supply = <®_dcdc1>; ++ vcc-pe-supply = <®_aldo1>; ++ vcc-pg-supply = <®_eldo1>; ++}; ++ + &pwm { + status = "okay"; + }; +@@ -174,6 +181,16 @@ &r_i2c { + status = "okay"; + }; + ++&r_pio { ++ /* ++ * FIXME: We can't add that supply for now since it would ++ * create a circular dependency between pinctrl, the regulator ++ * and the RSB Bus. ++ * ++ * vcc-pl-supply = <®_aldo2>; ++ */ ++}; ++ + &r_rsb { + status = "okay"; + +-- +2.24.1 + +From bd863f25d41173e140850772f9a02ffb3b3e0d6b Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Sun, 19 Jan 2020 10:31:03 -0600 +Subject: [PATCH 6/8] arm64: dts: allwinner: pinebook: Fix backlight regulator + +The output from the backlight regulator is labeled as "VBKLT" in the +schematic. Using the equation and resistor values from the schematic, +the output is approximately 18V, not 3.3V. Since the regulator in use +(SS6640STR) is a boost regulator powered by PS (battery or AC input), +which are both >3.3V, the output could not be 3.3V anyway. + +Signed-off-by: Samuel Holland +Signed-off-by: Maxime Ripard +--- + .../dts/allwinner/sun50i-a64-pinebook.dts | 20 +++++++++---------- + 1 file changed, 10 insertions(+), 10 deletions(-) + +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +index 1ec39120323f..313f4e6edc19 100644 +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +@@ -21,22 +21,13 @@ aliases { + ethernet0 = &rtl8723cs; + }; + +- vdd_bl: regulator@0 { +- compatible = "regulator-fixed"; +- regulator-name = "bl-3v3"; +- regulator-min-microvolt = <3300000>; +- regulator-max-microvolt = <3300000>; +- gpio = <&pio 7 6 GPIO_ACTIVE_HIGH>; /* PH6 */ +- enable-active-high; +- }; +- + backlight: backlight { + compatible = "pwm-backlight"; + pwms = <&pwm 0 50000 0>; + brightness-levels = <0 5 10 15 20 30 40 55 70 85 100>; + default-brightness-level = <2>; + enable-gpios = <&pio 3 23 GPIO_ACTIVE_HIGH>; /* PD23 */ +- power-supply = <&vdd_bl>; ++ power-supply = <®_vbklt>; + }; + + chosen { +@@ -57,6 +48,15 @@ lid_switch { + }; + }; + ++ reg_vbklt: vbklt { ++ compatible = "regulator-fixed"; ++ regulator-name = "vbklt"; ++ regulator-min-microvolt = <18000000>; ++ regulator-max-microvolt = <18000000>; ++ gpio = <&pio 7 6 GPIO_ACTIVE_HIGH>; /* PH6 */ ++ enable-active-high; ++ }; ++ + wifi_pwrseq: wifi_pwrseq { + compatible = "mmc-pwrseq-simple"; + reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */ +-- +2.24.1 + +From 425472eb612873c9c64b41df70020de58448bef3 Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Sun, 19 Jan 2020 10:31:04 -0600 +Subject: [PATCH 7/8] arm64: dts: allwinner: pinebook: Fix 5v0 boost regulator + +Now that AXP803 GPIO support is available, we can properly model +the hardware. Replace the use of GPIO0-LDO with a fixed regulator +controlled by GPIO0. This boost regulator is used to power the +(internal and external) USB ports, as well as the speakers. + +Signed-off-by: Samuel Holland +Signed-off-by: Maxime Ripard +--- + .../dts/allwinner/sun50i-a64-pinebook.dts | 27 +++++++++---------- + 1 file changed, 12 insertions(+), 15 deletions(-) + +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +index 313f4e6edc19..c06c540e6c08 100644 +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +@@ -57,6 +57,15 @@ reg_vbklt: vbklt { + enable-active-high; + }; + ++ reg_vcc5v0: vcc5v0 { ++ compatible = "regulator-fixed"; ++ regulator-name = "vcc5v0"; ++ regulator-min-microvolt = <5000000>; ++ regulator-max-microvolt = <5000000>; ++ gpio = <&axp_gpio 0 GPIO_ACTIVE_HIGH>; ++ enable-active-high; ++ }; ++ + wifi_pwrseq: wifi_pwrseq { + compatible = "mmc-pwrseq-simple"; + reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */ +@@ -64,12 +73,7 @@ wifi_pwrseq: wifi_pwrseq { + + speaker_amp: audio-amplifier { + compatible = "simple-audio-amplifier"; +- /* +- * TODO This is actually a fixed regulator controlled by +- * the GPIO line on the PMIC. This should be corrected +- * once GPIO support is added for this PMIC. +- */ +- VCC-supply = <®_ldo_io0>; ++ VCC-supply = <®_vcc5v0>; + enable-gpios = <&pio 7 7 GPIO_ACTIVE_HIGH>; /* PH7 */ + sound-name-prefix = "Speaker Amp"; + }; +@@ -316,13 +320,6 @@ ®_fldo2 { + regulator-name = "vdd-cpus"; + }; + +-®_ldo_io0 { +- regulator-min-microvolt = <3300000>; +- regulator-max-microvolt = <3300000>; +- regulator-name = "vcc-usb"; +- status = "okay"; +-}; +- + ®_rtc_ldo { + regulator-name = "vcc-rtc"; + }; +@@ -371,7 +368,7 @@ &usb_otg { + }; + + &usbphy { +- usb0_vbus-supply = <®_ldo_io0>; +- usb1_vbus-supply = <®_ldo_io0>; ++ usb0_vbus-supply = <®_vcc5v0>; ++ usb1_vbus-supply = <®_vcc5v0>; + status = "okay"; + }; +-- +2.24.1 + +From c3aea4ea2117f5dc28da3d4175fc93296653ecd5 Mon Sep 17 00:00:00 2001 +From: Samuel Holland +Date: Sun, 19 Jan 2020 10:30:58 -0600 +Subject: [PATCH 8/8] arm64: dts: allwinner: pinebook: Remove unused AXP803 + regulators + +The Pinebook does not use the CSI bus on the A64. In fact it does not +use GPIO port E for anything at all. Thus the following regulators are +not used and do not need voltages set: + + - ALDO1: Connected to VCC-PE only + - DLDO3: Not connected + - ELDO3: Not connected + +Signed-off-by: Samuel Holland +Signed-off-by: Maxime Ripard +--- + .../boot/dts/allwinner/sun50i-a64-pinebook.dts | 16 +--------------- + 1 file changed, 1 insertion(+), 15 deletions(-) + +diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +index c06c540e6c08..12e513ba8f50 100644 +--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts ++++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinebook.dts +@@ -217,9 +217,7 @@ &battery_power_supply { + }; + + ®_aldo1 { +- regulator-min-microvolt = <2800000>; +- regulator-max-microvolt = <2800000>; +- regulator-name = "vcc-csi"; ++ regulator-name = "vcc-pe"; + }; + + ®_aldo2 { +@@ -282,12 +280,6 @@ ®_dldo2 { + regulator-name = "vcc-edp"; + }; + +-®_dldo3 { +- regulator-min-microvolt = <3300000>; +- regulator-max-microvolt = <3300000>; +- regulator-name = "avdd-csi"; +-}; +- + ®_dldo4 { + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; +@@ -301,12 +293,6 @@ ®_eldo1 { + regulator-name = "cpvdd"; + }; + +-®_eldo3 { +- regulator-min-microvolt = <1800000>; +- regulator-max-microvolt = <1800000>; +- regulator-name = "vdd-1v8-csi"; +-}; +- + ®_fldo1 { + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1200000>; +-- +2.24.1 + diff --git a/kernel.spec b/kernel.spec index 798844b35..25c18a929 100644 --- a/kernel.spec +++ b/kernel.spec @@ -841,6 +841,17 @@ Patch323: arm64-tegra-fix-pcie.patch # Coral Patch330: arm64-dts-imx8mq-phanbell-Add-support-for-ethernet.patch +# Pine64 bits +# 340-344 queued for 5.7 +Patch340: arm64-pinebook-fixes.patch +Patch341: arm64-a64-mbus.patch +# https://patchwork.kernel.org/cover/11405517/ +Patch342: Add-LCD-support-for-Pine64-Pinebook-1080p.patch +# https://lkml.org/lkml/2020/1/15/1320 +Patch343: arm64-pine64-pinetab.patch +# https://www.spinics.net/lists/arm-kernel/msg789135.html +Patch344: arm64-pine64-pinephone.patch + # 400 - IBM (ppc/s390x) patches # 500 - Temp fixes/CVEs etc @@ -2952,6 +2963,9 @@ fi # # %changelog +* Thu Feb 27 2020 Peter Robinson +- Fixes and enhancements to some AllWinner Pine64 devices + * Thu Feb 27 2020 Jeremy Cline - 5.6.0-0.rc3.git2.1 - Linux v5.6-rc3-71-gbfdc6d91a25f