Received: by 2002:a25:c205:0:0:0:0:0 with SMTP id s5csp3650000ybf; Tue, 3 Mar 2020 09:47:13 -0800 (PST) X-Google-Smtp-Source: ADFU+vuCBtayXDfDhnCwKkgWtKSWDSomzzPLNnEjGTGSsy67Qd4E+ulKV3EPtxSowv36/8NZQO0m X-Received: by 2002:a05:6830:1459:: with SMTP id w25mr4089103otp.246.1583257632967; Tue, 03 Mar 2020 09:47:12 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1583257632; cv=none; d=google.com; s=arc-20160816; b=Xq3kgvmysjYlFSjeK03kimoOH8WOw23d4Iy10iFIssMuLKpSRmQs0BKmi3+uTcIc1y knEK9Yc7lxJOfMuglhQymVvBICtNMzKhrIkXfe7K1lV+Xp4lsqmeFn9sXKWdKD1jjczD Pb1U6KY0zjXQkwLy21kniZrivRD/V9J6rygJvnK6TqFH9V5kdF/pyqlPtqgMrEYHXu/X +L9TROcTYdEJKgeSaRxCs5B28yh54oR3HKAsgdxIwTQiYZFGdssaphrQWae7Y9iJ23h3 DtO80lhfpx0ZVFmvjLD/jpITeTctuhrxRafZv7azUh+cenPhsJDgbeRWOvZZpeqNukQE JIeg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=u9oInfk28kFCTLGXRwN1FI6lUnLSnPxYFlDiExGIci8=; b=t8bC3k+na1yEvFoH851yvkiNA7lGIg+h/Ob180WUB4KXFmYLekygokg7THFUbgUw0i CApcW4LNOtaX8+OugQaQ+svKL6wZ/V2LjluCzGVusnDvQb9IBqJ5aw8VAj24MA+hdY8y NlCh70X68DqCRcM6pJ2992HHM4VoRd/A3hct3nRXLUQhtY9/tx+rySHk4gapjuSZ1p/y nD93gOq08M5s5eUwyku3BrrfaM/ZtxYjPQ+V2rp4tTIbCze5uk/DNVvXB4SVwDinMPUK Vtbdp9BVcfPDbccYdQm1nFK+K99FnYYb3owhVDpeW29YQV0RWdg/U1Y9ixXGMj/kG5A9 cT5g== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id c189si1445176oig.205.2020.03.03.09.47.01; Tue, 03 Mar 2020 09:47:12 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730390AbgCCRcl (ORCPT + 99 others); Tue, 3 Mar 2020 12:32:41 -0500 Received: from mx2.suse.de ([195.135.220.15]:44474 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730375AbgCCRcl (ORCPT ); Tue, 3 Mar 2020 12:32:41 -0500 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id D0F79B028; Tue, 3 Mar 2020 17:32:38 +0000 (UTC) From: Nicolas Saenz Julienne To: Rob Herring , Mark Rutland , Florian Fainelli , Ray Jui , Scott Branden , bcm-kernel-feedback-list@broadcom.com, Nicolas Saenz Julienne , Stefan Wahren , Eric Anholt Cc: wahrenst@gmx.net, devicetree@vger.kernel.org, linux-rpi-kernel@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH] ARM: dts: bcm283x: Use firmware PM driver for V3D Date: Tue, 3 Mar 2020 18:32:16 +0100 Message-Id: <20200303173217.3987-1-nsaenzjulienne@suse.de> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The register based driver turned out to be unstable, specially on RPi3a+ but not limited to it. While a fix is being worked on, we roll back to using firmware based scheme. Fixes: e1dc2b2e1bef ("ARM: bcm283x: Switch V3D over to using the PM driver instead of firmware") Signed-off-by: Nicolas Saenz Julienne --- See https://github.com/raspberrypi/linux/issues/3046 for more reference. Note: I tested this on RPi3b, RPi3a+ and RPi2b. arch/arm/boot/dts/bcm2835-common.dtsi | 1 - arch/arm/boot/dts/bcm2835-rpi-common.dtsi | 12 ++++++++++++ arch/arm/boot/dts/bcm2835.dtsi | 1 + arch/arm/boot/dts/bcm2836.dtsi | 1 + arch/arm/boot/dts/bcm2837.dtsi | 1 + 5 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 arch/arm/boot/dts/bcm2835-rpi-common.dtsi diff --git a/arch/arm/boot/dts/bcm2835-common.dtsi b/arch/arm/boot/dts/bcm2835-common.dtsi index 2b1d9d4c0cde..4119271c979d 100644 --- a/arch/arm/boot/dts/bcm2835-common.dtsi +++ b/arch/arm/boot/dts/bcm2835-common.dtsi @@ -130,7 +130,6 @@ v3d: v3d@7ec00000 { compatible = "brcm,bcm2835-v3d"; reg = <0x7ec00000 0x1000>; interrupts = <1 10>; - power-domains = <&pm BCM2835_POWER_DOMAIN_GRAFX_V3D>; }; vc4: gpu { diff --git a/arch/arm/boot/dts/bcm2835-rpi-common.dtsi b/arch/arm/boot/dts/bcm2835-rpi-common.dtsi new file mode 100644 index 000000000000..b78a57534611 --- /dev/null +++ b/arch/arm/boot/dts/bcm2835-rpi-common.dtsi @@ -0,0 +1,12 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * This include file covers the common peripherals and configuration between + * bcm2835, bcm2836 and bcm2837 implementations that interact with RPi's + * firmware interface. + */ + +#include + +&v3d { + power-domains = <&power RPI_POWER_DOMAIN_V3D>; +}; diff --git a/arch/arm/boot/dts/bcm2835.dtsi b/arch/arm/boot/dts/bcm2835.dtsi index 53bf4579cc22..0549686134ea 100644 --- a/arch/arm/boot/dts/bcm2835.dtsi +++ b/arch/arm/boot/dts/bcm2835.dtsi @@ -1,6 +1,7 @@ // SPDX-License-Identifier: GPL-2.0 #include "bcm283x.dtsi" #include "bcm2835-common.dtsi" +#include "bcm2835-rpi-common.dtsi" / { compatible = "brcm,bcm2835"; diff --git a/arch/arm/boot/dts/bcm2836.dtsi b/arch/arm/boot/dts/bcm2836.dtsi index 82d6c4662ae4..b390006aef79 100644 --- a/arch/arm/boot/dts/bcm2836.dtsi +++ b/arch/arm/boot/dts/bcm2836.dtsi @@ -1,6 +1,7 @@ // SPDX-License-Identifier: GPL-2.0 #include "bcm283x.dtsi" #include "bcm2835-common.dtsi" +#include "bcm2835-rpi-common.dtsi" / { compatible = "brcm,bcm2836"; diff --git a/arch/arm/boot/dts/bcm2837.dtsi b/arch/arm/boot/dts/bcm2837.dtsi index 9e95fee78e19..0199ec98cd61 100644 --- a/arch/arm/boot/dts/bcm2837.dtsi +++ b/arch/arm/boot/dts/bcm2837.dtsi @@ -1,5 +1,6 @@ #include "bcm283x.dtsi" #include "bcm2835-common.dtsi" +#include "bcm2835-rpi-common.dtsi" / { compatible = "brcm,bcm2837"; -- 2.25.1