Skip to content

Commit 17102e7

Browse files
committed
Merge tag 'mtk-dts64-for-v6.20' of https://git.kernel.org/pub/scm/linux/kernel/git/mediatek/linux into soc/dt
MediaTek ARM64 Device Tree updates This adds support for new boards and variants based on different already supported MediaTek SoCs, and improves support for current boards. In particular: - New machines: - Ezurio Tungsten 510 (MediaTek Genio 510 SoC) - Ezurio Tungsten 700 (MediaTek Genio 700 SoC) ...improvements for already supported SoCs and machines: - MT7981b gains support for PCI-Express, USB, Ethernet and for the "GED" WiFi HW offload - OpenWRT One board gains support for the same - MT8188/8195/8390/8395 gains support for the DPI1 interface and HDMI output from the SoC's HDMI Tx controller along with its HDMI PHY and DDC IPs, usable on a selection of boards that expose a HDMI connector, namely: - All MT8390 Genio EVK based boards - All MT8395 Genio EVK based boards - Radxa NIO-12L (MT8395) ...and dtbs_check warning fixes for many of the MTK devicetrees, including MT6795, MT7981, MT7986, MT7988, MT8173, MT8183, MT8186, MT8188, MT8192, and a dts coding style fix for Airoha EN7581-EVB. This also includes a fix for the new devicetree overlay warnings, adding dtbs with applied overlays for all of the devices having at least one overlay. * tag 'mtk-dts64-for-v6.20' of https://git.kernel.org/pub/scm/linux/kernel/git/mediatek/linux: (47 commits) arm64: dts: mediatek: mt8192: Rename mt8192-afe-pcm to audio-controller dt-bindings: arm: mediatek: audsys: Support mt8192-audsys variant arm64: dts: mediatek: mt7988a: Fix PCI-Express T-PHY node address arm64: dts: mediatek: mt8186-evb: Add vproc fixed regulator arm64: dts: mediatek: mt7981b-openwrt-one: Add address/size cells to eth arm64: dts: mediatek: mt8183-kukui: Clean up IT6505 regulator supply arm64: dts: mediatek: mt7986a: Change compatible for SafeXcel crypto arm64: dts: mediatek: mt8173-evb: Add interrupts to DA9211 regulator arm64: dts: mediatek: mt6795-xperia-m5: Rename PMIC leds node arm64: dts: mediatek: mt6795: Fix issues in SCPSYS node arm64: dts: mediatek: mt6331: Fix VCAM IO regulator name arm64: dts: mediatek: mt6795-xperia-m5: Add UHS pins for MMC1 and 2 arm64: dts: mediatek: mt8192-asurada: Remove unused clock-stretch-ns arm64: dts: mediatek: mt8173-elm: Remove regulators from thermal node arm64: dts: mediatek: mt8173-elm: Fix dsi0 ports warning arm64: dts: mediatek: mt8173-elm: Fix bluetooth node name and reorder arm64: dts: mediatek: mt8183-pumpkin: Fix pinmux node names arm64: dts: mediatek: mt8183-jacuzzi-pico6: Fix typo in pinmux node arm64: dts: mediatek: mt7981b-openwrt-one: Remove useless cells from flash@0 arm64: dts: mediatek: mt8183-evb: Fix dtbs_check warnings ... Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2 parents 16ea3c9 + 25556c1 commit 17102e7

33 files changed

Lines changed: 2818 additions & 233 deletions

Documentation/devicetree/bindings/arm/mediatek.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -438,12 +438,14 @@ properties:
438438
- const: mediatek,mt8365
439439
- items:
440440
- enum:
441+
- ezurio,mt8370-tungsten-smarc
441442
- grinn,genio-510-sbc
442443
- mediatek,mt8370-evk
443444
- const: mediatek,mt8370
444445
- const: mediatek,mt8188
445446
- items:
446447
- enum:
448+
- ezurio,mt8390-tungsten-smarc
447449
- grinn,genio-700-sbc
448450
- mediatek,mt8390-evk
449451
- const: mediatek,mt8390

Documentation/devicetree/bindings/arm/mediatek/mediatek,audsys.yaml

Lines changed: 33 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -48,19 +48,39 @@ required:
4848
- compatible
4949
- '#clock-cells'
5050

