Add basic support for Mediatek MT8183 SoC
cover Add basic support for Mediatek MT8183 SoC
MT8183 is a SoC based on 64bit ARMv8 architecture.
It contains 4 CA53 and 4 CA73 cores.
MT8183 share many HW IP with MT65xx series.
This patchset was tested on MT8183 evaluation board, and boot to shell ok.
This series contains document bindings, device tree including interrupt, uart.
Ben Ho (1):
arm64: dts: Add Mediatek SoC MT8183 and evaluation board dts and
Makefile
Erin Lo (1):
dt-bindings: arm: Add bindings for Mediatek MT8183 SoC Platform
Documentation/devicetree/bindings/arm/mediatek.txt | 4 + .../interrupt-controller/mediatek,sysirq.txt | 1 + .../devicetree/bindings/serial/mtk-uart.txt | 1 + arch/arm64/boot/dts/mediatek/Makefile | 1 + arch/arm64/boot/dts/mediatek/mt8183-evb.dts | 31 ++++ arch/arm64/boot/dts/mediatek/mt8183.dtsi | 178 +++++++++++++++++++++ 6 files changed, 216 insertions(+) create mode 100644 arch/arm64/boot/dts/mediatek/mt8183-evb.dts create mode 100644 arch/arm64/boot/dts/mediatek/mt8183.dtsi
--
1.9.1
PATCH 1/2 dt-bindings: arm: Add bindings for Mediatek MT8183 SoC Platform
This adds dt-binding documentation for Mediatek MT8183. Only include very basic items: cpu, gic and uart.
--- Documentation/devicetree/bindings/arm/mediatek.txt | 4 ++++ .../devicetree/bindings/interrupt-controller/mediatek,sysirq.txt | 1 + Documentation/devicetree/bindings/serial/mtk-uart.txt | 1 + 3 files changed, 6 insertions(+)
Documentation/devicetree/bindings/arm/mediatek.txt +4 -0
@@ -19,6 +19,7 @@ compatible: Must contain one of "mediatek,mt8127" "mediatek,mt8135" "mediatek,mt8173" + "mediatek,mt8183" Supported boards:
@@ -73,3 +74,6 @@ Supported boards: - MTK mt8173 tablet EVB: Required root node properties: - compatible = "mediatek,mt8173-evb", "mediatek,mt8173"; +- Evaluation board for MT8183: + Required root node properties: + - compatible = "mediatek,mt8183-evb", "mediatek,mt8183";
Documentation/devicetree/bindings/interrupt-controller/mediatek,sysirq.txt +1 -0
@@ -5,6 +5,7 @@ interrupt. Required properties: - compatible: should be + "mediatek,mt8183-sysirq", "mediatek,mt6577-sysirq": for MT8183 "mediatek,mt8173-sysirq", "mediatek,mt6577-sysirq": for MT8173 "mediatek,mt8135-sysirq", "mediatek,mt6577-sysirq": for MT8135 "mediatek,mt8127-sysirq", "mediatek,mt6577-sysirq": for MT8127
Documentation/devicetree/bindings/serial/mtk-uart.txt +1 -0
@@ -15,6 +15,7 @@ Required properties: * "mediatek,mt8127-uart" for MT8127 compatible UARTS * "mediatek,mt8135-uart" for MT8135 compatible UARTS * "mediatek,mt8173-uart" for MT8173 compatible UARTS + * "mediatek,mt8183-uart" for MT8183 compatible UARTS * "mediatek,mt6577-uart" for MT6577 and all of the above - reg: The base address of the UART register bank.
Signature · 1 line
1.9.1
Matthias Brugger
maintainerRe: [PATCH 1/2] dt-bindings: arm: Add bindings for Mediatek MT8183 SoC Platform
Quoted 10 lines · Erin Lo
This adds dt-binding documentation for Mediatek MT8183. Only include very basic items: cpu, gic and uart.
Signed-off-by Erin Lo <[email protected]>--- Documentation/devicetree/bindings/arm/mediatek.txt | 4 ++++ .../devicetree/bindings/interrupt-controller/mediatek,sysirq.txt | 1 + Documentation/devicetree/bindings/serial/mtk-uart.txt | 1 + 3 files changed, 6 insertions(+)
This touches different maintainers and the patches should go through their trees, so that no merge conflicts occur.
I'm fine with take it through my tree but it's more work as we might need a stable branch that the other maintainers can merge. Apart I'd need the Acked-by from the maintainers.
I'm fine with either way.
Quoted 36 lines
Documentation/devicetree/bindings/arm/mediatek.txt +4
-0@@ -19,6 +19,7 @@ compatible: Must contain one of "mediatek,mt8127" "mediatek,mt8135" "mediatek,mt8173" + "mediatek,mt8183" Supported boards:@@ -73,3 +74,6 @@ Supported boards: - MTK mt8173 tablet EVB: Required root node properties: - compatible = "mediatek,mt8173-evb", "mediatek,mt8173"; +- Evaluation board for MT8183: + Required root node properties: + - compatible = "mediatek,mt8183-evb", "mediatek,mt8183";Documentation/devicetree/bindings/interrupt-controller/mediatek,sysirq.txt +1
-0@@ -5,6 +5,7 @@ interrupt. Required properties: - compatible: should be + "mediatek,mt8183-sysirq", "mediatek,mt6577-sysirq": for MT8183 "mediatek,mt8173-sysirq", "mediatek,mt6577-sysirq": for MT8173 "mediatek,mt8135-sysirq", "mediatek,mt6577-sysirq": for MT8135 "mediatek,mt8127-sysirq", "mediatek,mt6577-sysirq": for MT8127Documentation/devicetree/bindings/serial/mtk-uart.txt +0
-0
Documentation/devicetree/bindings/serial/mtk-uart.txt Required properties: · line 18
Quoted 4 lines
Documentation/devicetree/bindings/serial/mtk-uart.txt +1
-0@@ -15,6 +15,7 @@ Required properties: * "mediatek,mt8127-uart" for MT8127 compatible UARTS * "mediatek,mt8135-uart" for MT8135 compatible UARTS * "mediatek,mt8173-uart" for MT8173 compatible UARTS + * "mediatek,mt8183-uart" for MT8183 compatible UARTS
If you add this compatible without a fallback that you will need an update in the driver. Is there really anything new in the serial console with regard to older devices?
Regards,
Matthias
Quoted 4 lines
Documentation/devicetree/bindings/serial/mtk-uart.txt +0
-0* "mediatek,mt6577-uart" for MT6577 and all of the above - reg: The base address of the UART register bank.
PATCH 1/2 dt-bindings: arm: Add bindings for Mediatek MT8183 SoC Platform
Quoted 13 lines · Matthias Brugger
Quoted 10 lines · Erin Lo
This adds dt-binding documentation for Mediatek MT8183. Only include very basic items: cpu, gic and uart.
Signed-off-by Erin Lo <[email protected]>--- Documentation/devicetree/bindings/arm/mediatek.txt | 4 ++++ .../devicetree/bindings/interrupt-controller/mediatek,sysirq.txt | 1 + Documentation/devicetree/bindings/serial/mtk-uart.txt | 1 + 3 files changed, 6 insertions(+)
Quoted 8 lines
This touches different maintainers and the patches should go through their trees, so that no merge conflicts occur.
I'm fine with take it through my tree but it's more work as we might need a stable branch that the other maintainers can merge. Apart I'd need the Acked-by from the maintainers.I'm fine with either way.
For prevent merge conflict and review convenient, I will split it into different patches in next round.
Quoted 45 lines
Quoted 36 lines
Documentation/devicetree/bindings/arm/mediatek.txt +4
-0@@ -19,6 +19,7 @@ compatible: Must contain one of "mediatek,mt8127" "mediatek,mt8135" "mediatek,mt8173" + "mediatek,mt8183" Supported boards:@@ -73,3 +74,6 @@ Supported boards: - MTK mt8173 tablet EVB: Required root node properties: - compatible = "mediatek,mt8173-evb", "mediatek,mt8173"; +- Evaluation board for MT8183: + Required root node properties: + - compatible = "mediatek,mt8183-evb", "mediatek,mt8183";Documentation/devicetree/bindings/interrupt-controller/mediatek,sysirq.txt +1
-0@@ -5,6 +5,7 @@ interrupt. Required properties: - compatible: should be + "mediatek,mt8183-sysirq", "mediatek,mt6577-sysirq": for MT8183 "mediatek,mt8173-sysirq", "mediatek,mt6577-sysirq": for MT8173 "mediatek,mt8135-sysirq", "mediatek,mt6577-sysirq": for MT8135 "mediatek,mt8127-sysirq", "mediatek,mt6577-sysirq": for MT8127Documentation/devicetree/bindings/serial/mtk-uart.txt +0
-0Documentation/devicetree/bindings/serial/mtk-uart.txt Required properties: · line 18
Quoted 4 lines
Documentation/devicetree/bindings/serial/mtk-uart.txt +1
-0@@ -15,6 +15,7 @@ Required properties: * "mediatek,mt8127-uart" for MT8127 compatible UARTS * "mediatek,mt8135-uart" for MT8135 compatible UARTS * "mediatek,mt8173-uart" for MT8173 compatible UARTS + * "mediatek,mt8183-uart" for MT8183 compatible UARTSIf you add this compatible without a fallback that you will need an update in the driver. Is there really anything new in the serial console with regard to older devices?
Quoted 3 lines
Regards,
Matthias
No new function in MT8183..now
How about this...
"mediatek,mt8183-uart", "mediatek,mt6577-uart" for MT8183 compatible
UARTS
Regards,
Erin
Quoted 4 lines
Quoted 4 lines
Documentation/devicetree/bindings/serial/mtk-uart.txt +0
-0* "mediatek,mt6577-uart" for MT6577 and all of the above - reg: The base address of the UART register bank.
PATCH 2/2 arm64: dts: Add Mediatek SoC MT8183 and evaluation board dts and Makefile
In reply to Erin LoFrom: Ben Ho <[email protected]>
Add basic chip support for Mediatek 8183
--- arch/arm64/boot/dts/mediatek/Makefile | 1 + arch/arm64/boot/dts/mediatek/mt8183-evb.dts | 31 +++++ arch/arm64/boot/dts/mediatek/mt8183.dtsi | 178 ++++++++++++++++++++++++++++ 3 files changed, 210 insertions(+) create mode 100644 arch/arm64/boot/dts/mediatek/mt8183-evb.dts create mode 100644 arch/arm64/boot/dts/mediatek/mt8183.dtsi
arch/arm64/boot/dts/mediatek/Makefile +1 -0
@@ -5,3 +5,4 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt6795-evb.dtb dtb-$(CONFIG_ARCH_MEDIATEK) += mt6797-evb.dtb dtb-$(CONFIG_ARCH_MEDIATEK) += mt7622-rfb1.dtb dtb-$(CONFIG_ARCH_MEDIATEK) += mt8173-evb.dtb +dtb-$(CONFIG_ARCH_MEDIATEK) += mt8183-evb.dtb
arch/arm64/boot/dts/mediatek/mt8183-evb.dts new file +31 -0
@@ -0,0 +1,31 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright (c) 2017 MediaTek Inc. + * Author: Ben Ho <[email protected]> + * Erin Lo <[email protected]> + */ + +/dts-v1/; +#include "mt8183.dtsi" + +/ { + model = "MediaTek MT8183 evaluation board"; + compatible = "mediatek,mt8183-evb", "mediatek,mt8183"; + + aliases { + serial0 = &uart0; + }; + + memory@40000000 { + device_type = "memory"; + reg = <0 0x40000000 0 0x80000000>; + }; + + chosen { + stdout-path = "serial0:921600n8"; + }; +}; + +&uart0 { + status = "okay"; +};
arch/arm64/boot/dts/mediatek/mt8183.dtsi new file +178 -0
178 lines not on this page · raw message
Signature · 1 line
1.9.1
Matthias Brugger
maintainerRe: [PATCH 2/2] arm64: dts: Add Mediatek SoC MT8183 and evaluation board dts and Makefile
Quoted 235 lines · Erin Lo
From: Ben Ho <[email protected]>
Add basic chip support for Mediatek 8183
Signed-off-by Ben Ho <[email protected]>Signed-off-by Erin Lo <[email protected]>--- arch/arm64/boot/dts/mediatek/Makefile | 1 + arch/arm64/boot/dts/mediatek/mt8183-evb.dts | 31 +++++ arch/arm64/boot/dts/mediatek/mt8183.dtsi | 178 ++++++++++++++++++++++++++++ 3 files changed, 210 insertions(+) create mode 100644 arch/arm64/boot/dts/mediatek/mt8183-evb.dts create mode 100644 arch/arm64/boot/dts/mediatek/mt8183.dtsiarch/arm64/boot/dts/mediatek/Makefile +1
-0@@ -5,3 +5,4 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt6795-evb.dtb dtb-$(CONFIG_ARCH_MEDIATEK) += mt6797-evb.dtb dtb-$(CONFIG_ARCH_MEDIATEK) += mt7622-rfb1.dtb dtb-$(CONFIG_ARCH_MEDIATEK) += mt8173-evb.dtb +dtb-$(CONFIG_ARCH_MEDIATEK) += mt8183-evb.dtbarch/arm64/boot/dts/mediatek/mt8183-evb.dts new file +31
-0@@ -0,0 +1,31 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright (c) 2017 MediaTek Inc. + * Author: Ben Ho <[email protected]> + * Erin Lo <[email protected]> + */ + +/dts-v1/; +#include "mt8183.dtsi" + +/ { + model = "MediaTek MT8183 evaluation board"; + compatible = "mediatek,mt8183-evb", "mediatek,mt8183"; + + aliases { + serial0 = &uart0; + }; + + memory@40000000 { + device_type = "memory"; + reg = <0 0x40000000 0 0x80000000>; + }; + + chosen { + stdout-path = "serial0:921600n8"; + }; +}; + +&uart0 { + status = "okay"; +};arch/arm64/boot/dts/mediatek/mt8183.dtsi new file +168
-0@@ -0,0 +1,178 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright (c) 2017 MediaTek Inc. + * Author: Ben Ho <[email protected]> + * Erin Lo <[email protected]> + */ + +#include <dt-bindings/interrupt-controller/irq.h> +#include <dt-bindings/interrupt-controller/arm-gic.h> + +/ { + compatible = "mediatek,mt8183"; + interrupt-parent = <&sysirq>; + #address-cells = <2>; + #size-cells = <2>; + + cpus { + #address-cells = <1>; + #size-cells = <0>; + + cpu-map { + cluster0 { + core0 { + cpu = <&cpu0>; + }; + core1 { + cpu = <&cpu1>; + }; + core2 { + cpu = <&cpu2>; + }; + core3 { + cpu = <&cpu3>; + }; + }; + + cluster1 { + core0 { + cpu = <&cpu4>; + }; + core1 { + cpu = <&cpu5>; + }; + core2 { + cpu = <&cpu6>; + }; + core3 { + cpu = <&cpu7>; + }; + }; + }; + + cpu0: cpu@000 { + device_type = "cpu"; + compatible = "arm,cortex-a53"; + reg = <0x000>; + enable-method = "psci"; + }; + + cpu1: cpu@001 { + device_type = "cpu"; + compatible = "arm,cortex-a53"; + reg = <0x001>; + enable-method = "psci"; + }; + + cpu2: cpu@002 { + device_type = "cpu"; + compatible = "arm,cortex-a53"; + reg = <0x002>; + enable-method = "psci"; + }; + + cpu3: cpu@003 { + device_type = "cpu"; + compatible = "arm,cortex-a53"; + reg = <0x003>; + enable-method = "psci"; + }; + + cpu4: cpu@100 { + device_type = "cpu"; + compatible = "arm,cortex-a73"; + reg = <0x100>; + enable-method = "psci"; + }; + + cpu5: cpu@101 { + device_type = "cpu"; + compatible = "arm,cortex-a73"; + reg = <0x101>; + enable-method = "psci"; + }; + + cpu6: cpu@102 { + device_type = "cpu"; + compatible = "arm,cortex-a73"; + reg = <0x102>; + enable-method = "psci"; + }; + + cpu7: cpu@103 { + device_type = "cpu"; + compatible = "arm,cortex-a73"; + reg = <0x103>; + enable-method = "psci"; + }; + }; + + psci { + compatible = "arm,psci-1.0"; + method = "smc"; + }; + + uart_clk: dummy26m { + compatible = "fixed-clock"; + clock-frequency = <26000000>; + #clock-cells = <0>; + }; + + timer { + compatible = "arm,armv8-timer"; + interrupt-parent = <&gic>; + interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>, + <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>, + <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>, + <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>; + }; + + gic: interrupt-controller@0c000000 { + compatible = "arm,gic-v3"; + #interrupt-cells = <3>; + interrupt-parent = <&gic>; + interrupt-controller; + reg = <0 0x0c000000 0 0x40000>, // CID + <0 0x0c100000 0 0x200000>; // CIR + interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; + }; + + sysirq: intpol-controller@0c530a80 { + compatible = "mediatek,mt8183-sysirq", + "mediatek,mt6577-sysirq"; + interrupt-controller; + #interrupt-cells = <3>; + interrupt-parent = <&gic>; + reg = <0 0x0c530a80 0 0x50>; + }; + + uart0: serial@11002000 { + compatible = "mediatek,mt8183-uart", + "mediatek,mt6577-uart"; + reg = <0 0x11002000 0 0x1000>; + interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_LOW>; + clocks = <&uart_clk>, <&uart_clk>; + clock-names = "baud", "bus"; + status = "disabled"; + }; + + uart1: serial@11003000 { + compatible = "mediatek,mt8183-uart", + "mediatek,mt6577-uart"; + reg = <0 0x11003000 0 0x1000>; + interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_LOW>; + clocks = <&uart_clk>, <&uart_clk>; + clock-names = "baud", "bus"; + status = "disabled"; + }; +
arch/arm64/boot/dts/mediatek/mt8183.dtsi line 178
Quoted 10 lines
arch/arm64/boot/dts/mediatek/mt8183.dtsi new file +10
-0+ uart2: serial@11004000 { + compatible = "mediatek,mt8183-uart", + "mediatek,mt6577-uart"; + reg = <0 0x11004000 0 0x1000>; + interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_LOW>; + clocks = <&uart_clk>, <&uart_clk>; + clock-names = "baud", "bus"; + status = "disabled"; + }; +};
I wonder if there aren't any other devices which can be supported out of the box. I understand that for now we are missing the clock driver and the pinctrl driver. Are you planning to submit them in the near future?
I'm asking because I don't want to bloat the dts with boards that only can boot to an initramfs with a serial console. Especially if there is no HW + datasheet available for anyone in the community who wants to work on this.
Regards,
Matthias
Regards,
Matthias
PATCH 2/2 arm64: dts: Add Mediatek SoC MT8183 and evaluation board dts and Makefile
Quoted 256 lines · Matthias Brugger
Quoted 235 lines · Erin Lo
From: Ben Ho <[email protected]>
Add basic chip support for Mediatek 8183
Signed-off-by Ben Ho <[email protected]>Signed-off-by Erin Lo <[email protected]>--- arch/arm64/boot/dts/mediatek/Makefile | 1 + arch/arm64/boot/dts/mediatek/mt8183-evb.dts | 31 +++++ arch/arm64/boot/dts/mediatek/mt8183.dtsi | 178 ++++++++++++++++++++++++++++ 3 files changed, 210 insertions(+) create mode 100644 arch/arm64/boot/dts/mediatek/mt8183-evb.dts create mode 100644 arch/arm64/boot/dts/mediatek/mt8183.dtsiarch/arm64/boot/dts/mediatek/Makefile +1
-0@@ -5,3 +5,4 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt6795-evb.dtb dtb-$(CONFIG_ARCH_MEDIATEK) += mt6797-evb.dtb dtb-$(CONFIG_ARCH_MEDIATEK) += mt7622-rfb1.dtb dtb-$(CONFIG_ARCH_MEDIATEK) += mt8173-evb.dtb +dtb-$(CONFIG_ARCH_MEDIATEK) += mt8183-evb.dtbarch/arm64/boot/dts/mediatek/mt8183-evb.dts new file +31
-0@@ -0,0 +1,31 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright (c) 2017 MediaTek Inc. + * Author: Ben Ho <[email protected]> + * Erin Lo <[email protected]> + */ + +/dts-v1/; +#include "mt8183.dtsi" + +/ { + model = "MediaTek MT8183 evaluation board"; + compatible = "mediatek,mt8183-evb", "mediatek,mt8183"; + + aliases { + serial0 = &uart0; + }; + + memory at 40000000 { + device_type = "memory"; + reg = <0 0x40000000 0 0x80000000>; + }; + + chosen { + stdout-path = "serial0:921600n8"; + }; +}; + +&uart0 { + status = "okay"; +};arch/arm64/boot/dts/mediatek/mt8183.dtsi new file +168
-0@@ -0,0 +1,178 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* + * Copyright (c) 2017 MediaTek Inc. + * Author: Ben Ho <[email protected]> + * Erin Lo <[email protected]> + */ + +#include <dt-bindings/interrupt-controller/irq.h> +#include <dt-bindings/interrupt-controller/arm-gic.h> + +/ { + compatible = "mediatek,mt8183"; + interrupt-parent = <&sysirq>; + #address-cells = <2>; + #size-cells = <2>; + + cpus { + #address-cells = <1>; + #size-cells = <0>; + + cpu-map { + cluster0 { + core0 { + cpu = <&cpu0>; + }; + core1 { + cpu = <&cpu1>; + }; + core2 { + cpu = <&cpu2>; + }; + core3 { + cpu = <&cpu3>; + }; + }; + + cluster1 { + core0 { + cpu = <&cpu4>; + }; + core1 { + cpu = <&cpu5>; + }; + core2 { + cpu = <&cpu6>; + }; + core3 { + cpu = <&cpu7>; + }; + }; + }; + + cpu0: cpu at 000 { + device_type = "cpu"; + compatible = "arm,cortex-a53"; + reg = <0x000>; + enable-method = "psci"; + }; + + cpu1: cpu at 001 { + device_type = "cpu"; + compatible = "arm,cortex-a53"; + reg = <0x001>; + enable-method = "psci"; + }; + + cpu2: cpu at 002 { + device_type = "cpu"; + compatible = "arm,cortex-a53"; + reg = <0x002>; + enable-method = "psci"; + }; + + cpu3: cpu at 003 { + device_type = "cpu"; + compatible = "arm,cortex-a53"; + reg = <0x003>; + enable-method = "psci"; + }; + + cpu4: cpu at 100 { + device_type = "cpu"; + compatible = "arm,cortex-a73"; + reg = <0x100>; + enable-method = "psci"; + }; + + cpu5: cpu at 101 { + device_type = "cpu"; + compatible = "arm,cortex-a73"; + reg = <0x101>; + enable-method = "psci"; + }; + + cpu6: cpu at 102 { + device_type = "cpu"; + compatible = "arm,cortex-a73"; + reg = <0x102>; + enable-method = "psci"; + }; + + cpu7: cpu at 103 { + device_type = "cpu"; + compatible = "arm,cortex-a73"; + reg = <0x103>; + enable-method = "psci"; + }; + }; + + psci { + compatible = "arm,psci-1.0"; + method = "smc"; + }; + + uart_clk: dummy26m { + compatible = "fixed-clock"; + clock-frequency = <26000000>; + #clock-cells = <0>; + }; + + timer { + compatible = "arm,armv8-timer"; + interrupt-parent = <&gic>; + interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>, + <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>, + <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>, + <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>; + }; + + gic: interrupt-controller at 0c000000 { + compatible = "arm,gic-v3"; + #interrupt-cells = <3>; + interrupt-parent = <&gic>; + interrupt-controller; + reg = <0 0x0c000000 0 0x40000>, // CID + <0 0x0c100000 0 0x200000>; // CIR + interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; + }; + + sysirq: intpol-controller at 0c530a80 { + compatible = "mediatek,mt8183-sysirq", + "mediatek,mt6577-sysirq"; + interrupt-controller; + #interrupt-cells = <3>; + interrupt-parent = <&gic>; + reg = <0 0x0c530a80 0 0x50>; + }; + + uart0: serial at 11002000 { + compatible = "mediatek,mt8183-uart", + "mediatek,mt6577-uart"; + reg = <0 0x11002000 0 0x1000>; + interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_LOW>; + clocks = <&uart_clk>, <&uart_clk>; + clock-names = "baud", "bus"; + status = "disabled"; + }; + + uart1: serial at 11003000 { + compatible = "mediatek,mt8183-uart", + "mediatek,mt6577-uart"; + reg = <0 0x11003000 0 0x1000>; + interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_LOW>; + clocks = <&uart_clk>, <&uart_clk>; + clock-names = "baud", "bus"; + status = "disabled"; + }; +arch/arm64/boot/dts/mediatek/mt8183.dtsi line 178
Quoted 10 lines
arch/arm64/boot/dts/mediatek/mt8183.dtsi new file +10
-0+ uart2: serial at 11004000 { + compatible = "mediatek,mt8183-uart", + "mediatek,mt6577-uart"; + reg = <0 0x11004000 0 0x1000>; + interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_LOW>; + clocks = <&uart_clk>, <&uart_clk>; + clock-names = "baud", "bus"; + status = "disabled"; + }; +};I wonder if there aren't any other devices which can be supported out of the box. I understand that for now we are missing the clock driver and the pinctrl driver. Are you planning to submit them in the near future?
I'm asking because I don't want to bloat the dts with boards that only can boot to an initramfs with a serial console. Especially if there is no HW + datasheet available for anyone in the community who wants to work on this.
Quoted 5 lines
Regards,
MatthiasRegards,
Matthias
We have implement clock and pinctrl driver these days, and plan to submit them maybe next month.
After that we will submit other drivers of MT8183 continuously.
Regards,
Erin
Matthias Brugger
maintainerPATCH 2/2 arm64: dts: Add Mediatek SoC MT8183 and evaluation board dts and Makefile
Quoted 3 lines · Erin Lo
Quoted 2 lines · Matthias Brugger
On 05/11/2018 08:11 AM, Erin Lo wrote:
[...]
Quoted 12 lines
Quoted 12 lines
I wonder if there aren't any other devices which can be supported out of the box. I understand that for now we are missing the clock driver and the pinctrl driver. Are you planning to submit them in the near future?
I'm asking because I don't want to bloat the dts with boards that only can boot to an initramfs with a serial console. Especially if there is no HW + datasheet available for anyone in the community who wants to work on this.
Regards,
Matthias
Quoted 8 lines
Quoted 2 lines
Regards,
MatthiasWe have implement clock and pinctrl driver these days, and plan to submit them maybe next month.
After that we will submit other drivers of MT8183 continuously.
I'm happy to hear this. So in this case I'm fine with merging these once you figured out the dt-bindings.
Thanks a lot,
Matthias
Matthias Brugger
maintainerHi Erin,
Please include the linux-mediatek and arm-linux-kernel mailinglists in the next round.
Some comments in the patches.
Regards,
Matthias
Quoted 27 lines · Erin Lo
MT8183 is a SoC based on 64bit ARMv8 architecture.
It contains 4 CA53 and 4 CA73 cores.
MT8183 share many HW IP with MT65xx series.
This patchset was tested on MT8183 evaluation board, and boot to shell ok.This series contains document bindings, device tree including interrupt, uart.
Ben Ho (1):
arm64: dts: Add Mediatek SoC MT8183 and evaluation board dts and
MakefileErin Lo (1):
dt-bindings: arm: Add bindings for Mediatek MT8183 SoC PlatformDocumentation/devicetree/bindings/arm/mediatek.txt | 4 + .../interrupt-controller/mediatek,sysirq.txt | 1 + .../devicetree/bindings/serial/mtk-uart.txt | 1 + arch/arm64/boot/dts/mediatek/Makefile | 1 + arch/arm64/boot/dts/mediatek/mt8183-evb.dts | 31 ++++ arch/arm64/boot/dts/mediatek/mt8183.dtsi | 178 +++++++++++++++++++++ 6 files changed, 216 insertions(+) create mode 100644 arch/arm64/boot/dts/mediatek/mt8183-evb.dts create mode 100644 arch/arm64/boot/dts/mediatek/mt8183.dtsi--
1.9.1
Quoted 9 lines · Matthias Brugger
Hi Erin,
Please include the linux-mediatek and arm-linux-kernel mailinglists in the next round.
Some comments in the patches.
Regards,
Matthias
I will add linux-mediatek, linux-arm-kernel, linux-kernel, linux-serial mailinglists in next round.
Thanks for your reminder.
Regards,
Erin
Quoted 29 lines · Erin Lo
Quoted 27 lines
MT8183 is a SoC based on 64bit ARMv8 architecture.
It contains 4 CA53 and 4 CA73 cores.
MT8183 share many HW IP with MT65xx series.
This patchset was tested on MT8183 evaluation board, and boot to shell ok.This series contains document bindings, device tree including interrupt, uart.
Ben Ho (1):
arm64: dts: Add Mediatek SoC MT8183 and evaluation board dts and
MakefileErin Lo (1):
dt-bindings: arm: Add bindings for Mediatek MT8183 SoC PlatformDocumentation/devicetree/bindings/arm/mediatek.txt | 4 + .../interrupt-controller/mediatek,sysirq.txt | 1 + .../devicetree/bindings/serial/mtk-uart.txt | 1 + arch/arm64/boot/dts/mediatek/Makefile | 1 + arch/arm64/boot/dts/mediatek/mt8183-evb.dts | 31 ++++ arch/arm64/boot/dts/mediatek/mt8183.dtsi | 178 +++++++++++++++++++++ 6 files changed, 216 insertions(+) create mode 100644 arch/arm64/boot/dts/mediatek/mt8183-evb.dts create mode 100644 arch/arm64/boot/dts/mediatek/mt8183.dtsi--
1.9.1