From patchwork Tue Feb 9 12:58:56 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicolas Saenz Julienne X-Patchwork-Id: 12078057 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-12.3 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 79877C433DB for ; Tue, 9 Feb 2021 13:02:17 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (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 F410564DD1 for ; Tue, 9 Feb 2021 13:02:16 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org F410564DD1 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=suse.de Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version: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:In-Reply-To:References:List-Owner; bh=FIG697GqgPuC4Ih53rq8nJz/pRc0C5C5nBD6/98DmeI=; b=wdBiQ1d9ZewUkCo+f0buYCLdTz xhl4wKxFtOLfIz6LBcdMgURlPCwXAhGvMAImZbI47Kl9OcrJyPRWi3mV7qwpy/CRobytnN4Yja/rZ ZQRdze67XO6y9QUEuu6GtyuTGuuphYfLBYBr275ogQ92XxwqZUiP62aF8T+XD60nXBreIlRY55cCx o2meItwc4HaOr3ZcUFfUMh4G1JY0PcekastdZDOAZSuGmMfqEU/CrSHYjdUxp2NCyqkO5FJA0rdWk KZ6h0CBEIz7HLTMjUxwHxBKCw7Ruy8K9HZDYUaSxcYRuJfnIgVYEJSPwSeFJC/1Xds+yeqq8ZH7aN DFqURxgw==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1l9SdH-0004G5-SY; Tue, 09 Feb 2021 13:00:43 +0000 Received: from mx2.suse.de ([195.135.220.15]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1l9SdE-0004Ev-CS; Tue, 09 Feb 2021 13:00:41 +0000 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.221.27]) by mx2.suse.de (Postfix) with ESMTP id 07E60AF9C; Tue, 9 Feb 2021 13:00:39 +0000 (UTC) From: Nicolas Saenz Julienne To: f.fainelli@gmail.com, linux-kernel@vger.kernel.org Subject: [RFC/PATCH v2 00/16] Raspberry PI 4 V3D enablement Date: Tue, 9 Feb 2021 13:58:56 +0100 Message-Id: <20210209125912.3398-1-nsaenzjulienne@suse.de> X-Mailer: git-send-email 2.30.0 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210209_080040_539131_E1B9B805 X-CRM114-Status: GOOD ( 14.99 ) 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: devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, Nicolas Saenz Julienne , mripard@kernel.org, eric@anholt.net, bcm-kernel-feedback-list@broadcom.com, wahrenst@gmx.net, phil@raspberrypi.com, linux-arm-kernel@lists.infradead.org, linux-rpi-kernel@lists.infradead.org Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org This series attempts to enable V3D on BCM2711, the SoC available on the Raspberry Pi 4 family of boards. Due to the lack of documentation some things are taken as it from testing/downstream implementation[1], which I'm hilighting here: - It's not clear that the following is 100% true, maybe someone can confirm: "In BCM2711 the new ARGON ASB took over V3D. The old ASB is still present with the ISP and H264 bits, and V3D is in the same place in the new ASB as the old one." - Patch #10 I took as is from the downstream implementation, I can't really provide an exact explanation on what changed HW wise. Ultimately, I need confirmation from the Broadcom folks that they are alright with patch #12 (deleting pm ops in V3D). With all this, I get a more or less stable experience using mesa 20.3.4 and X11/Gnome. Regards, Nicolas --- Changes since v1: - Use 'reg-names' - Correct ASB names - Add missing binding patch for V3D - Address Stefan's comments Nicolas Saenz Julienne (16): dt-bindings: soc: bcm: bcm2835-pm: Convert bindings to DT schema dt-bindings: soc: bcm: bcm2835-pm: Introduce reg-names dt-bindings: soc: bcm: bcm2835-pm: Add support for bcm2711 ARM: dts: bcm2835/bcm2711: Introduce reg-names in watchdog node ARM: dts: bcm2711: Use proper compatible in PM/Watchdog node mfd: bcm2835-pm: Rename asb to rpivid_asb mfd: bcm2835-pm: Use 'reg-names' to get resources mfd: bcm2835-pm: Add support for BCM2711 soc: bcm: bcm2835-power: Add support for BCM2711's Argon ASB soc: bcm: bcm2835-power: Bypass power_on/off() calls dt-bindings: gpu: v3d: Add BCM2711's compatible drm/v3d: Get rid of pm code drm/v3d: Add support for bcm2711 ARM: dts: bcm2711: Enable V3D ARM: configs: Enable DRM_V3D arm64: config: Enable DRM_V3D .../devicetree/bindings/gpu/brcm,bcm-v3d.yaml | 1 + .../bindings/soc/bcm/brcm,bcm2835-pm.txt | 46 ---------- .../bindings/soc/bcm/brcm,bcm2835-pm.yaml | 88 +++++++++++++++++++ arch/arm/boot/dts/bcm2711.dtsi | 15 +++- arch/arm/boot/dts/bcm2835-common.dtsi | 1 + arch/arm/configs/multi_v7_defconfig | 1 + arch/arm64/configs/defconfig | 1 + drivers/gpu/drm/v3d/Kconfig | 2 +- drivers/gpu/drm/v3d/v3d_debugfs.c | 18 +--- drivers/gpu/drm/v3d/v3d_drv.c | 12 +-- drivers/gpu/drm/v3d/v3d_gem.c | 9 -- drivers/mfd/bcm2835-pm.c | 83 ++++++++++++----- drivers/soc/bcm/bcm2835-power.c | 82 +++++++++++------ include/linux/mfd/bcm2835-pm.h | 3 +- 14 files changed, 225 insertions(+), 137 deletions(-) delete mode 100644 Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.txt create mode 100644 Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.yaml