51-
if:
52-
properties:
53-
compatible:
54-
contains:
55-
const: mediatek,mt8183-audiosys
56-
then:
57-
properties:
58-
audio-controller:
59-
$ref: /schemas/sound/mediatek,mt8183-audio.yaml#
60-
else:
61-
properties:
62-
audio-controller:
63-
$ref: /schemas/sound/mediatek,mt2701-audio.yaml#
51+
allOf:
52+
- if:
53+
properties:
54+
compatible:
55+
contains:
56+
enum:
57+
- mediatek,mt2701-audsys
58+
- mediatek,mt7622-audsys
59+
then:
60+
properties:
61+
audio-controller:
62+
$ref: /schemas/sound/mediatek,mt2701-audio.yaml#
63+
64+
- if:
65+
properties:
66+
compatible:
67+
contains:
68+
const: mediatek,mt8183-audiosys
69+
then:
70+
properties:
71+
audio-controller:
72+
$ref: /schemas/sound/mediatek,mt8183-audio.yaml#
73+
74+
- if:
75+
properties:
76+
compatible:
77+
contains:
78+
const: mediatek,mt8192-audsys
79+
then:
80+
properties:
81+
audio-controller:
82+
$ref: /schemas/sound/mt8192-afe-pcm.yaml#
83+
6484

6585
additionalProperties: false
6686

Documentation/devicetree/bindings/vendor-prefixes.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -557,6 +557,8 @@ patternProperties:
557557
description: Exegin Technologies Limited
558558
"^ezchip,.*":
559559
description: EZchip Semiconductor
560+
"^ezurio,.*":
561+
description: Ezurio LLC
560562
"^facebook,.*":
561563
description: Facebook
562564
"^fairchild,.*":

arch/arm64/boot/dts/airoha/en7581-evb.dts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,17 +47,17 @@
4747
reg = <0x00600000 0x03200000>;
4848
};
4949

