Re: [PATCH v3 2/2] arm64: dts: mediatek: add device-tree for Genio 700 EVK board

From: AngeloGioacchino Del Regno
Date: Thu Sep 14 2023 - 06:03:04 EST


Il 14/09/23 08:18, Macpaul Lin ha scritto:
Add basic device-tree for the Genio 700 EVK board. The
Genio 700 EVK is based on MediaTek MT8390 SoC.
MT8390 hardware register maps are identical to MT8188.

The Genio 700 EVK has following features:

- MT8390 SoC
- MT6365 PMIC
- MT6319 Buck IC
- 12V DC Jack
- 2x4GB LPDDR4X
- 64GB eMMC 5.1
- 64Mb SPI NOR
- M.2 Key A-E slot with PCIe Gen2 and USB 2.0
- 2x DSI LCM ports
- 2x touch sensor ports
- 2x MIPI-CSI, as camera daughter board slots
- USB 2 micro USB connector
- USB 3 with 1 to 2 hub:
- M.2 Key B slot
- Type-C connector, with DisplayPort over Type-C
- HDMI 2.0 TX port with Type A HDMI connector
- eDP port
- Gigabit Ethernet with RJ45 connector
- SD card slot
- Earphone Jack
- Analog Microphone
- 2x Digital Microphone
- 3x UART with serial-to-usb converters and micro USB connectors

Signed-off-by: Chris-QJ Chen <chris-qj.chen@xxxxxxxxxxxx>
Signed-off-by: Pablo Sun <pablo.sun@xxxxxxxxxxxx>
Signed-off-by: Macpaul Lin <macpaul.lin@xxxxxxxxxxxx>
---
arch/arm64/boot/dts/mediatek/Makefile | 1 +
.../dts/mediatek/mt8390-genio-700-evk.dts | 880 ++++++++++++++++++
2 files changed, 881 insertions(+)
create mode 100644 arch/arm64/boot/dts/mediatek/mt8390-genio-700-evk.dts

dependencies for v1:
- This patch should be applied after the following patch set
- mt8365-gneio-350-evk's dts change (v4)
- https://lore.kernel.org/linux-arm-kernel/20230912092444.31635-1-macpaul.lin@xxxxxxxxxxxx/T/
- mt8395-genio-1200-evk's dts basic support (v6)
- https://lore.kernel.org/lkml/20230911115717.26184-1-macpaul.lin@xxxxxxxxxxxx/T/
- mt8188 platform's basic support
- https://lore.kernel.org/lkml/a4e1a80ebd19896410f50b0297e05dce06fb47cc.camel@xxxxxxxxxxxx/T/

changes for v2:
- Fix gpio defines '0' to 'GPIO_ACTIVE_HIGH'.
- Drop duplicate name: 'default' for I2C4.
- Update dependencies
- mt8365-gneio-350-evk's dts change (v5)
- https://lore.kernel.org/lkml/20230913032226.4092-1-macpaul.lin@xxxxxxxxxxxx/
- mt8395-genio-1200-evk's dts basic support (v7)
- https://lore.kernel.org/linux-arm-kernel/20230913032057.3197-1-macpaul.lin@xxxxxxxxxxxx/T/
- mt8188 platform's basic support (v4)
- https://lore.kernel.org/lkml/a4e1a80ebd19896410f50b0297e05dce06fb47cc.camel@xxxxxxxxxxxx/T/

changes for v3:
- No change.
- Update dependencies
- mt8365-gneio-350-evk's dts change (v5)
- https://lore.kernel.org/lkml/20230913032226.4092-1-macpaul.lin@xxxxxxxxxxxx/
- mt8395-genio-1200-evk's dts basic support (v8)
- https://lore.kernel.org/lkml/20230914055145.16801-1-macpaul.lin@xxxxxxxxxxxx/T/
- mt8188 platform's basic support (v4)
- https://lore.kernel.org/lkml/a4e1a80ebd19896410f50b0297e05dce06fb47cc.camel@xxxxxxxxxxxx/T/

diff --git a/arch/arm64/boot/dts/mediatek/Makefile b/arch/arm64/boot/dts/mediatek/Makefile
index 22f362bbbdac..3262849c0f6b 100644
--- a/arch/arm64/boot/dts/mediatek/Makefile
+++ b/arch/arm64/boot/dts/mediatek/Makefile
@@ -54,5 +54,6 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt8195-cherry-tomato-r3.dtb
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8195-demo.dtb
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8195-evb.dtb
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8365-genio-350-evk.dtb
+dtb-$(CONFIG_ARCH_MEDIATEK) += mt8390-genio-700-evk.dtb
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8395-genio-1200-evk.dtb
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8516-pumpkin.dtb
diff --git a/arch/arm64/boot/dts/mediatek/mt8390-genio-700-evk.dts b/arch/arm64/boot/dts/mediatek/mt8390-genio-700-evk.dts
new file mode 100644
index 000000000000..ed6bbf0c15cc
--- /dev/null
+++ b/arch/arm64/boot/dts/mediatek/mt8390-genio-700-evk.dts
@@ -0,0 +1,880 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright (C) 2023 MediaTek Inc.
+ * Author: Chris Chen <chris-qj.chen@xxxxxxxxxxxx>
+ * Pablo Sun <pablo.sun@xxxxxxxxxxxx>
+ * Macpaul Lin <macpaul.lin@xxxxxxxxxxxx>
+ */
+/dts-v1/;
+
+#include "mt8188.dtsi"
+#include "mt6359.dtsi"
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/pinctrl/mediatek,mt8188-pinfunc.h>
+#include <dt-bindings/regulator/mediatek,mt6360-regulator.h>
+#include <dt-bindings/spmi/spmi.h>
+#include <dt-bindings/usb/pd.h>
+
+/ {
+ model = "MediaTek Genio-700 EVK";
+ compatible = "mediatek,mt8390-evk", "mediatek,mt8390",
+ "mediatek,mt8188";
+

..snip..

+
+&i2c0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c0_pins>;
+ clock-frequency = <400000>;
+ status = "okay";
+
+ touchscreen@5d {
+ compatible = "goodix,gt9271";
+ reg = <0x5d>;
+ interrupt-parent = <&pio>;
+ interrupts = <6 IRQ_TYPE_EDGE_RISING>;

interrupts-extended = <&pio 7 IRQ_TYPE_EDGE_RISING>;

after which:

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@xxxxxxxxxxxxx>