[PATCH 2/2] arm64: dts: mediatek: Add initial MT7981B and Xiaomi AX3000T

AngeloGioacchino Del Regno angelogioacchino.delregno at collabora.com
Wed Jan 10 08:22:21 PST 2024


Il 10/01/24 16:41, Rafał Miłecki ha scritto:
> On 10.01.2024 14:38, AngeloGioacchino Del Regno wrote:
>> Il 10/01/24 10:51, Rafał Miłecki ha scritto:
>>> From: Rafał Miłecki <rafal at milecki.pl>
>>>
>>> MT7981B (AKA MediaTek Filogic 820) is a dual-core ARM Cortex-A53 SoC.
>>> One of market devices using this SoC is Xiaomi AX3000T.
>>>
>>> This is initial contribution with basic SoC support. More hardware block
>>> will get added later. Some will need their bindings (like auxadc).
>>>
>>> Signed-off-by: Rafał Miłecki <rafal at milecki.pl>
>>> ---
>>>   arch/arm64/boot/dts/mediatek/Makefile         |   1 +
>>>   .../dts/mediatek/mt7981b-xiaomi-ax3000t.dts   |  15 +++
>>>   arch/arm64/boot/dts/mediatek/mt7981b.dtsi     | 108 ++++++++++++++++++
>>>   3 files changed, 124 insertions(+)
>>>   create mode 100644 arch/arm64/boot/dts/mediatek/mt7981b-xiaomi-ax3000t.dts
>>>   create mode 100644 arch/arm64/boot/dts/mediatek/mt7981b.dtsi
>>>
>>> diff --git a/arch/arm64/boot/dts/mediatek/Makefile 
>>> b/arch/arm64/boot/dts/mediatek/Makefile
>>> index 0a189d5d8006..8bff11acfe1f 100644
>>> --- a/arch/arm64/boot/dts/mediatek/Makefile
>>> +++ b/arch/arm64/boot/dts/mediatek/Makefile
>>> @@ -8,6 +8,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt6797-evb.dtb
>>>   dtb-$(CONFIG_ARCH_MEDIATEK) += mt6797-x20-dev.dtb
>>>   dtb-$(CONFIG_ARCH_MEDIATEK) += mt7622-rfb1.dtb
>>>   dtb-$(CONFIG_ARCH_MEDIATEK) += mt7622-bananapi-bpi-r64.dtb
>>> +dtb-$(CONFIG_ARCH_MEDIATEK) += mt7981b-xiaomi-ax3000t.dtb
>>>   dtb-$(CONFIG_ARCH_MEDIATEK) += mt7986a-bananapi-bpi-r3.dtb
>>>   dtb-$(CONFIG_ARCH_MEDIATEK) += mt7986a-bananapi-bpi-r3-emmc.dtbo
>>>   dtb-$(CONFIG_ARCH_MEDIATEK) += mt7986a-bananapi-bpi-r3-nand.dtbo
>>> diff --git a/arch/arm64/boot/dts/mediatek/mt7981b-xiaomi-ax3000t.dts 
>>> b/arch/arm64/boot/dts/mediatek/mt7981b-xiaomi-ax3000t.dts
>>> new file mode 100644
>>> index 000000000000..a314c3e05e50
>>> --- /dev/null
>>> +++ b/arch/arm64/boot/dts/mediatek/mt7981b-xiaomi-ax3000t.dts
>>> @@ -0,0 +1,15 @@
>>> +// SPDX-License-Identifier: GPL-2.0-only OR MIT
>>> +
>>> +/dts-v1/;
>>> +
>>> +#include "mt7981b.dtsi"
>>> +
>>> +/ {
>>> +    compatible = "xiaomi,ax3000t", "mediatek,mt7981b";
>>> +    model = "Xiaomi AX3000T";
>>> +
>>> +    memory at 40000000 {
>>> +        reg = <0 0x40000000 0 0x10000000>;
>>> +        device_type = "memory";
>>> +    };
>>> +};
>>> diff --git a/arch/arm64/boot/dts/mediatek/mt7981b.dtsi 
>>> b/arch/arm64/boot/dts/mediatek/mt7981b.dtsi
>>> new file mode 100644
>>> index 000000000000..ce878ad55204
>>> --- /dev/null
>>> +++ b/arch/arm64/boot/dts/mediatek/mt7981b.dtsi
>>> @@ -0,0 +1,108 @@
>>> +// SPDX-License-Identifier: GPL-2.0-only OR MIT
>>> +
>>> +#include <dt-bindings/clock/mediatek,mt7981-clk.h>
>>> +#include <dt-bindings/interrupt-controller/arm-gic.h>
>>> +
>>> +/ {
>>> +    compatible = "mediatek,mt7981b";
>>> +    interrupt-parent = <&gic>;
>>> +    #address-cells = <2>;
>>> +    #size-cells = <2>;
>>> +
>>> +    cpus {
>>> +        #address-cells = <1>;
>>> +        #size-cells = <0>;
>>> +
>>> +        cpu at 0 {
>>> +            compatible = "arm,cortex-a53";
>>> +            reg = <0x0>;
>>> +            device_type = "cpu";
>>> +            enable-method = "psci";
>>> +        };
>>> +
>>> +        cpu at 1 {
>>> +            compatible = "arm,cortex-a53";
>>> +            reg = <0x1>;
>>> +            device_type = "cpu";
>>> +            enable-method = "psci";
>>> +        };
>>> +    };
>>> +
>>> +    oscillator-40m {
>>> +        compatible = "fixed-clock";
>>> +        clock-frequency = <40000000>;
>>> +        clock-output-names = "clkxtal";
>>> +        #clock-cells = <0>;
>>> +    };
>>> +
>>> +    psci {
>>> +        compatible = "arm,psci-0.2";
>>
>> PSCI 0.2? I invite you to check a kernel log for a string like this one:
>>
>> `PSCIv%d.%d detected in firmware`
>> ...because of course if it says v1.0, this should be "arm,psci-1.0".
>>
>> This is just a nitpick anyway, so you can already get my
>>
>> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno at collabora.com>
>>
>> P.S.: but please, confirm or deny that PSCI thing ASAP :-)
>> P.P.S.: For next time - I'd be happy if you could add a cover letter to your
>> patch series..!
> 
> You were right, good catch!
> 
> [    0.000000] psci: probing for conduit method from DT.
> [    0.000000] psci: PSCIv1.1 detected in firmware.
> [    0.000000] psci: Using standard PSCI v0.2 function IDs
> [    0.000000] psci: MIGRATE_INFO_TYPE not supported.
> [    0.000000] psci: SMC Calling Convention v1.0
> 
> I'll fix that in V2. Thanks!
> 

Cool! You're welcome!

For v1.1 it's still "arm,psci-1.0" btw :-)
You can keep my R-b tag with that compatible change, no need to drop it.

Cheers,
Angelo




More information about the linux-arm-kernel mailing list