50-
tclinux_slave@3800000 {
50+
tclinux-slave@3800000 {
5151
label = "tclinux_alt";
5252
reg = <0x03800000 0x03200000>;
5353
};
5454

55-
rootfs_data@6a00000 {
55+
rootfs-data@6a00000 {
5656
label = "rootfs_data";
5757
reg = <0x06a00000 0x01400000>;
5858
};
5959

60-
reserved_bmt@7e00000 {
60+
reserved-bmt@7e00000 {
6161
label = "reserved_bmt";
6262
reg = <0x07e00000 0x00200000>;
6363
read-only;

arch/arm64/boot/dts/mediatek/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,10 +159,12 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt8195-evb.dtb
159159
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8365-evk.dtb
160160
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8370-genio-510-evk.dtb
161161
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8370-grinn-genio-510-sbc.dtb
162+
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8370-tungsten-smarc.dtb
162163
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8395-genio-1200-evk.dtb
163164
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8395-genio-1200-evk-ufs.dtb
164165
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8390-genio-700-evk.dtb
165166
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8390-grinn-genio-700-sbc.dtb
167+
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8390-tungsten-smarc.dtb
166168
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8395-kontron-3-5-sbc-i1200.dtb
167169
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8395-radxa-nio-12l.dtb
168170
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8395-radxa-nio-12l-8-hd-panel.dtbo

arch/arm64/boot/dts/mediatek/mt6331.dtsi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,7 @@
217217
};
218218

219219
mt6331_vcamio_reg: ldo-vcamio {
220-
regulator-name = "vcam_io";
220+
regulator-name = "vcamio";
221221
regulator-min-microvolt = <1200000>;
222222
regulator-max-microvolt = <1800000>;
223223
regulator-ramp-delay = <0>;

arch/arm64/boot/dts/mediatek/mt6795-sony-xperia-m5.dts

Lines changed: 47 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -227,17 +227,19 @@
227227

228228
&mmc1 {
229229
/* MicroSD card slot */
230-
pinctrl-names = "default";
230+
pinctrl-names = "default", "state_uhs";
231231
pinctrl-0 = <&mmc1_pins_default>;
232+
pinctrl-1 = <&mmc1_pins_uhs>;
232233
vmmc-supply = <&mt6331_vmc_reg>;
233234
vqmmc-supply = <&mt6331_vmch_reg>;
234235
status = "okay";
235236
};
236237

237238
&mmc2 {
238239
/* SDIO WiFi on MMC2 */
239-
pinctrl-names = "default";
240+
pinctrl-names = "default", "state_uhs";
240241
pinctrl-0 = <&mmc2_pins_default>;
242+
pinctrl-1 = <&mmc2_pins_uhs>;
241243
vmmc-supply = <&mt6331_vmc_reg>;
242244
vqmmc-supply = <&mt6331_vmch_reg>;
243245
status = "okay";
@@ -324,11 +326,32 @@
324326
<PINMUX_GPIO170__FUNC_MSDC1_CMD>;
325327
input-enable;
326328
bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
329+
drive-strength = <4>;
327330
};
328331

329332
pins-clk {
330333
pinmux = <PINMUX_GPIO175__FUNC_MSDC1_CLK>;
331334
bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
335+
drive-strength = <4>;
336+
};
337+
};
338+
339+
mmc1_pins_uhs: microsd-uhs-pins {
340+
pins-cmd-dat {
341+
pinmux = <PINMUX_GPIO171__FUNC_MSDC1_DAT0>,
342+
<PINMUX_GPIO172__FUNC_MSDC1_DAT1>,
343+
<PINMUX_GPIO173__FUNC_MSDC1_DAT2>,
344+
<PINMUX_GPIO174__FUNC_MSDC1_DAT3>,
345+
<PINMUX_GPIO170__FUNC_MSDC1_CMD>;
346+
input-enable;
347+
bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
348+
drive-strength = <6>;
349+
};
350+
351+
pins-clk {
352+
pinmux = <PINMUX_GPIO175__FUNC_MSDC1_CLK>;
353+
bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
354+
drive-strength = <8>;
332355
};
333356
};
334357

@@ -341,11 +364,32 @@
341364
<PINMUX_GPIO105__FUNC_MSDC2_CMD>;
342365
input-enable;
343366
bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
367+
drive-strength = <4>;
368+
};
369+
370+
pins-clk {
371+
pinmux = <PINMUX_GPIO104__FUNC_MSDC2_CLK>;
372+
bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
373+
drive-strength = <4>;
374+
};
375+
};
376+
377+
mmc2_pins_uhs: sdio-uhs-pins {
378+
pins-cmd-dat {
379+
pinmux = <PINMUX_GPIO100__FUNC_MSDC2_DAT0>,
380+
<PINMUX_GPIO101__FUNC_MSDC2_DAT1>,
381+
<PINMUX_GPIO102__FUNC_MSDC2_DAT2>,
382+
<PINMUX_GPIO103__FUNC_MSDC2_DAT3>,
383+
<PINMUX_GPIO105__FUNC_MSDC2_CMD>;
384+
input-enable;
385+
bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
386+
drive-strength = <8>;
344387
};
345388

346389
pins-clk {
347390
pinmux = <PINMUX_GPIO104__FUNC_MSDC2_CLK>;
348391
bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
392+
drive-strength = <8>;
349393
};
350394
};
351395

@@ -463,7 +507,7 @@
463507
*/
464508
interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>;
465509

466-
mt6332-led {
510+
leds {
467511
compatible = "mediatek,mt6332-led";
468512
#address-cells = <1>;
469513
#size-cells = <0>;

arch/arm64/boot/dts/mediatek/mt6795.dtsi

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -287,9 +287,8 @@
287287
};
288288

289289
scpsys: syscon@10006000 {
290-
compatible = "syscon", "simple-mfd";
290+
compatible = "mediatek,mt6795-scpsys", "syscon", "simple-mfd";
291291
reg = <0 0x10006000 0 0x1000>;
292-
#power-domain-cells = <1>;
293292

294293
/* System Power Manager */
295294
spm: power-controller {

arch/arm64/boot/dts/mediatek/mt7981b-openwrt-one.dts

Lines changed: 127 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212
model = "OpenWrt One";
1313

1414
aliases {
15+
ethernet0 = &gmac1;
16+
ethernet1 = &gmac0;
1517
serial0 = &uart0;
1618
};
1719

@@ -67,9 +69,94 @@
6769
linux,default-trigger = "netdev";
6870
};
6971
};
72+
73+
reg_3p3v: regulator-3p3v {
74+
compatible = "regulator-fixed";
75+
regulator-name = "fixed-3.3V";
76+
regulator-min-microvolt = <3300000>;
77+
regulator-max-microvolt = <3300000>;
78+
regulator-boot-on;
79+
regulator-always-on;
80+
};
81+
82+
reg_5v: regulator-5v {
83+
compatible = "regulator-fixed";
84+
regulator-name = "fixed-5V";
85+
regulator-min-microvolt = <5000000>;
86+
regulator-max-microvolt = <5000000>;
87+
regulator-boot-on;
88+
regulator-always-on;
89+
};
90+
};
91+
92+
&eth {
93+
#address-cells = <1>;
94+
#size-cells = <0>;
95+
status = "okay";
96+
97+
/* WAN interface */
98+
gmac0: mac@0 {
99+
compatible = "mediatek,eth-mac";
100+
reg = <0>;
101+
nvmem-cells = <&wan_factory_mac 0>;
102+
nvmem-cell-names = "mac-address";
103+
phy-mode = "2500base-x";
104+
phy-handle = <&phy15>;
105+
};
106+
107+
/* LAN interface */
108+
gmac1: mac@1 {
109+
compatible = "mediatek,eth-mac";
110+
reg = <1>;
111+
phy-mode = "gmii";
112+
phy-handle = <&int_gbe_phy>;
113+
};
114+
};
115+
116+
&mdio_bus {
117+
phy15: ethernet-phy@f {
118+
compatible = "ethernet-phy-id03a2.a411";
119+
reg = <0xf>;
120+
interrupt-parent = <&pio>;
121+
interrupts = <38 IRQ_TYPE_LEVEL_LOW>;
122+
reset-gpios = <&pio 39 GPIO_ACTIVE_LOW>;
123+
reset-assert-us = <10000>;
124+
reset-deassert-us = <20000>;
125+
airoha,pnswap-rx;
126+
127+
leds {
128+
#address-cells = <1>;
129+
#size-cells = <0>;
130+
131+
led@0 {
132+
reg = <0>;
133+
function = LED_FUNCTION_WAN;
134+
color = <LED_COLOR_ID_AMBER>;
135+
};
136+
137+
led@1 {
138+
reg = <1>;
139+
function = LED_FUNCTION_WAN;
140+
color = <LED_COLOR_ID_GREEN>;
141+
};
142+
};
143+
};
144+
};
145+
146+
&pcie {
147+
pinctrl-names = "default";
148+
pinctrl-0 = <&pcie_pins>;
149+
status = "okay";
70150
};
71151

72152
&pio {
153+
pcie_pins: pcie-pins {
154+
mux {
155+
function = "pcie";
156+
groups = "pcie_pereset";
157+
};
158+
};
159+
73160
pwm_pins: pwm-pins {
74161
mux {
75162
function = "pwm";
@@ -95,6 +182,22 @@
95182
pins = "SPI2_CLK", "SPI2_MOSI", "SPI2_MISO";
96183
};
97184
};
185+
186+
wifi_dbdc_pins: wifi-dbdc-pins {
187+
mux {
188+
function = "eth";
189+
groups = "wf0_mode1";
190+
};
191+
192+
conf {
193+
pins = "WF_HB1", "WF_HB2", "WF_HB3", "WF_HB4",
194+
"WF_HB0", "WF_HB0_B", "WF_HB5", "WF_HB6",
195+
"WF_HB7", "WF_HB8", "WF_HB9", "WF_HB10",
196+
"WF_TOP_CLK", "WF_TOP_DATA", "WF_XO_REQ",
197+
"WF_CBA_RESETB", "WF_DIG_RESETB";
198+
drive-strength = <4>;
199+
};
200+
};
98201
};
99202

100203
&pwm {
@@ -112,8 +215,6 @@
112215
compatible = "jedec,spi-nor";
113216
reg = <0>;
114217
spi-max-frequency = <40000000>;
115-
#address-cells = <1>;
116-
#size-cells = <1>;
117218

118219
partitions {
119220
compatible = "fixed-partitions";
@@ -160,6 +261,30 @@
160261
};
161262
};
162263

264+
&sgmiisys0 {
265+
mediatek,pnswap;
266+
};
267+
163268
&uart0 {
164269
status = "okay";
165270
};
271+
272+
&usb_phy {
273+
status = "okay";
274+
};
275+
276+
&wifi {
277+
nvmem-cells = <&wifi_factory_calibration>;
278+
nvmem-cell-names = "eeprom";
279+
pinctrl-names = "dbdc";
280+
pinctrl-0 = <&wifi_dbdc_pins>;
281+
status = "okay";
282+
};
283+
284+
&xhci {
285+
phys = <&u2port0 PHY_TYPE_USB2>;
286+
vusb33-supply = <&reg_3p3v>;
287+
vbus-supply = <&reg_5v>;
288+
mediatek,u3p-dis-msk = <0x01>;
289+
status = "okay";
290+
};

0 commit comments

Comments
 (0)