Received: by 2002:a05:7412:b995:b0:f9:9502:5bb8 with SMTP id it21csp7024716rdb; Wed, 3 Jan 2024 01:50:28 -0800 (PST) X-Google-Smtp-Source: AGHT+IFE+sksh7Fp1XmEsPGUDahBR/sSdcNrR1Xyk8tMAtgTKmmg3vWSAhcg8x/2tA32ioJxQopQ X-Received: by 2002:ac8:5701:0:b0:428:3c20:c78f with SMTP id 1-20020ac85701000000b004283c20c78fmr23850qtw.59.1704275428476; Wed, 03 Jan 2024 01:50:28 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1704275428; cv=none; d=google.com; s=arc-20160816; b=pFz9z4kKQ+x8cDE/MBCHEUC6t2xlEBvejfEjEINOFxbuIu5Fw2L2sUOTak6QPm+xQ1 hzC6McftDAQ/oVf1WdT7GqHT8CAva+2WHmkHAcVPwOtpy4/nguyVL99cr4Bqh+a3HDPp RvJecBJO+aCii3JWld9hIL4jvPM0lXFtT8cqjz5Vo36N+6squKntL8nuLqACnXXjWF8I JYKpmUjWS+XCsYOOcsHLls7/GOGLLtdQCMSoJNDPG4y7yRp7SVAM8S3vm6TnljPyC3lz SKH2PHMWH4m0ihphJgc4dtAFROtF+otuoHcboPPDgApp/qiGexD0Oy+ilOJ8N43IboZx 8gjQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:in-reply-to:content-language:from :references:cc:to:subject:user-agent:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:date:message-id:dkim-signature; bh=4YCBPD0DHLKARNVTyi3s0vpWpkxftl8rMbgEZLJrm6c=; fh=n5vK2XGNbs+rRn1dyKrH6+6PiXE7Cmu1EnsaFT3cZig=; b=i4OqKzp+rvGH23Yc4WOKRqLDCSKubFOQJpaprTb6i+oz0agADukc1K96C+nDk4vZ2I vApRrreAbGw2hxR3kVg3MJPtHxDwwJ1ySbS3PVLl5cMPhPVI+N28I9sUNAb/dEDBgsj+ flQj59dX//BNRSKpYEyHf/EeEwrtlVe7xZLHn8X3VfvAztVP74NUk43z4dqYhbwpUYZd x361tSsL48BcbLHJyplBXWcCdnymK2+UISF4pjmdBhv+gC8cw7kajyWgpuh9YQSfZC+K DSqKihHyA1R5Y+HGNm+rSCuHZqYn5FhPO2PCZHLy7q/B/f3jdl/aUQcgzqoYwEv1K0xX 0B3g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@collabora.com header.s=mail header.b=MvEj7DVr; spf=pass (google.com: domain of linux-kernel+bounces-15351-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-15351-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=collabora.com Return-Path: Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [2604:1380:45d1:ec00::1]) by mx.google.com with ESMTPS id f18-20020ac87f12000000b004283275eca1si2665165qtk.64.2024.01.03.01.50.28 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 03 Jan 2024 01:50:28 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-15351-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) client-ip=2604:1380:45d1:ec00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@collabora.com header.s=mail header.b=MvEj7DVr; spf=pass (google.com: domain of linux-kernel+bounces-15351-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-15351-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=collabora.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id 1027B1C23231 for ; Wed, 3 Jan 2024 09:50:28 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id D1D6418AF1; Wed, 3 Jan 2024 09:49:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b="MvEj7DVr" X-Original-To: linux-kernel@vger.kernel.org Received: from madrid.collaboradmins.com (madrid.collaboradmins.com [46.235.227.194]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 446A01862F; Wed, 3 Jan 2024 09:49:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1704275360; bh=Ni5rBHAlIMtWk86HY1gN61XLWmUkTFatgPLd6DcQjh4=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=MvEj7DVr1QdjE61VfLIAjrd5GFOxeL9mtEQfW1EUFcJyHR4DIpKtj67ELKDBlPggH oK1XDtD6i7PY00t8f0D+lFrQ/3dlle9uYHXBE0g5pycK+xKbAXDDL3sU3buYTTOWF/ hOpg1knT19+YG1ToGMIkJqPraicB52TzXgVZVvTlgKTzDBTVl9+++fiO+xfJoL9u/3 Rtk571GdIwnHH2x/5PfXzs06qtvPi0ep76JrGYZLJaG6cGJkMixRmCKe9SKfz2scIZ Mt7Wgir5EOcfGlbVivxLzZc1xcII0VvR3TX1r6SJmo4jJuyapSe3UR+nzsEAVY/81e 8V5UoB1Rn74EQ== Received: from [100.113.186.2] (cola.collaboradmins.com [195.201.22.229]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: kholk11) by madrid.collaboradmins.com (Postfix) with ESMTPSA id 0EEF83780629; Wed, 3 Jan 2024 09:49:19 +0000 (UTC) Message-ID: <04dbf010-5e0a-42f9-8a13-d02f97347c23@collabora.com> Date: Wed, 3 Jan 2024 10:49:18 +0100 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 2/2] arm64: dts: mediatek: Add initial MT7988A and BPI-R4 To: =?UTF-8?B?UmFmYcWCIE1pxYJlY2tp?= , Matthias Brugger , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Daniel Golle , Hsin-Yi Wang , =?UTF-8?Q?N=C3=ADcolas_F_=2E_R_=2E_A_=2E_Prado?= , jason-ch chen , Macpaul Lin , =?UTF-8?Q?Bernhard_Rosenkr=C3=A4nzer?= , Sean Wang , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, =?UTF-8?B?UmFmYcWCIE1pxYJlY2tp?= References: <20240102205941.29654-1-zajec5@gmail.com> <20240102205941.29654-2-zajec5@gmail.com> From: AngeloGioacchino Del Regno Content-Language: en-US In-Reply-To: <20240102205941.29654-2-zajec5@gmail.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Il 02/01/24 21:59, Rafał Miłecki ha scritto: > From: Rafał Miłecki > > MT7988A (AKA MediaTek Filogic 880) is a quad-core ARM Cortex-A73 > platform designed for Wi-Fi 7 devices (there is no wireless on SoC > though). The first public MT7988A device is Banana Pi BPI-R4. > > Many SoC parts remain to be added (they need their own bindings or > depend on missing clocks). Those present block however are correct and > having base .dtsi will help testing & working on missing stuff. > > Signed-off-by: Rafał Miłecki > --- > arch/arm64/boot/dts/mediatek/Makefile | 1 + > .../dts/mediatek/mt7988a-bananapi-bpi-r4.dts | 11 ++ > arch/arm64/boot/dts/mediatek/mt7988a.dtsi | 149 ++++++++++++++++++ > 3 files changed, 161 insertions(+) > create mode 100644 arch/arm64/boot/dts/mediatek/mt7988a-bananapi-bpi-r4.dts > create mode 100644 arch/arm64/boot/dts/mediatek/mt7988a.dtsi > > diff --git a/arch/arm64/boot/dts/mediatek/Makefile b/arch/arm64/boot/dts/mediatek/Makefile > index 1e6f91731e92..0a189d5d8006 100644 > --- a/arch/arm64/boot/dts/mediatek/Makefile > +++ b/arch/arm64/boot/dts/mediatek/Makefile > @@ -15,6 +15,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt7986a-bananapi-bpi-r3-nor.dtbo > dtb-$(CONFIG_ARCH_MEDIATEK) += mt7986a-bananapi-bpi-r3-sd.dtbo > dtb-$(CONFIG_ARCH_MEDIATEK) += mt7986a-rfb.dtb > dtb-$(CONFIG_ARCH_MEDIATEK) += mt7986b-rfb.dtb > +dtb-$(CONFIG_ARCH_MEDIATEK) += mt7988a-bananapi-bpi-r4.dtb > dtb-$(CONFIG_ARCH_MEDIATEK) += mt8167-pumpkin.dtb > dtb-$(CONFIG_ARCH_MEDIATEK) += mt8173-elm.dtb > dtb-$(CONFIG_ARCH_MEDIATEK) += mt8173-elm-hana.dtb > diff --git a/arch/arm64/boot/dts/mediatek/mt7988a-bananapi-bpi-r4.dts b/arch/arm64/boot/dts/mediatek/mt7988a-bananapi-bpi-r4.dts > new file mode 100644 > index 000000000000..efc4ad0b08b8 > --- /dev/null > +++ b/arch/arm64/boot/dts/mediatek/mt7988a-bananapi-bpi-r4.dts > @@ -0,0 +1,11 @@ > +// SPDX-License-Identifier: GPL-2.0-only OR MIT > + > +/dts-v1/; > + > +#include "mt7988a.dtsi" > + > +/ { > + compatible = "bananapi,bpi-r4", "mediatek,mt7988a"; > + model = "Banana Pi BPI-R4"; > + chassis-type = "embedded"; > +}; > diff --git a/arch/arm64/boot/dts/mediatek/mt7988a.dtsi b/arch/arm64/boot/dts/mediatek/mt7988a.dtsi > new file mode 100644 > index 000000000000..0f2ae9c7aef7 > --- /dev/null > +++ b/arch/arm64/boot/dts/mediatek/mt7988a.dtsi > @@ -0,0 +1,149 @@ > +// SPDX-License-Identifier: GPL-2.0-only OR MIT > + > +#include > + > +/ { > + compatible = "mediatek,mt7986a"; Why is the compatible describing MT798*6*A instead of MT7988A? Please fix. > + interrupt-parent = <&gic>; > + #address-cells = <2>; > + #size-cells = <2>; > + > + cpus { > + #address-cells = <1>; > + #size-cells = <0>; > + > + cpu@0 { > + compatible = "arm,cortex-a73"; > + reg = <0x0>; > + device_type = "cpu"; > + enable-method = "psci"; > + }; > + > + cpu@1 { > + compatible = "arm,cortex-a73"; > + reg = <0x1>; > + device_type = "cpu"; > + enable-method = "psci"; > + }; > + > + cpu@2 { > + compatible = "arm,cortex-a73"; > + reg = <0x2>; > + device_type = "cpu"; > + enable-method = "psci"; > + }; > + > + cpu@3 { > + compatible = "arm,cortex-a73"; > + reg = <0x3>; > + device_type = "cpu"; > + enable-method = "psci"; > + }; > + }; > + > + oscillator-40m { > + compatible = "fixed-clock"; > + clock-frequency = <40000000>; > + #clock-cells = <0>; > + clock-output-names = "clkxtal"; > + }; > + > + pmu { > + compatible = "arm,cortex-a73-pmu"; > + interrupt-parent = <&gic>; > + interrupts = ; > + }; > + > + psci { > + compatible = "arm,psci-0.2"; > + method = "smc"; > + }; > + > + reserved-memory { > + ranges; > + #address-cells = <2>; > + #size-cells = <2>; > + > + /* 320 KiB reserved for ARM Trusted Firmware (BL31 and BL32) */ > + secmon@43000000 { This is board specific (actually, it is bootloader specific!), so please move it to your board dts(i). > + reg = <0 0x43000000 0 0x50000>; > + no-map; > + }; > + > + }; > + > + soc { > + compatible = "simple-bus"; > + ranges; > + #address-cells = <2>; > + #size-cells = <2>; > + > + gic: interrupt-controller@c000000 { > + compatible = "arm,gic-v3"; > + reg = <0 0x0c000000 0 0x40000>, /* GICD */ > + <0 0x0c080000 0 0x200000>, /* GICR */ > + <0 0x0c400000 0 0x2000>, /* GICC */ > + <0 0x0c410000 0 0x1000>, /* GICH */ > + <0 0x0c420000 0 0x2000>; /* GICV */ > + interrupt-parent = <&gic>; > + interrupts = ; > + interrupt-controller; > + #interrupt-cells = <3>; > + }; > + > + watchdog@1001c000 { > + compatible = "mediatek,mt7988-wdt"; > + reg = <0 0x1001c000 0 0x1000>; > + interrupts = ; > + #reset-cells = <1>; > + }; > + }; > + > + thermal-zones { > + cpu-thermal { > + polling-delay-passive = <1000>; > + polling-delay = <1000>; > + Those thermal zones will not work, as they have no thermal-sensors - as this node is right now, it will produce a probe error and nothing else: please either drop it entirely or add support for the thermal sensors (lvts or auxadc?) and fix this node to use them. > + trips { > + crit { > + temperature = <125000>; > + hysteresis = <2000>; > + type = "critical"; > + }; > + > + hot { > + temperature = <120000>; > + hysteresis = <2000>; > + type = "hot"; > + }; > + > + active-high { > + temperature = <115000>; > + hysteresis = <2000>; > + type = "active"; Active cooling is board specific. Keep only critical/hot trips in the SoC DT. > + }; > + > + active-med { > + temperature = <85000>; > + hysteresis = <2000>; > + type = "active"; > + }; > + > + active-low { > + temperature = <40000>; > + hysteresis = <2000>; > + type = "active"; > + }; > + }; > + }; > + }; > + > + timer { > + compatible = "arm,armv8-timer"; > + interrupt-parent = <&gic>; > + interrupts = , > + , > + , > + ; > + }; > +}; Regards, Angelo