1e526c9bcSBen Ho// SPDX-License-Identifier: (GPL-2.0 OR MIT) 2e526c9bcSBen Ho/* 3e526c9bcSBen Ho * Copyright (c) 2018 MediaTek Inc. 4e526c9bcSBen Ho * Author: Ben Ho <ben.ho@mediatek.com> 5e526c9bcSBen Ho * Erin Lo <erin.lo@mediatek.com> 6e526c9bcSBen Ho */ 7e526c9bcSBen Ho 8e526c9bcSBen Ho#include <dt-bindings/clock/mt8183-clk.h> 918d6e3f6SMatthias Brugger#include <dt-bindings/gce/mt8183-gce.h> 10e526c9bcSBen Ho#include <dt-bindings/interrupt-controller/arm-gic.h> 11e526c9bcSBen Ho#include <dt-bindings/interrupt-controller/irq.h> 12c6080916SEnric Balletbo i Serra#include <dt-bindings/memory/mt8183-larb-port.h> 1337fb78b9SMatthias Brugger#include <dt-bindings/power/mt8183-power.h> 14f07c776fSEnric Balletbo i Serra#include <dt-bindings/reset/mt8183-resets.h> 156b3bfa37SEnric Balletbo i Serra#include <dt-bindings/phy/phy.h> 16fccf4261SMatthias Kaehlcke#include <dt-bindings/thermal/thermal.h> 174e233326SHsin-Yi Wang#include <dt-bindings/pinctrl/mt8183-pinfunc.h> 18e526c9bcSBen Ho 19e526c9bcSBen Ho/ { 20e526c9bcSBen Ho compatible = "mediatek,mt8183"; 21e526c9bcSBen Ho interrupt-parent = <&sysirq>; 22e526c9bcSBen Ho #address-cells = <2>; 23e526c9bcSBen Ho #size-cells = <2>; 24e526c9bcSBen Ho 25251137b8SQii Wang aliases { 26251137b8SQii Wang i2c0 = &i2c0; 27251137b8SQii Wang i2c1 = &i2c1; 28251137b8SQii Wang i2c2 = &i2c2; 29251137b8SQii Wang i2c3 = &i2c3; 30251137b8SQii Wang i2c4 = &i2c4; 31251137b8SQii Wang i2c5 = &i2c5; 32251137b8SQii Wang i2c6 = &i2c6; 33251137b8SQii Wang i2c7 = &i2c7; 34251137b8SQii Wang i2c8 = &i2c8; 35251137b8SQii Wang i2c9 = &i2c9; 36251137b8SQii Wang i2c10 = &i2c10; 37251137b8SQii Wang i2c11 = &i2c11; 3891f9c963SEnric Balletbo i Serra ovl0 = &ovl0; 3991f9c963SEnric Balletbo i Serra ovl-2l0 = &ovl_2l0; 4091f9c963SEnric Balletbo i Serra ovl-2l1 = &ovl_2l1; 4191f9c963SEnric Balletbo i Serra rdma0 = &rdma0; 4291f9c963SEnric Balletbo i Serra rdma1 = &rdma1; 43251137b8SQii Wang }; 44251137b8SQii Wang 4595eacb24SRex-BC Chen cluster0_opp: opp-table-cluster0 { 4695eacb24SRex-BC Chen compatible = "operating-points-v2"; 4795eacb24SRex-BC Chen opp-shared; 4895eacb24SRex-BC Chen opp0-793000000 { 4995eacb24SRex-BC Chen opp-hz = /bits/ 64 <793000000>; 5095eacb24SRex-BC Chen opp-microvolt = <650000>; 5195eacb24SRex-BC Chen required-opps = <&opp2_00>; 5295eacb24SRex-BC Chen }; 5395eacb24SRex-BC Chen opp0-910000000 { 5495eacb24SRex-BC Chen opp-hz = /bits/ 64 <910000000>; 5595eacb24SRex-BC Chen opp-microvolt = <687500>; 5695eacb24SRex-BC Chen required-opps = <&opp2_01>; 5795eacb24SRex-BC Chen }; 5895eacb24SRex-BC Chen opp0-1014000000 { 5995eacb24SRex-BC Chen opp-hz = /bits/ 64 <1014000000>; 6095eacb24SRex-BC Chen opp-microvolt = <718750>; 6195eacb24SRex-BC Chen required-opps = <&opp2_02>; 6295eacb24SRex-BC Chen }; 6395eacb24SRex-BC Chen opp0-1131000000 { 6495eacb24SRex-BC Chen opp-hz = /bits/ 64 <1131000000>; 6595eacb24SRex-BC Chen opp-microvolt = <756250>; 6695eacb24SRex-BC Chen required-opps = <&opp2_03>; 6795eacb24SRex-BC Chen }; 6895eacb24SRex-BC Chen opp0-1248000000 { 6995eacb24SRex-BC Chen opp-hz = /bits/ 64 <1248000000>; 7095eacb24SRex-BC Chen opp-microvolt = <800000>; 7195eacb24SRex-BC Chen required-opps = <&opp2_04>; 7295eacb24SRex-BC Chen }; 7395eacb24SRex-BC Chen opp0-1326000000 { 7495eacb24SRex-BC Chen opp-hz = /bits/ 64 <1326000000>; 7595eacb24SRex-BC Chen opp-microvolt = <818750>; 7695eacb24SRex-BC Chen required-opps = <&opp2_05>; 7795eacb24SRex-BC Chen }; 7895eacb24SRex-BC Chen opp0-1417000000 { 7995eacb24SRex-BC Chen opp-hz = /bits/ 64 <1417000000>; 8095eacb24SRex-BC Chen opp-microvolt = <850000>; 8195eacb24SRex-BC Chen required-opps = <&opp2_06>; 8295eacb24SRex-BC Chen }; 8395eacb24SRex-BC Chen opp0-1508000000 { 8495eacb24SRex-BC Chen opp-hz = /bits/ 64 <1508000000>; 8595eacb24SRex-BC Chen opp-microvolt = <868750>; 8695eacb24SRex-BC Chen required-opps = <&opp2_07>; 8795eacb24SRex-BC Chen }; 8895eacb24SRex-BC Chen opp0-1586000000 { 8995eacb24SRex-BC Chen opp-hz = /bits/ 64 <1586000000>; 9095eacb24SRex-BC Chen opp-microvolt = <893750>; 9195eacb24SRex-BC Chen required-opps = <&opp2_08>; 9295eacb24SRex-BC Chen }; 9395eacb24SRex-BC Chen opp0-1625000000 { 9495eacb24SRex-BC Chen opp-hz = /bits/ 64 <1625000000>; 9595eacb24SRex-BC Chen opp-microvolt = <906250>; 9695eacb24SRex-BC Chen required-opps = <&opp2_09>; 9795eacb24SRex-BC Chen }; 9895eacb24SRex-BC Chen opp0-1677000000 { 9995eacb24SRex-BC Chen opp-hz = /bits/ 64 <1677000000>; 10095eacb24SRex-BC Chen opp-microvolt = <931250>; 10195eacb24SRex-BC Chen required-opps = <&opp2_10>; 10295eacb24SRex-BC Chen }; 10395eacb24SRex-BC Chen opp0-1716000000 { 10495eacb24SRex-BC Chen opp-hz = /bits/ 64 <1716000000>; 10595eacb24SRex-BC Chen opp-microvolt = <943750>; 10695eacb24SRex-BC Chen required-opps = <&opp2_11>; 10795eacb24SRex-BC Chen }; 10895eacb24SRex-BC Chen opp0-1781000000 { 10995eacb24SRex-BC Chen opp-hz = /bits/ 64 <1781000000>; 11095eacb24SRex-BC Chen opp-microvolt = <975000>; 11195eacb24SRex-BC Chen required-opps = <&opp2_12>; 11295eacb24SRex-BC Chen }; 11395eacb24SRex-BC Chen opp0-1846000000 { 11495eacb24SRex-BC Chen opp-hz = /bits/ 64 <1846000000>; 11595eacb24SRex-BC Chen opp-microvolt = <1000000>; 11695eacb24SRex-BC Chen required-opps = <&opp2_13>; 11795eacb24SRex-BC Chen }; 11895eacb24SRex-BC Chen opp0-1924000000 { 11995eacb24SRex-BC Chen opp-hz = /bits/ 64 <1924000000>; 12095eacb24SRex-BC Chen opp-microvolt = <1025000>; 12195eacb24SRex-BC Chen required-opps = <&opp2_14>; 12295eacb24SRex-BC Chen }; 12395eacb24SRex-BC Chen opp0-1989000000 { 12495eacb24SRex-BC Chen opp-hz = /bits/ 64 <1989000000>; 12595eacb24SRex-BC Chen opp-microvolt = <1050000>; 12695eacb24SRex-BC Chen required-opps = <&opp2_15>; 12795eacb24SRex-BC Chen }; }; 12895eacb24SRex-BC Chen 12995eacb24SRex-BC Chen cluster1_opp: opp-table-cluster1 { 13095eacb24SRex-BC Chen compatible = "operating-points-v2"; 13195eacb24SRex-BC Chen opp-shared; 13295eacb24SRex-BC Chen opp1-793000000 { 13395eacb24SRex-BC Chen opp-hz = /bits/ 64 <793000000>; 13495eacb24SRex-BC Chen opp-microvolt = <700000>; 13595eacb24SRex-BC Chen required-opps = <&opp2_00>; 13695eacb24SRex-BC Chen }; 13795eacb24SRex-BC Chen opp1-910000000 { 13895eacb24SRex-BC Chen opp-hz = /bits/ 64 <910000000>; 13995eacb24SRex-BC Chen opp-microvolt = <725000>; 14095eacb24SRex-BC Chen required-opps = <&opp2_01>; 14195eacb24SRex-BC Chen }; 14295eacb24SRex-BC Chen opp1-1014000000 { 14395eacb24SRex-BC Chen opp-hz = /bits/ 64 <1014000000>; 14495eacb24SRex-BC Chen opp-microvolt = <750000>; 14595eacb24SRex-BC Chen required-opps = <&opp2_02>; 14695eacb24SRex-BC Chen }; 14795eacb24SRex-BC Chen opp1-1131000000 { 14895eacb24SRex-BC Chen opp-hz = /bits/ 64 <1131000000>; 14995eacb24SRex-BC Chen opp-microvolt = <775000>; 15095eacb24SRex-BC Chen required-opps = <&opp2_03>; 15195eacb24SRex-BC Chen }; 15295eacb24SRex-BC Chen opp1-1248000000 { 15395eacb24SRex-BC Chen opp-hz = /bits/ 64 <1248000000>; 15495eacb24SRex-BC Chen opp-microvolt = <800000>; 15595eacb24SRex-BC Chen required-opps = <&opp2_04>; 15695eacb24SRex-BC Chen }; 15795eacb24SRex-BC Chen opp1-1326000000 { 15895eacb24SRex-BC Chen opp-hz = /bits/ 64 <1326000000>; 15995eacb24SRex-BC Chen opp-microvolt = <825000>; 16095eacb24SRex-BC Chen required-opps = <&opp2_05>; 16195eacb24SRex-BC Chen }; 16295eacb24SRex-BC Chen opp1-1417000000 { 16395eacb24SRex-BC Chen opp-hz = /bits/ 64 <1417000000>; 16495eacb24SRex-BC Chen opp-microvolt = <850000>; 16595eacb24SRex-BC Chen required-opps = <&opp2_06>; 16695eacb24SRex-BC Chen }; 16795eacb24SRex-BC Chen opp1-1508000000 { 16895eacb24SRex-BC Chen opp-hz = /bits/ 64 <1508000000>; 16995eacb24SRex-BC Chen opp-microvolt = <875000>; 17095eacb24SRex-BC Chen required-opps = <&opp2_07>; 17195eacb24SRex-BC Chen }; 17295eacb24SRex-BC Chen opp1-1586000000 { 17395eacb24SRex-BC Chen opp-hz = /bits/ 64 <1586000000>; 17495eacb24SRex-BC Chen opp-microvolt = <900000>; 17595eacb24SRex-BC Chen required-opps = <&opp2_08>; 17695eacb24SRex-BC Chen }; 17795eacb24SRex-BC Chen opp1-1625000000 { 17895eacb24SRex-BC Chen opp-hz = /bits/ 64 <1625000000>; 17995eacb24SRex-BC Chen opp-microvolt = <912500>; 18095eacb24SRex-BC Chen required-opps = <&opp2_09>; 18195eacb24SRex-BC Chen }; 18295eacb24SRex-BC Chen opp1-1677000000 { 18395eacb24SRex-BC Chen opp-hz = /bits/ 64 <1677000000>; 18495eacb24SRex-BC Chen opp-microvolt = <931250>; 18595eacb24SRex-BC Chen required-opps = <&opp2_10>; 18695eacb24SRex-BC Chen }; 18795eacb24SRex-BC Chen opp1-1716000000 { 18895eacb24SRex-BC Chen opp-hz = /bits/ 64 <1716000000>; 18995eacb24SRex-BC Chen opp-microvolt = <950000>; 19095eacb24SRex-BC Chen required-opps = <&opp2_11>; 19195eacb24SRex-BC Chen }; 19295eacb24SRex-BC Chen opp1-1781000000 { 19395eacb24SRex-BC Chen opp-hz = /bits/ 64 <1781000000>; 19495eacb24SRex-BC Chen opp-microvolt = <975000>; 19595eacb24SRex-BC Chen required-opps = <&opp2_12>; 19695eacb24SRex-BC Chen }; 19795eacb24SRex-BC Chen opp1-1846000000 { 19895eacb24SRex-BC Chen opp-hz = /bits/ 64 <1846000000>; 19995eacb24SRex-BC Chen opp-microvolt = <1000000>; 20095eacb24SRex-BC Chen required-opps = <&opp2_13>; 20195eacb24SRex-BC Chen }; 20295eacb24SRex-BC Chen opp1-1924000000 { 20395eacb24SRex-BC Chen opp-hz = /bits/ 64 <1924000000>; 20495eacb24SRex-BC Chen opp-microvolt = <1025000>; 20595eacb24SRex-BC Chen required-opps = <&opp2_14>; 20695eacb24SRex-BC Chen }; 20795eacb24SRex-BC Chen opp1-1989000000 { 20895eacb24SRex-BC Chen opp-hz = /bits/ 64 <1989000000>; 20995eacb24SRex-BC Chen opp-microvolt = <1050000>; 21095eacb24SRex-BC Chen required-opps = <&opp2_15>; 21195eacb24SRex-BC Chen }; 21295eacb24SRex-BC Chen }; 21395eacb24SRex-BC Chen 21495eacb24SRex-BC Chen cci_opp: opp-table-cci { 21595eacb24SRex-BC Chen compatible = "operating-points-v2"; 21695eacb24SRex-BC Chen opp-shared; 21795eacb24SRex-BC Chen opp2_00: opp-273000000 { 21895eacb24SRex-BC Chen opp-hz = /bits/ 64 <273000000>; 21995eacb24SRex-BC Chen opp-microvolt = <650000>; 22095eacb24SRex-BC Chen }; 22195eacb24SRex-BC Chen opp2_01: opp-338000000 { 22295eacb24SRex-BC Chen opp-hz = /bits/ 64 <338000000>; 22395eacb24SRex-BC Chen opp-microvolt = <687500>; 22495eacb24SRex-BC Chen }; 22595eacb24SRex-BC Chen opp2_02: opp-403000000 { 22695eacb24SRex-BC Chen opp-hz = /bits/ 64 <403000000>; 22795eacb24SRex-BC Chen opp-microvolt = <718750>; 22895eacb24SRex-BC Chen }; 22995eacb24SRex-BC Chen opp2_03: opp-463000000 { 23095eacb24SRex-BC Chen opp-hz = /bits/ 64 <463000000>; 23195eacb24SRex-BC Chen opp-microvolt = <756250>; 23295eacb24SRex-BC Chen }; 23395eacb24SRex-BC Chen opp2_04: opp-546000000 { 23495eacb24SRex-BC Chen opp-hz = /bits/ 64 <546000000>; 23595eacb24SRex-BC Chen opp-microvolt = <800000>; 23695eacb24SRex-BC Chen }; 23795eacb24SRex-BC Chen opp2_05: opp-624000000 { 23895eacb24SRex-BC Chen opp-hz = /bits/ 64 <624000000>; 23995eacb24SRex-BC Chen opp-microvolt = <818750>; 24095eacb24SRex-BC Chen }; 24195eacb24SRex-BC Chen opp2_06: opp-689000000 { 24295eacb24SRex-BC Chen opp-hz = /bits/ 64 <689000000>; 24395eacb24SRex-BC Chen opp-microvolt = <850000>; 24495eacb24SRex-BC Chen }; 24595eacb24SRex-BC Chen opp2_07: opp-767000000 { 24695eacb24SRex-BC Chen opp-hz = /bits/ 64 <767000000>; 24795eacb24SRex-BC Chen opp-microvolt = <868750>; 24895eacb24SRex-BC Chen }; 24995eacb24SRex-BC Chen opp2_08: opp-845000000 { 25095eacb24SRex-BC Chen opp-hz = /bits/ 64 <845000000>; 25195eacb24SRex-BC Chen opp-microvolt = <893750>; 25295eacb24SRex-BC Chen }; 25395eacb24SRex-BC Chen opp2_09: opp-871000000 { 25495eacb24SRex-BC Chen opp-hz = /bits/ 64 <871000000>; 25595eacb24SRex-BC Chen opp-microvolt = <906250>; 25695eacb24SRex-BC Chen }; 25795eacb24SRex-BC Chen opp2_10: opp-923000000 { 25895eacb24SRex-BC Chen opp-hz = /bits/ 64 <923000000>; 25995eacb24SRex-BC Chen opp-microvolt = <931250>; 26095eacb24SRex-BC Chen }; 26195eacb24SRex-BC Chen opp2_11: opp-962000000 { 26295eacb24SRex-BC Chen opp-hz = /bits/ 64 <962000000>; 26395eacb24SRex-BC Chen opp-microvolt = <943750>; 26495eacb24SRex-BC Chen }; 26595eacb24SRex-BC Chen opp2_12: opp-1027000000 { 26695eacb24SRex-BC Chen opp-hz = /bits/ 64 <1027000000>; 26795eacb24SRex-BC Chen opp-microvolt = <975000>; 26895eacb24SRex-BC Chen }; 26995eacb24SRex-BC Chen opp2_13: opp-1092000000 { 27095eacb24SRex-BC Chen opp-hz = /bits/ 64 <1092000000>; 27195eacb24SRex-BC Chen opp-microvolt = <1000000>; 27295eacb24SRex-BC Chen }; 27395eacb24SRex-BC Chen opp2_14: opp-1144000000 { 27495eacb24SRex-BC Chen opp-hz = /bits/ 64 <1144000000>; 27595eacb24SRex-BC Chen opp-microvolt = <1025000>; 27695eacb24SRex-BC Chen }; 27795eacb24SRex-BC Chen opp2_15: opp-1196000000 { 27895eacb24SRex-BC Chen opp-hz = /bits/ 64 <1196000000>; 27995eacb24SRex-BC Chen opp-microvolt = <1050000>; 28095eacb24SRex-BC Chen }; 28195eacb24SRex-BC Chen }; 28295eacb24SRex-BC Chen 283f3ceebebSRex-BC Chen cci: cci { 284f3ceebebSRex-BC Chen compatible = "mediatek,mt8183-cci"; 285f3ceebebSRex-BC Chen clocks = <&mcucfg CLK_MCU_BUS_SEL>, 286f3ceebebSRex-BC Chen <&topckgen CLK_TOP_ARMPLL_DIV_PLL1>; 287f3ceebebSRex-BC Chen clock-names = "cci", "intermediate"; 288f3ceebebSRex-BC Chen operating-points-v2 = <&cci_opp>; 289f3ceebebSRex-BC Chen }; 290f3ceebebSRex-BC Chen 291e526c9bcSBen Ho cpus { 292e526c9bcSBen Ho #address-cells = <1>; 293e526c9bcSBen Ho #size-cells = <0>; 294e526c9bcSBen Ho 295e526c9bcSBen Ho cpu-map { 296e526c9bcSBen Ho cluster0 { 297e526c9bcSBen Ho core0 { 298e526c9bcSBen Ho cpu = <&cpu0>; 299e526c9bcSBen Ho }; 300e526c9bcSBen Ho core1 { 301e526c9bcSBen Ho cpu = <&cpu1>; 302e526c9bcSBen Ho }; 303e526c9bcSBen Ho core2 { 304e526c9bcSBen Ho cpu = <&cpu2>; 305e526c9bcSBen Ho }; 306e526c9bcSBen Ho core3 { 307e526c9bcSBen Ho cpu = <&cpu3>; 308e526c9bcSBen Ho }; 309e526c9bcSBen Ho }; 310e526c9bcSBen Ho 311e526c9bcSBen Ho cluster1 { 312e526c9bcSBen Ho core0 { 313e526c9bcSBen Ho cpu = <&cpu4>; 314e526c9bcSBen Ho }; 315e526c9bcSBen Ho core1 { 316e526c9bcSBen Ho cpu = <&cpu5>; 317e526c9bcSBen Ho }; 318e526c9bcSBen Ho core2 { 319e526c9bcSBen Ho cpu = <&cpu6>; 320e526c9bcSBen Ho }; 321e526c9bcSBen Ho core3 { 322e526c9bcSBen Ho cpu = <&cpu7>; 323e526c9bcSBen Ho }; 324e526c9bcSBen Ho }; 325e526c9bcSBen Ho }; 326e526c9bcSBen Ho 327e526c9bcSBen Ho cpu0: cpu@0 { 328e526c9bcSBen Ho device_type = "cpu"; 329e526c9bcSBen Ho compatible = "arm,cortex-a53"; 330e526c9bcSBen Ho reg = <0x000>; 331e526c9bcSBen Ho enable-method = "psci"; 332cc216dfdSHsin-Yi, Wang capacity-dmips-mhz = <741>; 3336b552975SIkjoon Jang cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>; 33495eacb24SRex-BC Chen clocks = <&mcucfg CLK_MCU_MP0_SEL>, 33595eacb24SRex-BC Chen <&topckgen CLK_TOP_ARMPLL_DIV_PLL1>; 33695eacb24SRex-BC Chen clock-names = "cpu", "intermediate"; 33795eacb24SRex-BC Chen operating-points-v2 = <&cluster0_opp>; 338cc10317dSmichael.kao dynamic-power-coefficient = <84>; 3395323e0faSmichael.kao #cooling-cells = <2>; 34068163cd1SRex-BC Chen mediatek,cci = <&cci>; 341e526c9bcSBen Ho }; 342e526c9bcSBen Ho 343e526c9bcSBen Ho cpu1: cpu@1 { 344e526c9bcSBen Ho device_type = "cpu"; 345e526c9bcSBen Ho compatible = "arm,cortex-a53"; 346e526c9bcSBen Ho reg = <0x001>; 347e526c9bcSBen Ho enable-method = "psci"; 348cc216dfdSHsin-Yi, Wang capacity-dmips-mhz = <741>; 3496b552975SIkjoon Jang cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>; 35095eacb24SRex-BC Chen clocks = <&mcucfg CLK_MCU_MP0_SEL>, 35195eacb24SRex-BC Chen <&topckgen CLK_TOP_ARMPLL_DIV_PLL1>; 35295eacb24SRex-BC Chen clock-names = "cpu", "intermediate"; 35395eacb24SRex-BC Chen operating-points-v2 = <&cluster0_opp>; 354cc10317dSmichael.kao dynamic-power-coefficient = <84>; 3555323e0faSmichael.kao #cooling-cells = <2>; 35668163cd1SRex-BC Chen mediatek,cci = <&cci>; 357e526c9bcSBen Ho }; 358e526c9bcSBen Ho 359e526c9bcSBen Ho cpu2: cpu@2 { 360e526c9bcSBen Ho device_type = "cpu"; 361e526c9bcSBen Ho compatible = "arm,cortex-a53"; 362e526c9bcSBen Ho reg = <0x002>; 363e526c9bcSBen Ho enable-method = "psci"; 364cc216dfdSHsin-Yi, Wang capacity-dmips-mhz = <741>; 3656b552975SIkjoon Jang cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>; 36695eacb24SRex-BC Chen clocks = <&mcucfg CLK_MCU_MP0_SEL>, 36795eacb24SRex-BC Chen <&topckgen CLK_TOP_ARMPLL_DIV_PLL1>; 36895eacb24SRex-BC Chen clock-names = "cpu", "intermediate"; 36995eacb24SRex-BC Chen operating-points-v2 = <&cluster0_opp>; 370cc10317dSmichael.kao dynamic-power-coefficient = <84>; 3715323e0faSmichael.kao #cooling-cells = <2>; 37268163cd1SRex-BC Chen mediatek,cci = <&cci>; 373e526c9bcSBen Ho }; 374e526c9bcSBen Ho 375e526c9bcSBen Ho cpu3: cpu@3 { 376e526c9bcSBen Ho device_type = "cpu"; 377e526c9bcSBen Ho compatible = "arm,cortex-a53"; 378e526c9bcSBen Ho reg = <0x003>; 379e526c9bcSBen Ho enable-method = "psci"; 380cc216dfdSHsin-Yi, Wang capacity-dmips-mhz = <741>; 3816b552975SIkjoon Jang cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP0>; 38295eacb24SRex-BC Chen clocks = <&mcucfg CLK_MCU_MP0_SEL>, 38395eacb24SRex-BC Chen <&topckgen CLK_TOP_ARMPLL_DIV_PLL1>; 38495eacb24SRex-BC Chen clock-names = "cpu", "intermediate"; 38595eacb24SRex-BC Chen operating-points-v2 = <&cluster0_opp>; 386cc10317dSmichael.kao dynamic-power-coefficient = <84>; 3875323e0faSmichael.kao #cooling-cells = <2>; 38868163cd1SRex-BC Chen mediatek,cci = <&cci>; 389e526c9bcSBen Ho }; 390e526c9bcSBen Ho 391e526c9bcSBen Ho cpu4: cpu@100 { 392e526c9bcSBen Ho device_type = "cpu"; 393e526c9bcSBen Ho compatible = "arm,cortex-a73"; 394e526c9bcSBen Ho reg = <0x100>; 395e526c9bcSBen Ho enable-method = "psci"; 396cc216dfdSHsin-Yi, Wang capacity-dmips-mhz = <1024>; 3976b552975SIkjoon Jang cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>; 39895eacb24SRex-BC Chen clocks = <&mcucfg CLK_MCU_MP2_SEL>, 39995eacb24SRex-BC Chen <&topckgen CLK_TOP_ARMPLL_DIV_PLL1>; 40095eacb24SRex-BC Chen clock-names = "cpu", "intermediate"; 40195eacb24SRex-BC Chen operating-points-v2 = <&cluster1_opp>; 402cc10317dSmichael.kao dynamic-power-coefficient = <211>; 4035323e0faSmichael.kao #cooling-cells = <2>; 40468163cd1SRex-BC Chen mediatek,cci = <&cci>; 405e526c9bcSBen Ho }; 406e526c9bcSBen Ho 407e526c9bcSBen Ho cpu5: cpu@101 { 408e526c9bcSBen Ho device_type = "cpu"; 409e526c9bcSBen Ho compatible = "arm,cortex-a73"; 410e526c9bcSBen Ho reg = <0x101>; 411e526c9bcSBen Ho enable-method = "psci"; 412cc216dfdSHsin-Yi, Wang capacity-dmips-mhz = <1024>; 4136b552975SIkjoon Jang cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>; 41495eacb24SRex-BC Chen clocks = <&mcucfg CLK_MCU_MP2_SEL>, 41595eacb24SRex-BC Chen <&topckgen CLK_TOP_ARMPLL_DIV_PLL1>; 41695eacb24SRex-BC Chen clock-names = "cpu", "intermediate"; 41795eacb24SRex-BC Chen operating-points-v2 = <&cluster1_opp>; 418cc10317dSmichael.kao dynamic-power-coefficient = <211>; 4195323e0faSmichael.kao #cooling-cells = <2>; 42068163cd1SRex-BC Chen mediatek,cci = <&cci>; 421e526c9bcSBen Ho }; 422e526c9bcSBen Ho 423e526c9bcSBen Ho cpu6: cpu@102 { 424e526c9bcSBen Ho device_type = "cpu"; 425e526c9bcSBen Ho compatible = "arm,cortex-a73"; 426e526c9bcSBen Ho reg = <0x102>; 427e526c9bcSBen Ho enable-method = "psci"; 428cc216dfdSHsin-Yi, Wang capacity-dmips-mhz = <1024>; 4296b552975SIkjoon Jang cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>; 43095eacb24SRex-BC Chen clocks = <&mcucfg CLK_MCU_MP2_SEL>, 43195eacb24SRex-BC Chen <&topckgen CLK_TOP_ARMPLL_DIV_PLL1>; 43295eacb24SRex-BC Chen clock-names = "cpu", "intermediate"; 43395eacb24SRex-BC Chen operating-points-v2 = <&cluster1_opp>; 434cc10317dSmichael.kao dynamic-power-coefficient = <211>; 4355323e0faSmichael.kao #cooling-cells = <2>; 43668163cd1SRex-BC Chen mediatek,cci = <&cci>; 437e526c9bcSBen Ho }; 438e526c9bcSBen Ho 439e526c9bcSBen Ho cpu7: cpu@103 { 440e526c9bcSBen Ho device_type = "cpu"; 441e526c9bcSBen Ho compatible = "arm,cortex-a73"; 442e526c9bcSBen Ho reg = <0x103>; 443e526c9bcSBen Ho enable-method = "psci"; 444cc216dfdSHsin-Yi, Wang capacity-dmips-mhz = <1024>; 4456b552975SIkjoon Jang cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP1>; 44695eacb24SRex-BC Chen clocks = <&mcucfg CLK_MCU_MP2_SEL>, 44795eacb24SRex-BC Chen <&topckgen CLK_TOP_ARMPLL_DIV_PLL1>; 44895eacb24SRex-BC Chen clock-names = "cpu", "intermediate"; 44995eacb24SRex-BC Chen operating-points-v2 = <&cluster1_opp>; 450cc10317dSmichael.kao dynamic-power-coefficient = <211>; 4515323e0faSmichael.kao #cooling-cells = <2>; 45268163cd1SRex-BC Chen mediatek,cci = <&cci>; 4536be021b1SJames Liao }; 4546be021b1SJames Liao 4556be021b1SJames Liao idle-states { 4566be021b1SJames Liao entry-method = "psci"; 4576be021b1SJames Liao 4586be021b1SJames Liao CPU_SLEEP: cpu-sleep { 4596be021b1SJames Liao compatible = "arm,idle-state"; 4606be021b1SJames Liao local-timer-stop; 4616be021b1SJames Liao arm,psci-suspend-param = <0x00010001>; 4626be021b1SJames Liao entry-latency-us = <200>; 4636be021b1SJames Liao exit-latency-us = <200>; 4646be021b1SJames Liao min-residency-us = <800>; 4656be021b1SJames Liao }; 4666be021b1SJames Liao 4672a7abd3eSEnric Balletbo i Serra CLUSTER_SLEEP0: cluster-sleep-0 { 4686b552975SIkjoon Jang compatible = "arm,idle-state"; 4696b552975SIkjoon Jang local-timer-stop; 4706b552975SIkjoon Jang arm,psci-suspend-param = <0x01010001>; 4716b552975SIkjoon Jang entry-latency-us = <250>; 4726b552975SIkjoon Jang exit-latency-us = <400>; 4736b552975SIkjoon Jang min-residency-us = <1000>; 4746b552975SIkjoon Jang }; 4752a7abd3eSEnric Balletbo i Serra CLUSTER_SLEEP1: cluster-sleep-1 { 4766be021b1SJames Liao compatible = "arm,idle-state"; 4776be021b1SJames Liao local-timer-stop; 4786be021b1SJames Liao arm,psci-suspend-param = <0x01010001>; 4796be021b1SJames Liao entry-latency-us = <250>; 4806be021b1SJames Liao exit-latency-us = <400>; 4816be021b1SJames Liao min-residency-us = <1300>; 4826be021b1SJames Liao }; 483e526c9bcSBen Ho }; 484e526c9bcSBen Ho }; 485e526c9bcSBen Ho 4866f117db4SKrzysztof Kozlowski gpu_opp_table: opp-table-0 { 487a8168cebSNicolas Boichat compatible = "operating-points-v2"; 488a8168cebSNicolas Boichat opp-shared; 489a8168cebSNicolas Boichat 490a8168cebSNicolas Boichat opp-300000000 { 491a8168cebSNicolas Boichat opp-hz = /bits/ 64 <300000000>; 492a8168cebSNicolas Boichat opp-microvolt = <625000>, <850000>; 493a8168cebSNicolas Boichat }; 494a8168cebSNicolas Boichat 495a8168cebSNicolas Boichat opp-320000000 { 496a8168cebSNicolas Boichat opp-hz = /bits/ 64 <320000000>; 497a8168cebSNicolas Boichat opp-microvolt = <631250>, <850000>; 498a8168cebSNicolas Boichat }; 499a8168cebSNicolas Boichat 500a8168cebSNicolas Boichat opp-340000000 { 501a8168cebSNicolas Boichat opp-hz = /bits/ 64 <340000000>; 502a8168cebSNicolas Boichat opp-microvolt = <637500>, <850000>; 503a8168cebSNicolas Boichat }; 504a8168cebSNicolas Boichat 505a8168cebSNicolas Boichat opp-360000000 { 506a8168cebSNicolas Boichat opp-hz = /bits/ 64 <360000000>; 507a8168cebSNicolas Boichat opp-microvolt = <643750>, <850000>; 508a8168cebSNicolas Boichat }; 509a8168cebSNicolas Boichat 510a8168cebSNicolas Boichat opp-380000000 { 511a8168cebSNicolas Boichat opp-hz = /bits/ 64 <380000000>; 512a8168cebSNicolas Boichat opp-microvolt = <650000>, <850000>; 513a8168cebSNicolas Boichat }; 514a8168cebSNicolas Boichat 515a8168cebSNicolas Boichat opp-400000000 { 516a8168cebSNicolas Boichat opp-hz = /bits/ 64 <400000000>; 517a8168cebSNicolas Boichat opp-microvolt = <656250>, <850000>; 518a8168cebSNicolas Boichat }; 519a8168cebSNicolas Boichat 520a8168cebSNicolas Boichat opp-420000000 { 521a8168cebSNicolas Boichat opp-hz = /bits/ 64 <420000000>; 522a8168cebSNicolas Boichat opp-microvolt = <662500>, <850000>; 523a8168cebSNicolas Boichat }; 524a8168cebSNicolas Boichat 525a8168cebSNicolas Boichat opp-460000000 { 526a8168cebSNicolas Boichat opp-hz = /bits/ 64 <460000000>; 527a8168cebSNicolas Boichat opp-microvolt = <675000>, <850000>; 528a8168cebSNicolas Boichat }; 529a8168cebSNicolas Boichat 530a8168cebSNicolas Boichat opp-500000000 { 531a8168cebSNicolas Boichat opp-hz = /bits/ 64 <500000000>; 532a8168cebSNicolas Boichat opp-microvolt = <687500>, <850000>; 533a8168cebSNicolas Boichat }; 534a8168cebSNicolas Boichat 535a8168cebSNicolas Boichat opp-540000000 { 536a8168cebSNicolas Boichat opp-hz = /bits/ 64 <540000000>; 537a8168cebSNicolas Boichat opp-microvolt = <700000>, <850000>; 538a8168cebSNicolas Boichat }; 539a8168cebSNicolas Boichat 540a8168cebSNicolas Boichat opp-580000000 { 541a8168cebSNicolas Boichat opp-hz = /bits/ 64 <580000000>; 542a8168cebSNicolas Boichat opp-microvolt = <712500>, <850000>; 543a8168cebSNicolas Boichat }; 544a8168cebSNicolas Boichat 545a8168cebSNicolas Boichat opp-620000000 { 546a8168cebSNicolas Boichat opp-hz = /bits/ 64 <620000000>; 547a8168cebSNicolas Boichat opp-microvolt = <725000>, <850000>; 548a8168cebSNicolas Boichat }; 549a8168cebSNicolas Boichat 550a8168cebSNicolas Boichat opp-653000000 { 551a8168cebSNicolas Boichat opp-hz = /bits/ 64 <653000000>; 552a8168cebSNicolas Boichat opp-microvolt = <743750>, <850000>; 553a8168cebSNicolas Boichat }; 554a8168cebSNicolas Boichat 555a8168cebSNicolas Boichat opp-698000000 { 556a8168cebSNicolas Boichat opp-hz = /bits/ 64 <698000000>; 557a8168cebSNicolas Boichat opp-microvolt = <768750>, <868750>; 558a8168cebSNicolas Boichat }; 559a8168cebSNicolas Boichat 560a8168cebSNicolas Boichat opp-743000000 { 561a8168cebSNicolas Boichat opp-hz = /bits/ 64 <743000000>; 562a8168cebSNicolas Boichat opp-microvolt = <793750>, <893750>; 563a8168cebSNicolas Boichat }; 564a8168cebSNicolas Boichat 565a8168cebSNicolas Boichat opp-800000000 { 566a8168cebSNicolas Boichat opp-hz = /bits/ 64 <800000000>; 567a8168cebSNicolas Boichat opp-microvolt = <825000>, <925000>; 568a8168cebSNicolas Boichat }; 569a8168cebSNicolas Boichat }; 570a8168cebSNicolas Boichat 571e526c9bcSBen Ho pmu-a53 { 572e526c9bcSBen Ho compatible = "arm,cortex-a53-pmu"; 573e526c9bcSBen Ho interrupt-parent = <&gic>; 574e526c9bcSBen Ho interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW &ppi_cluster0>; 575e526c9bcSBen Ho }; 576e526c9bcSBen Ho 577e526c9bcSBen Ho pmu-a73 { 578e526c9bcSBen Ho compatible = "arm,cortex-a73-pmu"; 579e526c9bcSBen Ho interrupt-parent = <&gic>; 580e526c9bcSBen Ho interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW &ppi_cluster1>; 581e526c9bcSBen Ho }; 582e526c9bcSBen Ho 583e526c9bcSBen Ho psci { 584e526c9bcSBen Ho compatible = "arm,psci-1.0"; 585e526c9bcSBen Ho method = "smc"; 586e526c9bcSBen Ho }; 587e526c9bcSBen Ho 588e526c9bcSBen Ho clk26m: oscillator { 589e526c9bcSBen Ho compatible = "fixed-clock"; 590e526c9bcSBen Ho #clock-cells = <0>; 591e526c9bcSBen Ho clock-frequency = <26000000>; 592e526c9bcSBen Ho clock-output-names = "clk26m"; 593e526c9bcSBen Ho }; 594e526c9bcSBen Ho 595e526c9bcSBen Ho timer { 596e526c9bcSBen Ho compatible = "arm,armv8-timer"; 597e526c9bcSBen Ho interrupt-parent = <&gic>; 598e526c9bcSBen Ho interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW 0>, 599e526c9bcSBen Ho <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW 0>, 600e526c9bcSBen Ho <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW 0>, 601e526c9bcSBen Ho <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW 0>; 602e526c9bcSBen Ho }; 603e526c9bcSBen Ho 604e526c9bcSBen Ho soc { 605e526c9bcSBen Ho #address-cells = <2>; 606e526c9bcSBen Ho #size-cells = <2>; 607e526c9bcSBen Ho compatible = "simple-bus"; 608e526c9bcSBen Ho ranges; 609e526c9bcSBen Ho 610de103388SMichael Mei soc_data: soc_data@8000000 { 611de103388SMichael Mei compatible = "mediatek,mt8183-efuse", 612de103388SMichael Mei "mediatek,efuse"; 613de103388SMichael Mei reg = <0 0x08000000 0 0x0010>; 614de103388SMichael Mei #address-cells = <1>; 615de103388SMichael Mei #size-cells = <1>; 616de103388SMichael Mei status = "disabled"; 617de103388SMichael Mei }; 618de103388SMichael Mei 619e526c9bcSBen Ho gic: interrupt-controller@c000000 { 620e526c9bcSBen Ho compatible = "arm,gic-v3"; 621e526c9bcSBen Ho #interrupt-cells = <4>; 622e526c9bcSBen Ho interrupt-parent = <&gic>; 623e526c9bcSBen Ho interrupt-controller; 624e526c9bcSBen Ho reg = <0 0x0c000000 0 0x40000>, /* GICD */ 625e526c9bcSBen Ho <0 0x0c100000 0 0x200000>, /* GICR */ 626e526c9bcSBen Ho <0 0x0c400000 0 0x2000>, /* GICC */ 627e526c9bcSBen Ho <0 0x0c410000 0 0x1000>, /* GICH */ 628e526c9bcSBen Ho <0 0x0c420000 0 0x2000>; /* GICV */ 629e526c9bcSBen Ho 630e526c9bcSBen Ho interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH 0>; 631e526c9bcSBen Ho ppi-partitions { 632e526c9bcSBen Ho ppi_cluster0: interrupt-partition-0 { 633e526c9bcSBen Ho affinity = <&cpu0 &cpu1 &cpu2 &cpu3>; 634e526c9bcSBen Ho }; 635e526c9bcSBen Ho ppi_cluster1: interrupt-partition-1 { 636e526c9bcSBen Ho affinity = <&cpu4 &cpu5 &cpu6 &cpu7>; 637e526c9bcSBen Ho }; 638e526c9bcSBen Ho }; 639e526c9bcSBen Ho }; 640e526c9bcSBen Ho 641e526c9bcSBen Ho mcucfg: syscon@c530000 { 642e526c9bcSBen Ho compatible = "mediatek,mt8183-mcucfg", "syscon"; 643e526c9bcSBen Ho reg = <0 0x0c530000 0 0x1000>; 644e526c9bcSBen Ho #clock-cells = <1>; 645e526c9bcSBen Ho }; 646e526c9bcSBen Ho 647e526c9bcSBen Ho sysirq: interrupt-controller@c530a80 { 648e526c9bcSBen Ho compatible = "mediatek,mt8183-sysirq", 649e526c9bcSBen Ho "mediatek,mt6577-sysirq"; 650e526c9bcSBen Ho interrupt-controller; 651e526c9bcSBen Ho #interrupt-cells = <3>; 652e526c9bcSBen Ho interrupt-parent = <&gic>; 653e526c9bcSBen Ho reg = <0 0x0c530a80 0 0x50>; 654e526c9bcSBen Ho }; 655e526c9bcSBen Ho 6567781083fSSeiya Wang cpu_debug0: cpu-debug@d410000 { 6577781083fSSeiya Wang compatible = "arm,coresight-cpu-debug", "arm,primecell"; 6587781083fSSeiya Wang reg = <0x0 0xd410000 0x0 0x1000>; 6597781083fSSeiya Wang clocks = <&infracfg CLK_INFRA_DEBUGSYS>; 6607781083fSSeiya Wang clock-names = "apb_pclk"; 6617781083fSSeiya Wang cpu = <&cpu0>; 6627781083fSSeiya Wang }; 6637781083fSSeiya Wang 6647781083fSSeiya Wang cpu_debug1: cpu-debug@d510000 { 6657781083fSSeiya Wang compatible = "arm,coresight-cpu-debug", "arm,primecell"; 6667781083fSSeiya Wang reg = <0x0 0xd510000 0x0 0x1000>; 6677781083fSSeiya Wang clocks = <&infracfg CLK_INFRA_DEBUGSYS>; 6687781083fSSeiya Wang clock-names = "apb_pclk"; 6697781083fSSeiya Wang cpu = <&cpu1>; 6707781083fSSeiya Wang }; 6717781083fSSeiya Wang 6727781083fSSeiya Wang cpu_debug2: cpu-debug@d610000 { 6737781083fSSeiya Wang compatible = "arm,coresight-cpu-debug", "arm,primecell"; 6747781083fSSeiya Wang reg = <0x0 0xd610000 0x0 0x1000>; 6757781083fSSeiya Wang clocks = <&infracfg CLK_INFRA_DEBUGSYS>; 6767781083fSSeiya Wang clock-names = "apb_pclk"; 6777781083fSSeiya Wang cpu = <&cpu2>; 6787781083fSSeiya Wang }; 6797781083fSSeiya Wang 6807781083fSSeiya Wang cpu_debug3: cpu-debug@d710000 { 6817781083fSSeiya Wang compatible = "arm,coresight-cpu-debug", "arm,primecell"; 6827781083fSSeiya Wang reg = <0x0 0xd710000 0x0 0x1000>; 6837781083fSSeiya Wang clocks = <&infracfg CLK_INFRA_DEBUGSYS>; 6847781083fSSeiya Wang clock-names = "apb_pclk"; 6857781083fSSeiya Wang cpu = <&cpu3>; 6867781083fSSeiya Wang }; 6877781083fSSeiya Wang 6887781083fSSeiya Wang cpu_debug4: cpu-debug@d810000 { 6897781083fSSeiya Wang compatible = "arm,coresight-cpu-debug", "arm,primecell"; 6907781083fSSeiya Wang reg = <0x0 0xd810000 0x0 0x1000>; 6917781083fSSeiya Wang clocks = <&infracfg CLK_INFRA_DEBUGSYS>; 6927781083fSSeiya Wang clock-names = "apb_pclk"; 6937781083fSSeiya Wang cpu = <&cpu4>; 6947781083fSSeiya Wang }; 6957781083fSSeiya Wang 6967781083fSSeiya Wang cpu_debug5: cpu-debug@d910000 { 6977781083fSSeiya Wang compatible = "arm,coresight-cpu-debug", "arm,primecell"; 6987781083fSSeiya Wang reg = <0x0 0xd910000 0x0 0x1000>; 6997781083fSSeiya Wang clocks = <&infracfg CLK_INFRA_DEBUGSYS>; 7007781083fSSeiya Wang clock-names = "apb_pclk"; 7017781083fSSeiya Wang cpu = <&cpu5>; 7027781083fSSeiya Wang }; 7037781083fSSeiya Wang 7047781083fSSeiya Wang cpu_debug6: cpu-debug@da10000 { 7057781083fSSeiya Wang compatible = "arm,coresight-cpu-debug", "arm,primecell"; 7067781083fSSeiya Wang reg = <0x0 0xda10000 0x0 0x1000>; 7077781083fSSeiya Wang clocks = <&infracfg CLK_INFRA_DEBUGSYS>; 7087781083fSSeiya Wang clock-names = "apb_pclk"; 7097781083fSSeiya Wang cpu = <&cpu6>; 7107781083fSSeiya Wang }; 7117781083fSSeiya Wang 7127781083fSSeiya Wang cpu_debug7: cpu-debug@db10000 { 7137781083fSSeiya Wang compatible = "arm,coresight-cpu-debug", "arm,primecell"; 7147781083fSSeiya Wang reg = <0x0 0xdb10000 0x0 0x1000>; 7157781083fSSeiya Wang clocks = <&infracfg CLK_INFRA_DEBUGSYS>; 7167781083fSSeiya Wang clock-names = "apb_pclk"; 7177781083fSSeiya Wang cpu = <&cpu7>; 7187781083fSSeiya Wang }; 7197781083fSSeiya Wang 720e526c9bcSBen Ho topckgen: syscon@10000000 { 721e526c9bcSBen Ho compatible = "mediatek,mt8183-topckgen", "syscon"; 722e526c9bcSBen Ho reg = <0 0x10000000 0 0x1000>; 723e526c9bcSBen Ho #clock-cells = <1>; 724e526c9bcSBen Ho }; 725e526c9bcSBen Ho 726e526c9bcSBen Ho infracfg: syscon@10001000 { 727e526c9bcSBen Ho compatible = "mediatek,mt8183-infracfg", "syscon"; 728e526c9bcSBen Ho reg = <0 0x10001000 0 0x1000>; 729e526c9bcSBen Ho #clock-cells = <1>; 730a845ad16Syong.liang #reset-cells = <1>; 731e526c9bcSBen Ho }; 732e526c9bcSBen Ho 73372704ac6SEnric Balletbo i Serra pericfg: syscon@10003000 { 73472704ac6SEnric Balletbo i Serra compatible = "mediatek,mt8183-pericfg", "syscon"; 73572704ac6SEnric Balletbo i Serra reg = <0 0x10003000 0 0x1000>; 73672704ac6SEnric Balletbo i Serra #clock-cells = <1>; 73772704ac6SEnric Balletbo i Serra }; 73872704ac6SEnric Balletbo i Serra 739da719a35SZhiyong Tao pio: pinctrl@10005000 { 740da719a35SZhiyong Tao compatible = "mediatek,mt8183-pinctrl"; 741da719a35SZhiyong Tao reg = <0 0x10005000 0 0x1000>, 742da719a35SZhiyong Tao <0 0x11f20000 0 0x1000>, 743da719a35SZhiyong Tao <0 0x11e80000 0 0x1000>, 744da719a35SZhiyong Tao <0 0x11e70000 0 0x1000>, 745da719a35SZhiyong Tao <0 0x11e90000 0 0x1000>, 746da719a35SZhiyong Tao <0 0x11d30000 0 0x1000>, 747da719a35SZhiyong Tao <0 0x11d20000 0 0x1000>, 748da719a35SZhiyong Tao <0 0x11c50000 0 0x1000>, 749da719a35SZhiyong Tao <0 0x11f30000 0 0x1000>, 750da719a35SZhiyong Tao <0 0x1000b000 0 0x1000>; 751da719a35SZhiyong Tao reg-names = "iocfg0", "iocfg1", "iocfg2", 752da719a35SZhiyong Tao "iocfg3", "iocfg4", "iocfg5", 753da719a35SZhiyong Tao "iocfg6", "iocfg7", "iocfg8", 754da719a35SZhiyong Tao "eint"; 755da719a35SZhiyong Tao gpio-controller; 756da719a35SZhiyong Tao #gpio-cells = <2>; 757da719a35SZhiyong Tao gpio-ranges = <&pio 0 0 192>; 758da719a35SZhiyong Tao interrupt-controller; 759da719a35SZhiyong Tao interrupts = <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>; 760da719a35SZhiyong Tao #interrupt-cells = <2>; 761da719a35SZhiyong Tao }; 762da719a35SZhiyong Tao 76337fb78b9SMatthias Brugger scpsys: syscon@10006000 { 76437fb78b9SMatthias Brugger compatible = "syscon", "simple-mfd"; 76537fb78b9SMatthias Brugger reg = <0 0x10006000 0 0x1000>; 76637fb78b9SMatthias Brugger #power-domain-cells = <1>; 76737fb78b9SMatthias Brugger 76837fb78b9SMatthias Brugger /* System Power Manager */ 76937fb78b9SMatthias Brugger spm: power-controller { 77037fb78b9SMatthias Brugger compatible = "mediatek,mt8183-power-controller"; 77137fb78b9SMatthias Brugger #address-cells = <1>; 77237fb78b9SMatthias Brugger #size-cells = <0>; 77337fb78b9SMatthias Brugger #power-domain-cells = <1>; 77437fb78b9SMatthias Brugger 77537fb78b9SMatthias Brugger /* power domain of the SoC */ 77637fb78b9SMatthias Brugger power-domain@MT8183_POWER_DOMAIN_AUDIO { 77737fb78b9SMatthias Brugger reg = <MT8183_POWER_DOMAIN_AUDIO>; 77837fb78b9SMatthias Brugger clocks = <&topckgen CLK_TOP_MUX_AUD_INTBUS>, 77937fb78b9SMatthias Brugger <&infracfg CLK_INFRA_AUDIO>, 78037fb78b9SMatthias Brugger <&infracfg CLK_INFRA_AUDIO_26M_BCLK>; 78137fb78b9SMatthias Brugger clock-names = "audio", "audio1", "audio2"; 78237fb78b9SMatthias Brugger #power-domain-cells = <0>; 78337fb78b9SMatthias Brugger }; 78437fb78b9SMatthias Brugger 78537fb78b9SMatthias Brugger power-domain@MT8183_POWER_DOMAIN_CONN { 78637fb78b9SMatthias Brugger reg = <MT8183_POWER_DOMAIN_CONN>; 78737fb78b9SMatthias Brugger mediatek,infracfg = <&infracfg>; 78837fb78b9SMatthias Brugger #power-domain-cells = <0>; 78937fb78b9SMatthias Brugger }; 79037fb78b9SMatthias Brugger 79137fb78b9SMatthias Brugger power-domain@MT8183_POWER_DOMAIN_MFG_ASYNC { 79237fb78b9SMatthias Brugger reg = <MT8183_POWER_DOMAIN_MFG_ASYNC>; 79337fb78b9SMatthias Brugger clocks = <&topckgen CLK_TOP_MUX_MFG>; 79437fb78b9SMatthias Brugger clock-names = "mfg"; 79537fb78b9SMatthias Brugger #address-cells = <1>; 79637fb78b9SMatthias Brugger #size-cells = <0>; 79737fb78b9SMatthias Brugger #power-domain-cells = <1>; 79837fb78b9SMatthias Brugger 7999e1b7d00SHsin-Yi Wang mfg: power-domain@MT8183_POWER_DOMAIN_MFG { 80037fb78b9SMatthias Brugger reg = <MT8183_POWER_DOMAIN_MFG>; 80137fb78b9SMatthias Brugger #address-cells = <1>; 80237fb78b9SMatthias Brugger #size-cells = <0>; 80337fb78b9SMatthias Brugger #power-domain-cells = <1>; 80437fb78b9SMatthias Brugger 80537fb78b9SMatthias Brugger power-domain@MT8183_POWER_DOMAIN_MFG_CORE0 { 80637fb78b9SMatthias Brugger reg = <MT8183_POWER_DOMAIN_MFG_CORE0>; 80737fb78b9SMatthias Brugger #power-domain-cells = <0>; 80837fb78b9SMatthias Brugger }; 80937fb78b9SMatthias Brugger 81037fb78b9SMatthias Brugger power-domain@MT8183_POWER_DOMAIN_MFG_CORE1 { 81137fb78b9SMatthias Brugger reg = <MT8183_POWER_DOMAIN_MFG_CORE1>; 81237fb78b9SMatthias Brugger #power-domain-cells = <0>; 81337fb78b9SMatthias Brugger }; 81437fb78b9SMatthias Brugger 81537fb78b9SMatthias Brugger power-domain@MT8183_POWER_DOMAIN_MFG_2D { 81637fb78b9SMatthias Brugger reg = <MT8183_POWER_DOMAIN_MFG_2D>; 81737fb78b9SMatthias Brugger mediatek,infracfg = <&infracfg>; 81837fb78b9SMatthias Brugger #power-domain-cells = <0>; 81937fb78b9SMatthias Brugger }; 82037fb78b9SMatthias Brugger }; 82137fb78b9SMatthias Brugger }; 82237fb78b9SMatthias Brugger 82337fb78b9SMatthias Brugger power-domain@MT8183_POWER_DOMAIN_DISP { 82437fb78b9SMatthias Brugger reg = <MT8183_POWER_DOMAIN_DISP>; 82537fb78b9SMatthias Brugger clocks = <&topckgen CLK_TOP_MUX_MM>, 82637fb78b9SMatthias Brugger <&mmsys CLK_MM_SMI_COMMON>, 82737fb78b9SMatthias Brugger <&mmsys CLK_MM_SMI_LARB0>, 82837fb78b9SMatthias Brugger <&mmsys CLK_MM_SMI_LARB1>, 82937fb78b9SMatthias Brugger <&mmsys CLK_MM_GALS_COMM0>, 83037fb78b9SMatthias Brugger <&mmsys CLK_MM_GALS_COMM1>, 83137fb78b9SMatthias Brugger <&mmsys CLK_MM_GALS_CCU2MM>, 83237fb78b9SMatthias Brugger <&mmsys CLK_MM_GALS_IPU12MM>, 83337fb78b9SMatthias Brugger <&mmsys CLK_MM_GALS_IMG2MM>, 83437fb78b9SMatthias Brugger <&mmsys CLK_MM_GALS_CAM2MM>, 83537fb78b9SMatthias Brugger <&mmsys CLK_MM_GALS_IPU2MM>; 83637fb78b9SMatthias Brugger clock-names = "mm", "mm-0", "mm-1", "mm-2", "mm-3", 83737fb78b9SMatthias Brugger "mm-4", "mm-5", "mm-6", "mm-7", 83837fb78b9SMatthias Brugger "mm-8", "mm-9"; 83937fb78b9SMatthias Brugger mediatek,infracfg = <&infracfg>; 84037fb78b9SMatthias Brugger mediatek,smi = <&smi_common>; 84137fb78b9SMatthias Brugger #address-cells = <1>; 84237fb78b9SMatthias Brugger #size-cells = <0>; 84337fb78b9SMatthias Brugger #power-domain-cells = <1>; 84437fb78b9SMatthias Brugger 84537fb78b9SMatthias Brugger power-domain@MT8183_POWER_DOMAIN_CAM { 84637fb78b9SMatthias Brugger reg = <MT8183_POWER_DOMAIN_CAM>; 84737fb78b9SMatthias Brugger clocks = <&topckgen CLK_TOP_MUX_CAM>, 84837fb78b9SMatthias Brugger <&camsys CLK_CAM_LARB6>, 84937fb78b9SMatthias Brugger <&camsys CLK_CAM_LARB3>, 85037fb78b9SMatthias Brugger <&camsys CLK_CAM_SENINF>, 85137fb78b9SMatthias Brugger <&camsys CLK_CAM_CAMSV0>, 85237fb78b9SMatthias Brugger <&camsys CLK_CAM_CAMSV1>, 85337fb78b9SMatthias Brugger <&camsys CLK_CAM_CAMSV2>, 85437fb78b9SMatthias Brugger <&camsys CLK_CAM_CCU>; 85537fb78b9SMatthias Brugger clock-names = "cam", "cam-0", "cam-1", 85637fb78b9SMatthias Brugger "cam-2", "cam-3", "cam-4", 85737fb78b9SMatthias Brugger "cam-5", "cam-6"; 85837fb78b9SMatthias Brugger mediatek,infracfg = <&infracfg>; 85937fb78b9SMatthias Brugger mediatek,smi = <&smi_common>; 86037fb78b9SMatthias Brugger #power-domain-cells = <0>; 86137fb78b9SMatthias Brugger }; 86237fb78b9SMatthias Brugger 86337fb78b9SMatthias Brugger power-domain@MT8183_POWER_DOMAIN_ISP { 86437fb78b9SMatthias Brugger reg = <MT8183_POWER_DOMAIN_ISP>; 86537fb78b9SMatthias Brugger clocks = <&topckgen CLK_TOP_MUX_IMG>, 86637fb78b9SMatthias Brugger <&imgsys CLK_IMG_LARB5>, 86737fb78b9SMatthias Brugger <&imgsys CLK_IMG_LARB2>; 86837fb78b9SMatthias Brugger clock-names = "isp", "isp-0", "isp-1"; 86937fb78b9SMatthias Brugger mediatek,infracfg = <&infracfg>; 87037fb78b9SMatthias Brugger mediatek,smi = <&smi_common>; 87137fb78b9SMatthias Brugger #power-domain-cells = <0>; 87237fb78b9SMatthias Brugger }; 87337fb78b9SMatthias Brugger 87437fb78b9SMatthias Brugger power-domain@MT8183_POWER_DOMAIN_VDEC { 87537fb78b9SMatthias Brugger reg = <MT8183_POWER_DOMAIN_VDEC>; 87637fb78b9SMatthias Brugger mediatek,smi = <&smi_common>; 87737fb78b9SMatthias Brugger #power-domain-cells = <0>; 87837fb78b9SMatthias Brugger }; 87937fb78b9SMatthias Brugger 88037fb78b9SMatthias Brugger power-domain@MT8183_POWER_DOMAIN_VENC { 88137fb78b9SMatthias Brugger reg = <MT8183_POWER_DOMAIN_VENC>; 88237fb78b9SMatthias Brugger mediatek,smi = <&smi_common>; 88337fb78b9SMatthias Brugger #power-domain-cells = <0>; 88437fb78b9SMatthias Brugger }; 88537fb78b9SMatthias Brugger 88637fb78b9SMatthias Brugger power-domain@MT8183_POWER_DOMAIN_VPU_TOP { 88737fb78b9SMatthias Brugger reg = <MT8183_POWER_DOMAIN_VPU_TOP>; 88837fb78b9SMatthias Brugger clocks = <&topckgen CLK_TOP_MUX_IPU_IF>, 88937fb78b9SMatthias Brugger <&topckgen CLK_TOP_MUX_DSP>, 89037fb78b9SMatthias Brugger <&ipu_conn CLK_IPU_CONN_IPU>, 89137fb78b9SMatthias Brugger <&ipu_conn CLK_IPU_CONN_AHB>, 89237fb78b9SMatthias Brugger <&ipu_conn CLK_IPU_CONN_AXI>, 89337fb78b9SMatthias Brugger <&ipu_conn CLK_IPU_CONN_ISP>, 89437fb78b9SMatthias Brugger <&ipu_conn CLK_IPU_CONN_CAM_ADL>, 89537fb78b9SMatthias Brugger <&ipu_conn CLK_IPU_CONN_IMG_ADL>; 89637fb78b9SMatthias Brugger clock-names = "vpu", "vpu1", "vpu-0", "vpu-1", 89737fb78b9SMatthias Brugger "vpu-2", "vpu-3", "vpu-4", "vpu-5"; 89837fb78b9SMatthias Brugger mediatek,infracfg = <&infracfg>; 89937fb78b9SMatthias Brugger mediatek,smi = <&smi_common>; 90037fb78b9SMatthias Brugger #address-cells = <1>; 90137fb78b9SMatthias Brugger #size-cells = <0>; 90237fb78b9SMatthias Brugger #power-domain-cells = <1>; 90337fb78b9SMatthias Brugger 90437fb78b9SMatthias Brugger power-domain@MT8183_POWER_DOMAIN_VPU_CORE0 { 90537fb78b9SMatthias Brugger reg = <MT8183_POWER_DOMAIN_VPU_CORE0>; 90637fb78b9SMatthias Brugger clocks = <&topckgen CLK_TOP_MUX_DSP1>; 90737fb78b9SMatthias Brugger clock-names = "vpu2"; 90837fb78b9SMatthias Brugger mediatek,infracfg = <&infracfg>; 90937fb78b9SMatthias Brugger #power-domain-cells = <0>; 91037fb78b9SMatthias Brugger }; 91137fb78b9SMatthias Brugger 91237fb78b9SMatthias Brugger power-domain@MT8183_POWER_DOMAIN_VPU_CORE1 { 91337fb78b9SMatthias Brugger reg = <MT8183_POWER_DOMAIN_VPU_CORE1>; 91437fb78b9SMatthias Brugger clocks = <&topckgen CLK_TOP_MUX_DSP2>; 91537fb78b9SMatthias Brugger clock-names = "vpu3"; 91637fb78b9SMatthias Brugger mediatek,infracfg = <&infracfg>; 91737fb78b9SMatthias Brugger #power-domain-cells = <0>; 91837fb78b9SMatthias Brugger }; 91937fb78b9SMatthias Brugger }; 92037fb78b9SMatthias Brugger }; 92137fb78b9SMatthias Brugger }; 92237fb78b9SMatthias Brugger }; 92337fb78b9SMatthias Brugger 924a39f8425Syong.liang watchdog: watchdog@10007000 { 925f866c471SCrystal Guo compatible = "mediatek,mt8183-wdt"; 926a39f8425Syong.liang reg = <0 0x10007000 0 0x100>; 927a39f8425Syong.liang #reset-cells = <1>; 928a39f8425Syong.liang }; 929a39f8425Syong.liang 930e526c9bcSBen Ho apmixedsys: syscon@1000c000 { 931e526c9bcSBen Ho compatible = "mediatek,mt8183-apmixedsys", "syscon"; 932e526c9bcSBen Ho reg = <0 0x1000c000 0 0x1000>; 933e526c9bcSBen Ho #clock-cells = <1>; 934e526c9bcSBen Ho }; 935e526c9bcSBen Ho 936e526c9bcSBen Ho pwrap: pwrap@1000d000 { 937e526c9bcSBen Ho compatible = "mediatek,mt8183-pwrap"; 938e526c9bcSBen Ho reg = <0 0x1000d000 0 0x1000>; 939e526c9bcSBen Ho reg-names = "pwrap"; 940cac33c10SHsin-Hsiung Wang interrupts = <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>; 941e526c9bcSBen Ho clocks = <&topckgen CLK_TOP_MUX_PMICSPI>, 942e526c9bcSBen Ho <&infracfg CLK_INFRA_PMIC_AP>; 943e526c9bcSBen Ho clock-names = "spi", "wrap"; 944e526c9bcSBen Ho }; 945e526c9bcSBen Ho 9461652dbf7SEddie Huang scp: scp@10500000 { 9471652dbf7SEddie Huang compatible = "mediatek,mt8183-scp"; 9481652dbf7SEddie Huang reg = <0 0x10500000 0 0x80000>, 9491652dbf7SEddie Huang <0 0x105c0000 0 0x19080>; 9501652dbf7SEddie Huang reg-names = "sram", "cfg"; 9511652dbf7SEddie Huang interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>; 9521652dbf7SEddie Huang clocks = <&infracfg CLK_INFRA_SCPSYS>; 9531652dbf7SEddie Huang clock-names = "main"; 9541652dbf7SEddie Huang memory-region = <&scp_mem_reserved>; 9551652dbf7SEddie Huang status = "disabled"; 9561652dbf7SEddie Huang }; 9571652dbf7SEddie Huang 9585bc8e287SDehui Sun systimer: timer@10017000 { 9595bc8e287SDehui Sun compatible = "mediatek,mt8183-timer", 9605bc8e287SDehui Sun "mediatek,mt6765-timer"; 9615bc8e287SDehui Sun reg = <0 0x10017000 0 0x1000>; 9625bc8e287SDehui Sun interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>; 9635bc8e287SDehui Sun clocks = <&topckgen CLK_TOP_CLK13M>; 9645bc8e287SDehui Sun clock-names = "clk13m"; 9655bc8e287SDehui Sun }; 9665bc8e287SDehui Sun 967c6080916SEnric Balletbo i Serra iommu: iommu@10205000 { 968c6080916SEnric Balletbo i Serra compatible = "mediatek,mt8183-m4u"; 969c6080916SEnric Balletbo i Serra reg = <0 0x10205000 0 0x1000>; 970c6080916SEnric Balletbo i Serra interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_LOW>; 97133c7874bSNícolas F. R. A. Prado mediatek,larbs = <&larb0>, <&larb1>, <&larb2>, <&larb3>, 97233c7874bSNícolas F. R. A. Prado <&larb4>, <&larb5>, <&larb6>; 973c6080916SEnric Balletbo i Serra #iommu-cells = <1>; 974c6080916SEnric Balletbo i Serra }; 975c6080916SEnric Balletbo i Serra 976d3c306e3SBibby Hsieh gce: mailbox@10238000 { 977d3c306e3SBibby Hsieh compatible = "mediatek,mt8183-gce"; 978d3c306e3SBibby Hsieh reg = <0 0x10238000 0 0x4000>; 979d3c306e3SBibby Hsieh interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_LOW>; 980e55c56dfSFabien Parent #mbox-cells = <2>; 981d3c306e3SBibby Hsieh clocks = <&infracfg CLK_INFRA_GCE>; 982d3c306e3SBibby Hsieh clock-names = "gce"; 983d3c306e3SBibby Hsieh }; 984d3c306e3SBibby Hsieh 985eb59b353SZhiyong Tao auxadc: auxadc@11001000 { 986eb59b353SZhiyong Tao compatible = "mediatek,mt8183-auxadc", 987eb59b353SZhiyong Tao "mediatek,mt8173-auxadc"; 988eb59b353SZhiyong Tao reg = <0 0x11001000 0 0x1000>; 989eb59b353SZhiyong Tao clocks = <&infracfg CLK_INFRA_AUXADC>; 990eb59b353SZhiyong Tao clock-names = "main"; 991eb59b353SZhiyong Tao #io-channel-cells = <1>; 992eb59b353SZhiyong Tao status = "disabled"; 993eb59b353SZhiyong Tao }; 994eb59b353SZhiyong Tao 995e526c9bcSBen Ho uart0: serial@11002000 { 996e526c9bcSBen Ho compatible = "mediatek,mt8183-uart", 997e526c9bcSBen Ho "mediatek,mt6577-uart"; 998e526c9bcSBen Ho reg = <0 0x11002000 0 0x1000>; 999e526c9bcSBen Ho interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_LOW>; 1000e526c9bcSBen Ho clocks = <&clk26m>, <&infracfg CLK_INFRA_UART0>; 1001e526c9bcSBen Ho clock-names = "baud", "bus"; 1002e526c9bcSBen Ho status = "disabled"; 1003e526c9bcSBen Ho }; 1004e526c9bcSBen Ho 1005e526c9bcSBen Ho uart1: serial@11003000 { 1006e526c9bcSBen Ho compatible = "mediatek,mt8183-uart", 1007e526c9bcSBen Ho "mediatek,mt6577-uart"; 1008e526c9bcSBen Ho reg = <0 0x11003000 0 0x1000>; 1009e526c9bcSBen Ho interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_LOW>; 1010e526c9bcSBen Ho clocks = <&clk26m>, <&infracfg CLK_INFRA_UART1>; 1011e526c9bcSBen Ho clock-names = "baud", "bus"; 1012e526c9bcSBen Ho status = "disabled"; 1013e526c9bcSBen Ho }; 1014e526c9bcSBen Ho 1015e526c9bcSBen Ho uart2: serial@11004000 { 1016e526c9bcSBen Ho compatible = "mediatek,mt8183-uart", 1017e526c9bcSBen Ho "mediatek,mt6577-uart"; 1018e526c9bcSBen Ho reg = <0 0x11004000 0 0x1000>; 1019e526c9bcSBen Ho interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_LOW>; 1020e526c9bcSBen Ho clocks = <&clk26m>, <&infracfg CLK_INFRA_UART2>; 1021e526c9bcSBen Ho clock-names = "baud", "bus"; 1022e526c9bcSBen Ho status = "disabled"; 1023e526c9bcSBen Ho }; 1024e526c9bcSBen Ho 1025251137b8SQii Wang i2c6: i2c@11005000 { 1026251137b8SQii Wang compatible = "mediatek,mt8183-i2c"; 1027251137b8SQii Wang reg = <0 0x11005000 0 0x1000>, 1028251137b8SQii Wang <0 0x11000600 0 0x80>; 1029251137b8SQii Wang interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_LOW>; 1030251137b8SQii Wang clocks = <&infracfg CLK_INFRA_I2C6>, 1031251137b8SQii Wang <&infracfg CLK_INFRA_AP_DMA>; 1032251137b8SQii Wang clock-names = "main", "dma"; 1033251137b8SQii Wang clock-div = <1>; 1034251137b8SQii Wang #address-cells = <1>; 1035251137b8SQii Wang #size-cells = <0>; 1036251137b8SQii Wang status = "disabled"; 1037251137b8SQii Wang }; 1038251137b8SQii Wang 1039251137b8SQii Wang i2c0: i2c@11007000 { 1040251137b8SQii Wang compatible = "mediatek,mt8183-i2c"; 1041251137b8SQii Wang reg = <0 0x11007000 0 0x1000>, 1042251137b8SQii Wang <0 0x11000080 0 0x80>; 1043251137b8SQii Wang interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_LOW>; 1044251137b8SQii Wang clocks = <&infracfg CLK_INFRA_I2C0>, 1045251137b8SQii Wang <&infracfg CLK_INFRA_AP_DMA>; 1046251137b8SQii Wang clock-names = "main", "dma"; 1047251137b8SQii Wang clock-div = <1>; 1048251137b8SQii Wang #address-cells = <1>; 1049251137b8SQii Wang #size-cells = <0>; 1050251137b8SQii Wang status = "disabled"; 1051251137b8SQii Wang }; 1052251137b8SQii Wang 1053251137b8SQii Wang i2c4: i2c@11008000 { 1054251137b8SQii Wang compatible = "mediatek,mt8183-i2c"; 1055251137b8SQii Wang reg = <0 0x11008000 0 0x1000>, 1056251137b8SQii Wang <0 0x11000100 0 0x80>; 1057251137b8SQii Wang interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_LOW>; 1058251137b8SQii Wang clocks = <&infracfg CLK_INFRA_I2C1>, 1059251137b8SQii Wang <&infracfg CLK_INFRA_AP_DMA>, 1060251137b8SQii Wang <&infracfg CLK_INFRA_I2C1_ARBITER>; 1061251137b8SQii Wang clock-names = "main", "dma","arb"; 1062251137b8SQii Wang clock-div = <1>; 1063251137b8SQii Wang #address-cells = <1>; 1064251137b8SQii Wang #size-cells = <0>; 1065251137b8SQii Wang status = "disabled"; 1066251137b8SQii Wang }; 1067251137b8SQii Wang 1068251137b8SQii Wang i2c2: i2c@11009000 { 1069251137b8SQii Wang compatible = "mediatek,mt8183-i2c"; 1070251137b8SQii Wang reg = <0 0x11009000 0 0x1000>, 1071251137b8SQii Wang <0 0x11000280 0 0x80>; 1072251137b8SQii Wang interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_LOW>; 1073251137b8SQii Wang clocks = <&infracfg CLK_INFRA_I2C2>, 1074251137b8SQii Wang <&infracfg CLK_INFRA_AP_DMA>, 1075251137b8SQii Wang <&infracfg CLK_INFRA_I2C2_ARBITER>; 1076251137b8SQii Wang clock-names = "main", "dma", "arb"; 1077251137b8SQii Wang clock-div = <1>; 1078251137b8SQii Wang #address-cells = <1>; 1079251137b8SQii Wang #size-cells = <0>; 1080251137b8SQii Wang status = "disabled"; 1081251137b8SQii Wang }; 1082251137b8SQii Wang 10838e2dd0f9SErin Lo spi0: spi@1100a000 { 10848e2dd0f9SErin Lo compatible = "mediatek,mt8183-spi"; 10858e2dd0f9SErin Lo #address-cells = <1>; 10868e2dd0f9SErin Lo #size-cells = <0>; 10878e2dd0f9SErin Lo reg = <0 0x1100a000 0 0x1000>; 10888e2dd0f9SErin Lo interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_LOW>; 10898e2dd0f9SErin Lo clocks = <&topckgen CLK_TOP_SYSPLL_D5_D2>, 10908e2dd0f9SErin Lo <&topckgen CLK_TOP_MUX_SPI>, 10918e2dd0f9SErin Lo <&infracfg CLK_INFRA_SPI0>; 10928e2dd0f9SErin Lo clock-names = "parent-clk", "sel-clk", "spi-clk"; 10938e2dd0f9SErin Lo status = "disabled"; 10948e2dd0f9SErin Lo }; 10958e2dd0f9SErin Lo 1096*41131266SRoger Lu svs: svs@1100b000 { 1097*41131266SRoger Lu compatible = "mediatek,mt8183-svs"; 1098*41131266SRoger Lu reg = <0 0x1100b000 0 0x1000>; 1099*41131266SRoger Lu interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_LOW>; 1100*41131266SRoger Lu clocks = <&infracfg CLK_INFRA_THERM>; 1101*41131266SRoger Lu clock-names = "main"; 1102*41131266SRoger Lu nvmem-cells = <&svs_calibration>, 1103*41131266SRoger Lu <&thermal_calibration>; 1104*41131266SRoger Lu nvmem-cell-names = "svs-calibration-data", 1105*41131266SRoger Lu "t-calibration-data"; 1106*41131266SRoger Lu }; 1107*41131266SRoger Lu 1108b325ce39Smichael.kao thermal: thermal@1100b000 { 1109b325ce39Smichael.kao #thermal-sensor-cells = <1>; 1110b325ce39Smichael.kao compatible = "mediatek,mt8183-thermal"; 1111b325ce39Smichael.kao reg = <0 0x1100b000 0 0x1000>; 1112b325ce39Smichael.kao clocks = <&infracfg CLK_INFRA_THERM>, 1113b325ce39Smichael.kao <&infracfg CLK_INFRA_AUXADC>; 1114b325ce39Smichael.kao clock-names = "therm", "auxadc"; 1115b325ce39Smichael.kao resets = <&infracfg MT8183_INFRACFG_AO_THERM_SW_RST>; 1116b325ce39Smichael.kao interrupts = <0 76 IRQ_TYPE_LEVEL_LOW>; 1117b325ce39Smichael.kao mediatek,auxadc = <&auxadc>; 1118b325ce39Smichael.kao mediatek,apmixedsys = <&apmixedsys>; 1119b325ce39Smichael.kao nvmem-cells = <&thermal_calibration>; 1120b325ce39Smichael.kao nvmem-cell-names = "calibration-data"; 1121b325ce39Smichael.kao }; 1122b325ce39Smichael.kao 1123507b1b28SMichael Kao thermal_zones: thermal-zones { 1124624f1806SKrzysztof Kozlowski cpu_thermal: cpu-thermal { 1125b325ce39Smichael.kao polling-delay-passive = <100>; 1126b325ce39Smichael.kao polling-delay = <500>; 1127b325ce39Smichael.kao thermal-sensors = <&thermal 0>; 1128b325ce39Smichael.kao sustainable-power = <5000>; 1129fccf4261SMatthias Kaehlcke 1130fccf4261SMatthias Kaehlcke trips { 1131f538437bSMatthias Brugger threshold: trip-point0 { 1132fccf4261SMatthias Kaehlcke temperature = <68000>; 1133fccf4261SMatthias Kaehlcke hysteresis = <2000>; 1134fccf4261SMatthias Kaehlcke type = "passive"; 1135fccf4261SMatthias Kaehlcke }; 1136fccf4261SMatthias Kaehlcke 1137f538437bSMatthias Brugger target: trip-point1 { 1138fccf4261SMatthias Kaehlcke temperature = <80000>; 1139fccf4261SMatthias Kaehlcke hysteresis = <2000>; 1140fccf4261SMatthias Kaehlcke type = "passive"; 1141fccf4261SMatthias Kaehlcke }; 1142fccf4261SMatthias Kaehlcke 1143fccf4261SMatthias Kaehlcke cpu_crit: cpu-crit { 1144fccf4261SMatthias Kaehlcke temperature = <115000>; 1145fccf4261SMatthias Kaehlcke hysteresis = <2000>; 1146fccf4261SMatthias Kaehlcke type = "critical"; 1147fccf4261SMatthias Kaehlcke }; 1148fccf4261SMatthias Kaehlcke }; 1149fccf4261SMatthias Kaehlcke 1150fccf4261SMatthias Kaehlcke cooling-maps { 1151fccf4261SMatthias Kaehlcke map0 { 1152fccf4261SMatthias Kaehlcke trip = <&target>; 1153fccf4261SMatthias Kaehlcke cooling-device = <&cpu0 1154fccf4261SMatthias Kaehlcke THERMAL_NO_LIMIT 1155fccf4261SMatthias Kaehlcke THERMAL_NO_LIMIT>, 1156fccf4261SMatthias Kaehlcke <&cpu1 1157fccf4261SMatthias Kaehlcke THERMAL_NO_LIMIT 1158fccf4261SMatthias Kaehlcke THERMAL_NO_LIMIT>, 1159fccf4261SMatthias Kaehlcke <&cpu2 1160fccf4261SMatthias Kaehlcke THERMAL_NO_LIMIT 1161fccf4261SMatthias Kaehlcke THERMAL_NO_LIMIT>, 1162fccf4261SMatthias Kaehlcke <&cpu3 1163fccf4261SMatthias Kaehlcke THERMAL_NO_LIMIT 1164fccf4261SMatthias Kaehlcke THERMAL_NO_LIMIT>; 1165fccf4261SMatthias Kaehlcke contribution = <3072>; 1166fccf4261SMatthias Kaehlcke }; 1167fccf4261SMatthias Kaehlcke map1 { 1168fccf4261SMatthias Kaehlcke trip = <&target>; 1169fccf4261SMatthias Kaehlcke cooling-device = <&cpu4 1170fccf4261SMatthias Kaehlcke THERMAL_NO_LIMIT 1171fccf4261SMatthias Kaehlcke THERMAL_NO_LIMIT>, 1172fccf4261SMatthias Kaehlcke <&cpu5 1173fccf4261SMatthias Kaehlcke THERMAL_NO_LIMIT 1174fccf4261SMatthias Kaehlcke THERMAL_NO_LIMIT>, 1175fccf4261SMatthias Kaehlcke <&cpu6 1176fccf4261SMatthias Kaehlcke THERMAL_NO_LIMIT 1177fccf4261SMatthias Kaehlcke THERMAL_NO_LIMIT>, 1178fccf4261SMatthias Kaehlcke <&cpu7 1179fccf4261SMatthias Kaehlcke THERMAL_NO_LIMIT 1180fccf4261SMatthias Kaehlcke THERMAL_NO_LIMIT>; 1181fccf4261SMatthias Kaehlcke contribution = <1024>; 1182fccf4261SMatthias Kaehlcke }; 1183fccf4261SMatthias Kaehlcke }; 1184b325ce39Smichael.kao }; 1185b325ce39Smichael.kao 1186b325ce39Smichael.kao /* The tzts1 ~ tzts6 don't need to polling */ 1187b325ce39Smichael.kao /* The tzts1 ~ tzts6 don't need to thermal throttle */ 1188b325ce39Smichael.kao 1189b325ce39Smichael.kao tzts1: tzts1 { 1190b325ce39Smichael.kao polling-delay-passive = <0>; 1191b325ce39Smichael.kao polling-delay = <0>; 1192b325ce39Smichael.kao thermal-sensors = <&thermal 1>; 1193b325ce39Smichael.kao sustainable-power = <5000>; 1194b325ce39Smichael.kao trips {}; 1195b325ce39Smichael.kao cooling-maps {}; 1196b325ce39Smichael.kao }; 1197b325ce39Smichael.kao 1198b325ce39Smichael.kao tzts2: tzts2 { 1199b325ce39Smichael.kao polling-delay-passive = <0>; 1200b325ce39Smichael.kao polling-delay = <0>; 1201b325ce39Smichael.kao thermal-sensors = <&thermal 2>; 1202b325ce39Smichael.kao sustainable-power = <5000>; 1203b325ce39Smichael.kao trips {}; 1204b325ce39Smichael.kao cooling-maps {}; 1205b325ce39Smichael.kao }; 1206b325ce39Smichael.kao 1207b325ce39Smichael.kao tzts3: tzts3 { 1208b325ce39Smichael.kao polling-delay-passive = <0>; 1209b325ce39Smichael.kao polling-delay = <0>; 1210b325ce39Smichael.kao thermal-sensors = <&thermal 3>; 1211b325ce39Smichael.kao sustainable-power = <5000>; 1212b325ce39Smichael.kao trips {}; 1213b325ce39Smichael.kao cooling-maps {}; 1214b325ce39Smichael.kao }; 1215b325ce39Smichael.kao 1216b325ce39Smichael.kao tzts4: tzts4 { 1217b325ce39Smichael.kao polling-delay-passive = <0>; 1218b325ce39Smichael.kao polling-delay = <0>; 1219b325ce39Smichael.kao thermal-sensors = <&thermal 4>; 1220b325ce39Smichael.kao sustainable-power = <5000>; 1221b325ce39Smichael.kao trips {}; 1222b325ce39Smichael.kao cooling-maps {}; 1223b325ce39Smichael.kao }; 1224b325ce39Smichael.kao 1225b325ce39Smichael.kao tzts5: tzts5 { 1226b325ce39Smichael.kao polling-delay-passive = <0>; 1227b325ce39Smichael.kao polling-delay = <0>; 1228b325ce39Smichael.kao thermal-sensors = <&thermal 5>; 1229b325ce39Smichael.kao sustainable-power = <5000>; 1230b325ce39Smichael.kao trips {}; 1231b325ce39Smichael.kao cooling-maps {}; 1232b325ce39Smichael.kao }; 1233b325ce39Smichael.kao 1234b325ce39Smichael.kao tztsABB: tztsABB { 1235b325ce39Smichael.kao polling-delay-passive = <0>; 1236b325ce39Smichael.kao polling-delay = <0>; 1237b325ce39Smichael.kao thermal-sensors = <&thermal 6>; 1238b325ce39Smichael.kao sustainable-power = <5000>; 1239b325ce39Smichael.kao trips {}; 1240b325ce39Smichael.kao cooling-maps {}; 1241b325ce39Smichael.kao }; 1242b325ce39Smichael.kao }; 1243b325ce39Smichael.kao 1244f15722c0SHsin-Yi Wang pwm0: pwm@1100e000 { 1245f15722c0SHsin-Yi Wang compatible = "mediatek,mt8183-disp-pwm"; 1246f15722c0SHsin-Yi Wang reg = <0 0x1100e000 0 0x1000>; 1247f15722c0SHsin-Yi Wang interrupts = <GIC_SPI 128 IRQ_TYPE_LEVEL_LOW>; 12482f99fb6eSEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_DISP>; 1249f15722c0SHsin-Yi Wang #pwm-cells = <2>; 1250f15722c0SHsin-Yi Wang clocks = <&topckgen CLK_TOP_MUX_DISP_PWM>, 1251f15722c0SHsin-Yi Wang <&infracfg CLK_INFRA_DISP_PWM>; 1252f15722c0SHsin-Yi Wang clock-names = "main", "mm"; 1253f15722c0SHsin-Yi Wang }; 1254f15722c0SHsin-Yi Wang 1255afca1c66SFabien Parent pwm1: pwm@11006000 { 1256afca1c66SFabien Parent compatible = "mediatek,mt8183-pwm"; 1257afca1c66SFabien Parent reg = <0 0x11006000 0 0x1000>; 1258afca1c66SFabien Parent #pwm-cells = <2>; 1259afca1c66SFabien Parent clocks = <&infracfg CLK_INFRA_PWM>, 1260afca1c66SFabien Parent <&infracfg CLK_INFRA_PWM_HCLK>, 1261afca1c66SFabien Parent <&infracfg CLK_INFRA_PWM1>, 1262afca1c66SFabien Parent <&infracfg CLK_INFRA_PWM2>, 1263afca1c66SFabien Parent <&infracfg CLK_INFRA_PWM3>, 1264afca1c66SFabien Parent <&infracfg CLK_INFRA_PWM4>; 1265afca1c66SFabien Parent clock-names = "top", "main", "pwm1", "pwm2", "pwm3", 1266afca1c66SFabien Parent "pwm4"; 1267afca1c66SFabien Parent }; 1268afca1c66SFabien Parent 1269251137b8SQii Wang i2c3: i2c@1100f000 { 1270251137b8SQii Wang compatible = "mediatek,mt8183-i2c"; 1271251137b8SQii Wang reg = <0 0x1100f000 0 0x1000>, 1272251137b8SQii Wang <0 0x11000400 0 0x80>; 1273251137b8SQii Wang interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_LOW>; 1274251137b8SQii Wang clocks = <&infracfg CLK_INFRA_I2C3>, 1275251137b8SQii Wang <&infracfg CLK_INFRA_AP_DMA>; 1276251137b8SQii Wang clock-names = "main", "dma"; 1277251137b8SQii Wang clock-div = <1>; 1278251137b8SQii Wang #address-cells = <1>; 1279251137b8SQii Wang #size-cells = <0>; 1280251137b8SQii Wang status = "disabled"; 1281251137b8SQii Wang }; 1282251137b8SQii Wang 12838e2dd0f9SErin Lo spi1: spi@11010000 { 12848e2dd0f9SErin Lo compatible = "mediatek,mt8183-spi"; 12858e2dd0f9SErin Lo #address-cells = <1>; 12868e2dd0f9SErin Lo #size-cells = <0>; 12878e2dd0f9SErin Lo reg = <0 0x11010000 0 0x1000>; 12888e2dd0f9SErin Lo interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_LOW>; 12898e2dd0f9SErin Lo clocks = <&topckgen CLK_TOP_SYSPLL_D5_D2>, 12908e2dd0f9SErin Lo <&topckgen CLK_TOP_MUX_SPI>, 12918e2dd0f9SErin Lo <&infracfg CLK_INFRA_SPI1>; 12928e2dd0f9SErin Lo clock-names = "parent-clk", "sel-clk", "spi-clk"; 12938e2dd0f9SErin Lo status = "disabled"; 12948e2dd0f9SErin Lo }; 12958e2dd0f9SErin Lo 1296251137b8SQii Wang i2c1: i2c@11011000 { 1297251137b8SQii Wang compatible = "mediatek,mt8183-i2c"; 1298251137b8SQii Wang reg = <0 0x11011000 0 0x1000>, 1299251137b8SQii Wang <0 0x11000480 0 0x80>; 1300251137b8SQii Wang interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_LOW>; 1301251137b8SQii Wang clocks = <&infracfg CLK_INFRA_I2C4>, 1302251137b8SQii Wang <&infracfg CLK_INFRA_AP_DMA>; 1303251137b8SQii Wang clock-names = "main", "dma"; 1304251137b8SQii Wang clock-div = <1>; 1305251137b8SQii Wang #address-cells = <1>; 1306251137b8SQii Wang #size-cells = <0>; 1307251137b8SQii Wang status = "disabled"; 1308251137b8SQii Wang }; 1309251137b8SQii Wang 13108e2dd0f9SErin Lo spi2: spi@11012000 { 13118e2dd0f9SErin Lo compatible = "mediatek,mt8183-spi"; 13128e2dd0f9SErin Lo #address-cells = <1>; 13138e2dd0f9SErin Lo #size-cells = <0>; 13148e2dd0f9SErin Lo reg = <0 0x11012000 0 0x1000>; 13158e2dd0f9SErin Lo interrupts = <GIC_SPI 129 IRQ_TYPE_LEVEL_LOW>; 13168e2dd0f9SErin Lo clocks = <&topckgen CLK_TOP_SYSPLL_D5_D2>, 13178e2dd0f9SErin Lo <&topckgen CLK_TOP_MUX_SPI>, 13188e2dd0f9SErin Lo <&infracfg CLK_INFRA_SPI2>; 13198e2dd0f9SErin Lo clock-names = "parent-clk", "sel-clk", "spi-clk"; 13208e2dd0f9SErin Lo status = "disabled"; 13218e2dd0f9SErin Lo }; 13228e2dd0f9SErin Lo 13238e2dd0f9SErin Lo spi3: spi@11013000 { 13248e2dd0f9SErin Lo compatible = "mediatek,mt8183-spi"; 13258e2dd0f9SErin Lo #address-cells = <1>; 13268e2dd0f9SErin Lo #size-cells = <0>; 13278e2dd0f9SErin Lo reg = <0 0x11013000 0 0x1000>; 13288e2dd0f9SErin Lo interrupts = <GIC_SPI 130 IRQ_TYPE_LEVEL_LOW>; 13298e2dd0f9SErin Lo clocks = <&topckgen CLK_TOP_SYSPLL_D5_D2>, 13308e2dd0f9SErin Lo <&topckgen CLK_TOP_MUX_SPI>, 13318e2dd0f9SErin Lo <&infracfg CLK_INFRA_SPI3>; 13328e2dd0f9SErin Lo clock-names = "parent-clk", "sel-clk", "spi-clk"; 13338e2dd0f9SErin Lo status = "disabled"; 13348e2dd0f9SErin Lo }; 13358e2dd0f9SErin Lo 1336251137b8SQii Wang i2c9: i2c@11014000 { 1337251137b8SQii Wang compatible = "mediatek,mt8183-i2c"; 1338251137b8SQii Wang reg = <0 0x11014000 0 0x1000>, 1339251137b8SQii Wang <0 0x11000180 0 0x80>; 1340251137b8SQii Wang interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_LOW>; 1341251137b8SQii Wang clocks = <&infracfg CLK_INFRA_I2C1_IMM>, 1342251137b8SQii Wang <&infracfg CLK_INFRA_AP_DMA>, 1343251137b8SQii Wang <&infracfg CLK_INFRA_I2C1_ARBITER>; 1344251137b8SQii Wang clock-names = "main", "dma", "arb"; 1345251137b8SQii Wang clock-div = <1>; 1346251137b8SQii Wang #address-cells = <1>; 1347251137b8SQii Wang #size-cells = <0>; 1348251137b8SQii Wang status = "disabled"; 1349251137b8SQii Wang }; 1350251137b8SQii Wang 1351251137b8SQii Wang i2c10: i2c@11015000 { 1352251137b8SQii Wang compatible = "mediatek,mt8183-i2c"; 1353251137b8SQii Wang reg = <0 0x11015000 0 0x1000>, 1354251137b8SQii Wang <0 0x11000300 0 0x80>; 1355251137b8SQii Wang interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_LOW>; 1356251137b8SQii Wang clocks = <&infracfg CLK_INFRA_I2C2_IMM>, 1357251137b8SQii Wang <&infracfg CLK_INFRA_AP_DMA>, 1358251137b8SQii Wang <&infracfg CLK_INFRA_I2C2_ARBITER>; 1359251137b8SQii Wang clock-names = "main", "dma", "arb"; 1360251137b8SQii Wang clock-div = <1>; 1361251137b8SQii Wang #address-cells = <1>; 1362251137b8SQii Wang #size-cells = <0>; 1363251137b8SQii Wang status = "disabled"; 1364251137b8SQii Wang }; 1365251137b8SQii Wang 1366251137b8SQii Wang i2c5: i2c@11016000 { 1367251137b8SQii Wang compatible = "mediatek,mt8183-i2c"; 1368251137b8SQii Wang reg = <0 0x11016000 0 0x1000>, 1369251137b8SQii Wang <0 0x11000500 0 0x80>; 1370251137b8SQii Wang interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_LOW>; 1371251137b8SQii Wang clocks = <&infracfg CLK_INFRA_I2C5>, 1372251137b8SQii Wang <&infracfg CLK_INFRA_AP_DMA>, 1373251137b8SQii Wang <&infracfg CLK_INFRA_I2C5_ARBITER>; 1374251137b8SQii Wang clock-names = "main", "dma", "arb"; 1375251137b8SQii Wang clock-div = <1>; 1376251137b8SQii Wang #address-cells = <1>; 1377251137b8SQii Wang #size-cells = <0>; 1378251137b8SQii Wang status = "disabled"; 1379251137b8SQii Wang }; 1380251137b8SQii Wang 1381251137b8SQii Wang i2c11: i2c@11017000 { 1382251137b8SQii Wang compatible = "mediatek,mt8183-i2c"; 1383251137b8SQii Wang reg = <0 0x11017000 0 0x1000>, 1384251137b8SQii Wang <0 0x11000580 0 0x80>; 1385251137b8SQii Wang interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_LOW>; 1386251137b8SQii Wang clocks = <&infracfg CLK_INFRA_I2C5_IMM>, 1387251137b8SQii Wang <&infracfg CLK_INFRA_AP_DMA>, 1388251137b8SQii Wang <&infracfg CLK_INFRA_I2C5_ARBITER>; 1389251137b8SQii Wang clock-names = "main", "dma", "arb"; 1390251137b8SQii Wang clock-div = <1>; 1391251137b8SQii Wang #address-cells = <1>; 1392251137b8SQii Wang #size-cells = <0>; 1393251137b8SQii Wang status = "disabled"; 1394251137b8SQii Wang }; 1395251137b8SQii Wang 13968e2dd0f9SErin Lo spi4: spi@11018000 { 13978e2dd0f9SErin Lo compatible = "mediatek,mt8183-spi"; 13988e2dd0f9SErin Lo #address-cells = <1>; 13998e2dd0f9SErin Lo #size-cells = <0>; 14008e2dd0f9SErin Lo reg = <0 0x11018000 0 0x1000>; 14018e2dd0f9SErin Lo interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_LOW>; 14028e2dd0f9SErin Lo clocks = <&topckgen CLK_TOP_SYSPLL_D5_D2>, 14038e2dd0f9SErin Lo <&topckgen CLK_TOP_MUX_SPI>, 14048e2dd0f9SErin Lo <&infracfg CLK_INFRA_SPI4>; 14058e2dd0f9SErin Lo clock-names = "parent-clk", "sel-clk", "spi-clk"; 14068e2dd0f9SErin Lo status = "disabled"; 14078e2dd0f9SErin Lo }; 14088e2dd0f9SErin Lo 14098e2dd0f9SErin Lo spi5: spi@11019000 { 14108e2dd0f9SErin Lo compatible = "mediatek,mt8183-spi"; 14118e2dd0f9SErin Lo #address-cells = <1>; 14128e2dd0f9SErin Lo #size-cells = <0>; 14138e2dd0f9SErin Lo reg = <0 0x11019000 0 0x1000>; 14148e2dd0f9SErin Lo interrupts = <GIC_SPI 135 IRQ_TYPE_LEVEL_LOW>; 14158e2dd0f9SErin Lo clocks = <&topckgen CLK_TOP_SYSPLL_D5_D2>, 14168e2dd0f9SErin Lo <&topckgen CLK_TOP_MUX_SPI>, 14178e2dd0f9SErin Lo <&infracfg CLK_INFRA_SPI5>; 14188e2dd0f9SErin Lo clock-names = "parent-clk", "sel-clk", "spi-clk"; 14198e2dd0f9SErin Lo status = "disabled"; 14208e2dd0f9SErin Lo }; 14218e2dd0f9SErin Lo 1422251137b8SQii Wang i2c7: i2c@1101a000 { 1423251137b8SQii Wang compatible = "mediatek,mt8183-i2c"; 1424251137b8SQii Wang reg = <0 0x1101a000 0 0x1000>, 1425251137b8SQii Wang <0 0x11000680 0 0x80>; 1426251137b8SQii Wang interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_LOW>; 1427251137b8SQii Wang clocks = <&infracfg CLK_INFRA_I2C7>, 1428251137b8SQii Wang <&infracfg CLK_INFRA_AP_DMA>; 1429251137b8SQii Wang clock-names = "main", "dma"; 1430251137b8SQii Wang clock-div = <1>; 1431251137b8SQii Wang #address-cells = <1>; 1432251137b8SQii Wang #size-cells = <0>; 1433251137b8SQii Wang status = "disabled"; 1434251137b8SQii Wang }; 1435251137b8SQii Wang 1436251137b8SQii Wang i2c8: i2c@1101b000 { 1437251137b8SQii Wang compatible = "mediatek,mt8183-i2c"; 1438251137b8SQii Wang reg = <0 0x1101b000 0 0x1000>, 1439251137b8SQii Wang <0 0x11000700 0 0x80>; 1440251137b8SQii Wang interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_LOW>; 1441251137b8SQii Wang clocks = <&infracfg CLK_INFRA_I2C8>, 1442251137b8SQii Wang <&infracfg CLK_INFRA_AP_DMA>; 1443251137b8SQii Wang clock-names = "main", "dma"; 1444251137b8SQii Wang clock-div = <1>; 1445251137b8SQii Wang #address-cells = <1>; 1446251137b8SQii Wang #size-cells = <0>; 1447251137b8SQii Wang status = "disabled"; 1448251137b8SQii Wang }; 1449251137b8SQii Wang 14506b3bfa37SEnric Balletbo i Serra ssusb: usb@11201000 { 14516b3bfa37SEnric Balletbo i Serra compatible ="mediatek,mt8183-mtu3", "mediatek,mtu3"; 14526b3bfa37SEnric Balletbo i Serra reg = <0 0x11201000 0 0x2e00>, 14536b3bfa37SEnric Balletbo i Serra <0 0x11203e00 0 0x0100>; 14546b3bfa37SEnric Balletbo i Serra reg-names = "mac", "ippc"; 14556b3bfa37SEnric Balletbo i Serra interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_LOW>; 14566b3bfa37SEnric Balletbo i Serra phys = <&u2port0 PHY_TYPE_USB2>, 14576b3bfa37SEnric Balletbo i Serra <&u3port0 PHY_TYPE_USB3>; 14586b3bfa37SEnric Balletbo i Serra clocks = <&infracfg CLK_INFRA_UNIPRO_SCK>, 14596b3bfa37SEnric Balletbo i Serra <&infracfg CLK_INFRA_USB>; 14606b3bfa37SEnric Balletbo i Serra clock-names = "sys_ck", "ref_ck"; 1461d3cbc7f8SChunfeng Yun mediatek,syscon-wakeup = <&pericfg 0x420 101>; 14626b3bfa37SEnric Balletbo i Serra #address-cells = <2>; 14636b3bfa37SEnric Balletbo i Serra #size-cells = <2>; 14646b3bfa37SEnric Balletbo i Serra ranges; 14656b3bfa37SEnric Balletbo i Serra status = "disabled"; 14666b3bfa37SEnric Balletbo i Serra 1467d1c9c70aSChunfeng Yun usb_host: usb@11200000 { 14686b3bfa37SEnric Balletbo i Serra compatible = "mediatek,mt8183-xhci", 14696b3bfa37SEnric Balletbo i Serra "mediatek,mtk-xhci"; 14706b3bfa37SEnric Balletbo i Serra reg = <0 0x11200000 0 0x1000>; 14716b3bfa37SEnric Balletbo i Serra reg-names = "mac"; 14726b3bfa37SEnric Balletbo i Serra interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_LOW>; 14736b3bfa37SEnric Balletbo i Serra clocks = <&infracfg CLK_INFRA_UNIPRO_SCK>, 14746b3bfa37SEnric Balletbo i Serra <&infracfg CLK_INFRA_USB>; 14756b3bfa37SEnric Balletbo i Serra clock-names = "sys_ck", "ref_ck"; 14766b3bfa37SEnric Balletbo i Serra status = "disabled"; 14776b3bfa37SEnric Balletbo i Serra }; 14786b3bfa37SEnric Balletbo i Serra }; 14796b3bfa37SEnric Balletbo i Serra 148013dd23cfSKansho Nishida audiosys: audio-controller@11220000 { 1481e526c9bcSBen Ho compatible = "mediatek,mt8183-audiosys", "syscon"; 1482e526c9bcSBen Ho reg = <0 0x11220000 0 0x1000>; 1483e526c9bcSBen Ho #clock-cells = <1>; 148413dd23cfSKansho Nishida afe: mt8183-afe-pcm { 148513dd23cfSKansho Nishida compatible = "mediatek,mt8183-audio"; 148613dd23cfSKansho Nishida interrupts = <GIC_SPI 161 IRQ_TYPE_LEVEL_LOW>; 148713dd23cfSKansho Nishida resets = <&watchdog MT8183_TOPRGU_AUDIO_SW_RST>; 148813dd23cfSKansho Nishida reset-names = "audiosys"; 148913dd23cfSKansho Nishida power-domains = 149013dd23cfSKansho Nishida <&spm MT8183_POWER_DOMAIN_AUDIO>; 149113dd23cfSKansho Nishida clocks = <&audiosys CLK_AUDIO_AFE>, 149213dd23cfSKansho Nishida <&audiosys CLK_AUDIO_DAC>, 149313dd23cfSKansho Nishida <&audiosys CLK_AUDIO_DAC_PREDIS>, 149413dd23cfSKansho Nishida <&audiosys CLK_AUDIO_ADC>, 149513dd23cfSKansho Nishida <&audiosys CLK_AUDIO_PDN_ADDA6_ADC>, 149613dd23cfSKansho Nishida <&audiosys CLK_AUDIO_22M>, 149713dd23cfSKansho Nishida <&audiosys CLK_AUDIO_24M>, 149813dd23cfSKansho Nishida <&audiosys CLK_AUDIO_APLL_TUNER>, 149913dd23cfSKansho Nishida <&audiosys CLK_AUDIO_APLL2_TUNER>, 150013dd23cfSKansho Nishida <&audiosys CLK_AUDIO_I2S1>, 150113dd23cfSKansho Nishida <&audiosys CLK_AUDIO_I2S2>, 150213dd23cfSKansho Nishida <&audiosys CLK_AUDIO_I2S3>, 150313dd23cfSKansho Nishida <&audiosys CLK_AUDIO_I2S4>, 150413dd23cfSKansho Nishida <&audiosys CLK_AUDIO_TDM>, 150513dd23cfSKansho Nishida <&audiosys CLK_AUDIO_TML>, 150613dd23cfSKansho Nishida <&infracfg CLK_INFRA_AUDIO>, 150713dd23cfSKansho Nishida <&infracfg CLK_INFRA_AUDIO_26M_BCLK>, 150813dd23cfSKansho Nishida <&topckgen CLK_TOP_MUX_AUDIO>, 150913dd23cfSKansho Nishida <&topckgen CLK_TOP_MUX_AUD_INTBUS>, 151013dd23cfSKansho Nishida <&topckgen CLK_TOP_SYSPLL_D2_D4>, 151113dd23cfSKansho Nishida <&topckgen CLK_TOP_MUX_AUD_1>, 151213dd23cfSKansho Nishida <&topckgen CLK_TOP_APLL1_CK>, 151313dd23cfSKansho Nishida <&topckgen CLK_TOP_MUX_AUD_2>, 151413dd23cfSKansho Nishida <&topckgen CLK_TOP_APLL2_CK>, 151513dd23cfSKansho Nishida <&topckgen CLK_TOP_MUX_AUD_ENG1>, 151613dd23cfSKansho Nishida <&topckgen CLK_TOP_APLL1_D8>, 151713dd23cfSKansho Nishida <&topckgen CLK_TOP_MUX_AUD_ENG2>, 151813dd23cfSKansho Nishida <&topckgen CLK_TOP_APLL2_D8>, 151913dd23cfSKansho Nishida <&topckgen CLK_TOP_MUX_APLL_I2S0>, 152013dd23cfSKansho Nishida <&topckgen CLK_TOP_MUX_APLL_I2S1>, 152113dd23cfSKansho Nishida <&topckgen CLK_TOP_MUX_APLL_I2S2>, 152213dd23cfSKansho Nishida <&topckgen CLK_TOP_MUX_APLL_I2S3>, 152313dd23cfSKansho Nishida <&topckgen CLK_TOP_MUX_APLL_I2S4>, 152413dd23cfSKansho Nishida <&topckgen CLK_TOP_MUX_APLL_I2S5>, 152513dd23cfSKansho Nishida <&topckgen CLK_TOP_APLL12_DIV0>, 152613dd23cfSKansho Nishida <&topckgen CLK_TOP_APLL12_DIV1>, 152713dd23cfSKansho Nishida <&topckgen CLK_TOP_APLL12_DIV2>, 152813dd23cfSKansho Nishida <&topckgen CLK_TOP_APLL12_DIV3>, 152913dd23cfSKansho Nishida <&topckgen CLK_TOP_APLL12_DIV4>, 153013dd23cfSKansho Nishida <&topckgen CLK_TOP_APLL12_DIVB>, 153113dd23cfSKansho Nishida /*<&topckgen CLK_TOP_APLL12_DIV5>,*/ 153213dd23cfSKansho Nishida <&clk26m>; 153313dd23cfSKansho Nishida clock-names = "aud_afe_clk", 153413dd23cfSKansho Nishida "aud_dac_clk", 153513dd23cfSKansho Nishida "aud_dac_predis_clk", 153613dd23cfSKansho Nishida "aud_adc_clk", 153713dd23cfSKansho Nishida "aud_adc_adda6_clk", 153813dd23cfSKansho Nishida "aud_apll22m_clk", 153913dd23cfSKansho Nishida "aud_apll24m_clk", 154013dd23cfSKansho Nishida "aud_apll1_tuner_clk", 154113dd23cfSKansho Nishida "aud_apll2_tuner_clk", 154213dd23cfSKansho Nishida "aud_i2s1_bclk_sw", 154313dd23cfSKansho Nishida "aud_i2s2_bclk_sw", 154413dd23cfSKansho Nishida "aud_i2s3_bclk_sw", 154513dd23cfSKansho Nishida "aud_i2s4_bclk_sw", 154613dd23cfSKansho Nishida "aud_tdm_clk", 154713dd23cfSKansho Nishida "aud_tml_clk", 154813dd23cfSKansho Nishida "aud_infra_clk", 154913dd23cfSKansho Nishida "mtkaif_26m_clk", 155013dd23cfSKansho Nishida "top_mux_audio", 155113dd23cfSKansho Nishida "top_mux_aud_intbus", 155213dd23cfSKansho Nishida "top_syspll_d2_d4", 155313dd23cfSKansho Nishida "top_mux_aud_1", 155413dd23cfSKansho Nishida "top_apll1_ck", 155513dd23cfSKansho Nishida "top_mux_aud_2", 155613dd23cfSKansho Nishida "top_apll2_ck", 155713dd23cfSKansho Nishida "top_mux_aud_eng1", 155813dd23cfSKansho Nishida "top_apll1_d8", 155913dd23cfSKansho Nishida "top_mux_aud_eng2", 156013dd23cfSKansho Nishida "top_apll2_d8", 156113dd23cfSKansho Nishida "top_i2s0_m_sel", 156213dd23cfSKansho Nishida "top_i2s1_m_sel", 156313dd23cfSKansho Nishida "top_i2s2_m_sel", 156413dd23cfSKansho Nishida "top_i2s3_m_sel", 156513dd23cfSKansho Nishida "top_i2s4_m_sel", 156613dd23cfSKansho Nishida "top_i2s5_m_sel", 156713dd23cfSKansho Nishida "top_apll12_div0", 156813dd23cfSKansho Nishida "top_apll12_div1", 156913dd23cfSKansho Nishida "top_apll12_div2", 157013dd23cfSKansho Nishida "top_apll12_div3", 157113dd23cfSKansho Nishida "top_apll12_div4", 157213dd23cfSKansho Nishida "top_apll12_divb", 157313dd23cfSKansho Nishida /*"top_apll12_div5",*/ 157413dd23cfSKansho Nishida "top_clk26m_clk"; 157513dd23cfSKansho Nishida }; 1576e526c9bcSBen Ho }; 1577e526c9bcSBen Ho 15785e6cdf00Sjjian zhou mmc0: mmc@11230000 { 15795e6cdf00Sjjian zhou compatible = "mediatek,mt8183-mmc"; 15805e6cdf00Sjjian zhou reg = <0 0x11230000 0 0x1000>, 15815e6cdf00Sjjian zhou <0 0x11f50000 0 0x1000>; 15825e6cdf00Sjjian zhou interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_LOW>; 15835e6cdf00Sjjian zhou clocks = <&topckgen CLK_TOP_MUX_MSDC50_0>, 15845e6cdf00Sjjian zhou <&infracfg CLK_INFRA_MSDC0>, 15855e6cdf00Sjjian zhou <&infracfg CLK_INFRA_MSDC0_SCK>; 15865e6cdf00Sjjian zhou clock-names = "source", "hclk", "source_cg"; 15875e6cdf00Sjjian zhou status = "disabled"; 15885e6cdf00Sjjian zhou }; 15895e6cdf00Sjjian zhou 15905e6cdf00Sjjian zhou mmc1: mmc@11240000 { 15915e6cdf00Sjjian zhou compatible = "mediatek,mt8183-mmc"; 15925e6cdf00Sjjian zhou reg = <0 0x11240000 0 0x1000>, 15935e6cdf00Sjjian zhou <0 0x11e10000 0 0x1000>; 15945e6cdf00Sjjian zhou interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_LOW>; 15955e6cdf00Sjjian zhou clocks = <&topckgen CLK_TOP_MUX_MSDC30_1>, 15965e6cdf00Sjjian zhou <&infracfg CLK_INFRA_MSDC1>, 15975e6cdf00Sjjian zhou <&infracfg CLK_INFRA_MSDC1_SCK>; 15985e6cdf00Sjjian zhou clock-names = "source", "hclk", "source_cg"; 15995e6cdf00Sjjian zhou status = "disabled"; 16005e6cdf00Sjjian zhou }; 16015e6cdf00Sjjian zhou 1602d1c9c70aSChunfeng Yun mipi_tx0: dsi-phy@11e50000 { 160388ec8402SJitao Shi compatible = "mediatek,mt8183-mipi-tx"; 160488ec8402SJitao Shi reg = <0 0x11e50000 0 0x1000>; 160588ec8402SJitao Shi clocks = <&apmixedsys CLK_APMIXED_MIPID0_26M>; 160688ec8402SJitao Shi #clock-cells = <0>; 160788ec8402SJitao Shi #phy-cells = <0>; 160888ec8402SJitao Shi clock-output-names = "mipi_tx0_pll"; 160988ec8402SJitao Shi nvmem-cells = <&mipi_tx_calibration>; 161088ec8402SJitao Shi nvmem-cell-names = "calibration-data"; 161188ec8402SJitao Shi }; 161288ec8402SJitao Shi 1613de103388SMichael Mei efuse: efuse@11f10000 { 1614de103388SMichael Mei compatible = "mediatek,mt8183-efuse", 1615de103388SMichael Mei "mediatek,efuse"; 1616de103388SMichael Mei reg = <0 0x11f10000 0 0x1000>; 161788ec8402SJitao Shi #address-cells = <1>; 161888ec8402SJitao Shi #size-cells = <1>; 1619b325ce39Smichael.kao thermal_calibration: calib@180 { 1620b325ce39Smichael.kao reg = <0x180 0xc>; 1621b325ce39Smichael.kao }; 1622b325ce39Smichael.kao 162388ec8402SJitao Shi mipi_tx_calibration: calib@190 { 162488ec8402SJitao Shi reg = <0x190 0xc>; 162588ec8402SJitao Shi }; 1626*41131266SRoger Lu 1627*41131266SRoger Lu svs_calibration: calib@580 { 1628*41131266SRoger Lu reg = <0x580 0x64>; 1629*41131266SRoger Lu }; 1630de103388SMichael Mei }; 1631de103388SMichael Mei 1632d1c9c70aSChunfeng Yun u3phy: t-phy@11f40000 { 16336b3bfa37SEnric Balletbo i Serra compatible = "mediatek,mt8183-tphy", 16346b3bfa37SEnric Balletbo i Serra "mediatek,generic-tphy-v2"; 16356b3bfa37SEnric Balletbo i Serra #address-cells = <1>; 16366b3bfa37SEnric Balletbo i Serra #size-cells = <1>; 16376b3bfa37SEnric Balletbo i Serra ranges = <0 0 0x11f40000 0x1000>; 16386b3bfa37SEnric Balletbo i Serra status = "okay"; 16396b3bfa37SEnric Balletbo i Serra 16406b3bfa37SEnric Balletbo i Serra u2port0: usb-phy@0 { 16416b3bfa37SEnric Balletbo i Serra reg = <0x0 0x700>; 16426b3bfa37SEnric Balletbo i Serra clocks = <&clk26m>; 16436b3bfa37SEnric Balletbo i Serra clock-names = "ref"; 16446b3bfa37SEnric Balletbo i Serra #phy-cells = <1>; 16456b3bfa37SEnric Balletbo i Serra mediatek,discth = <15>; 16466b3bfa37SEnric Balletbo i Serra status = "okay"; 16476b3bfa37SEnric Balletbo i Serra }; 16486b3bfa37SEnric Balletbo i Serra 1649f538437bSMatthias Brugger u3port0: usb-phy@700 { 16506b3bfa37SEnric Balletbo i Serra reg = <0x0700 0x900>; 16516b3bfa37SEnric Balletbo i Serra clocks = <&clk26m>; 16526b3bfa37SEnric Balletbo i Serra clock-names = "ref"; 16536b3bfa37SEnric Balletbo i Serra #phy-cells = <1>; 16546b3bfa37SEnric Balletbo i Serra status = "okay"; 16556b3bfa37SEnric Balletbo i Serra }; 16566b3bfa37SEnric Balletbo i Serra }; 16576b3bfa37SEnric Balletbo i Serra 1658e526c9bcSBen Ho mfgcfg: syscon@13000000 { 1659e526c9bcSBen Ho compatible = "mediatek,mt8183-mfgcfg", "syscon"; 1660e526c9bcSBen Ho reg = <0 0x13000000 0 0x1000>; 1661e526c9bcSBen Ho #clock-cells = <1>; 1662e526c9bcSBen Ho }; 1663e526c9bcSBen Ho 1664a8168cebSNicolas Boichat gpu: gpu@13040000 { 1665a8168cebSNicolas Boichat compatible = "mediatek,mt8183-mali", "arm,mali-bifrost"; 1666a8168cebSNicolas Boichat reg = <0 0x13040000 0 0x4000>; 1667a8168cebSNicolas Boichat interrupts = 1668a8168cebSNicolas Boichat <GIC_SPI 280 IRQ_TYPE_LEVEL_LOW>, 1669a8168cebSNicolas Boichat <GIC_SPI 279 IRQ_TYPE_LEVEL_LOW>, 1670a8168cebSNicolas Boichat <GIC_SPI 278 IRQ_TYPE_LEVEL_LOW>; 1671a8168cebSNicolas Boichat interrupt-names = "job", "mmu", "gpu"; 1672a8168cebSNicolas Boichat 1673a8168cebSNicolas Boichat clocks = <&topckgen CLK_TOP_MFGPLL_CK>; 1674a8168cebSNicolas Boichat 1675a8168cebSNicolas Boichat power-domains = 1676a8168cebSNicolas Boichat <&spm MT8183_POWER_DOMAIN_MFG_CORE0>, 1677a8168cebSNicolas Boichat <&spm MT8183_POWER_DOMAIN_MFG_CORE1>, 1678a8168cebSNicolas Boichat <&spm MT8183_POWER_DOMAIN_MFG_2D>; 1679a8168cebSNicolas Boichat power-domain-names = "core0", "core1", "core2"; 1680a8168cebSNicolas Boichat 1681a8168cebSNicolas Boichat operating-points-v2 = <&gpu_opp_table>; 1682a8168cebSNicolas Boichat }; 1683a8168cebSNicolas Boichat 1684e526c9bcSBen Ho mmsys: syscon@14000000 { 1685e526c9bcSBen Ho compatible = "mediatek,mt8183-mmsys", "syscon"; 1686e526c9bcSBen Ho reg = <0 0x14000000 0 0x1000>; 1687e526c9bcSBen Ho #clock-cells = <1>; 16884bdb00edSEnric Balletbo i Serra #reset-cells = <1>; 1689b7a8f50aSHsin-Yi Wang mboxes = <&gce 0 CMDQ_THR_PRIO_HIGHEST>, 1690b7a8f50aSHsin-Yi Wang <&gce 1 CMDQ_THR_PRIO_HIGHEST>; 1691b7a8f50aSHsin-Yi Wang mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0 0x1000>; 1692e526c9bcSBen Ho }; 1693e526c9bcSBen Ho 169491f9c963SEnric Balletbo i Serra ovl0: ovl@14008000 { 169591f9c963SEnric Balletbo i Serra compatible = "mediatek,mt8183-disp-ovl"; 169691f9c963SEnric Balletbo i Serra reg = <0 0x14008000 0 0x1000>; 169791f9c963SEnric Balletbo i Serra interrupts = <GIC_SPI 225 IRQ_TYPE_LEVEL_LOW>; 169891f9c963SEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_DISP>; 169991f9c963SEnric Balletbo i Serra clocks = <&mmsys CLK_MM_DISP_OVL0>; 170091f9c963SEnric Balletbo i Serra iommus = <&iommu M4U_PORT_DISP_OVL0>; 170191f9c963SEnric Balletbo i Serra mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0x8000 0x1000>; 170291f9c963SEnric Balletbo i Serra }; 170391f9c963SEnric Balletbo i Serra 170491f9c963SEnric Balletbo i Serra ovl_2l0: ovl@14009000 { 170591f9c963SEnric Balletbo i Serra compatible = "mediatek,mt8183-disp-ovl-2l"; 170691f9c963SEnric Balletbo i Serra reg = <0 0x14009000 0 0x1000>; 170791f9c963SEnric Balletbo i Serra interrupts = <GIC_SPI 226 IRQ_TYPE_LEVEL_LOW>; 170891f9c963SEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_DISP>; 170991f9c963SEnric Balletbo i Serra clocks = <&mmsys CLK_MM_DISP_OVL0_2L>; 171091f9c963SEnric Balletbo i Serra iommus = <&iommu M4U_PORT_DISP_2L_OVL0_LARB0>; 171191f9c963SEnric Balletbo i Serra mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0x9000 0x1000>; 171291f9c963SEnric Balletbo i Serra }; 171391f9c963SEnric Balletbo i Serra 171491f9c963SEnric Balletbo i Serra ovl_2l1: ovl@1400a000 { 171591f9c963SEnric Balletbo i Serra compatible = "mediatek,mt8183-disp-ovl-2l"; 171691f9c963SEnric Balletbo i Serra reg = <0 0x1400a000 0 0x1000>; 171791f9c963SEnric Balletbo i Serra interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_LOW>; 171891f9c963SEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_DISP>; 171991f9c963SEnric Balletbo i Serra clocks = <&mmsys CLK_MM_DISP_OVL1_2L>; 172091f9c963SEnric Balletbo i Serra iommus = <&iommu M4U_PORT_DISP_2L_OVL1_LARB0>; 172191f9c963SEnric Balletbo i Serra mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xa000 0x1000>; 172291f9c963SEnric Balletbo i Serra }; 172391f9c963SEnric Balletbo i Serra 172491f9c963SEnric Balletbo i Serra rdma0: rdma@1400b000 { 172591f9c963SEnric Balletbo i Serra compatible = "mediatek,mt8183-disp-rdma"; 172691f9c963SEnric Balletbo i Serra reg = <0 0x1400b000 0 0x1000>; 172791f9c963SEnric Balletbo i Serra interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_LOW>; 172891f9c963SEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_DISP>; 172991f9c963SEnric Balletbo i Serra clocks = <&mmsys CLK_MM_DISP_RDMA0>; 173091f9c963SEnric Balletbo i Serra iommus = <&iommu M4U_PORT_DISP_RDMA0>; 1731431368c2SYongqiang Niu mediatek,rdma-fifo-size = <5120>; 173291f9c963SEnric Balletbo i Serra mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xb000 0x1000>; 173391f9c963SEnric Balletbo i Serra }; 173491f9c963SEnric Balletbo i Serra 173591f9c963SEnric Balletbo i Serra rdma1: rdma@1400c000 { 173691f9c963SEnric Balletbo i Serra compatible = "mediatek,mt8183-disp-rdma"; 173791f9c963SEnric Balletbo i Serra reg = <0 0x1400c000 0 0x1000>; 173891f9c963SEnric Balletbo i Serra interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_LOW>; 173991f9c963SEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_DISP>; 174091f9c963SEnric Balletbo i Serra clocks = <&mmsys CLK_MM_DISP_RDMA1>; 174191f9c963SEnric Balletbo i Serra iommus = <&iommu M4U_PORT_DISP_RDMA1>; 1742431368c2SYongqiang Niu mediatek,rdma-fifo-size = <2048>; 174391f9c963SEnric Balletbo i Serra mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xc000 0x1000>; 174491f9c963SEnric Balletbo i Serra }; 174591f9c963SEnric Balletbo i Serra 174691f9c963SEnric Balletbo i Serra color0: color@1400e000 { 174791f9c963SEnric Balletbo i Serra compatible = "mediatek,mt8183-disp-color", 174891f9c963SEnric Balletbo i Serra "mediatek,mt8173-disp-color"; 174991f9c963SEnric Balletbo i Serra reg = <0 0x1400e000 0 0x1000>; 175091f9c963SEnric Balletbo i Serra interrupts = <GIC_SPI 231 IRQ_TYPE_LEVEL_LOW>; 175191f9c963SEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_DISP>; 175291f9c963SEnric Balletbo i Serra clocks = <&mmsys CLK_MM_DISP_COLOR0>; 175391f9c963SEnric Balletbo i Serra mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xe000 0x1000>; 175491f9c963SEnric Balletbo i Serra }; 175591f9c963SEnric Balletbo i Serra 175691f9c963SEnric Balletbo i Serra ccorr0: ccorr@1400f000 { 175791f9c963SEnric Balletbo i Serra compatible = "mediatek,mt8183-disp-ccorr"; 175891f9c963SEnric Balletbo i Serra reg = <0 0x1400f000 0 0x1000>; 175991f9c963SEnric Balletbo i Serra interrupts = <GIC_SPI 232 IRQ_TYPE_LEVEL_LOW>; 176091f9c963SEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_DISP>; 176191f9c963SEnric Balletbo i Serra clocks = <&mmsys CLK_MM_DISP_CCORR0>; 1762b7a8f50aSHsin-Yi Wang mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xf000 0x1000>; 176391f9c963SEnric Balletbo i Serra }; 176491f9c963SEnric Balletbo i Serra 176591f9c963SEnric Balletbo i Serra aal0: aal@14010000 { 176671b946e9SRex-BC Chen compatible = "mediatek,mt8183-disp-aal"; 176791f9c963SEnric Balletbo i Serra reg = <0 0x14010000 0 0x1000>; 176891f9c963SEnric Balletbo i Serra interrupts = <GIC_SPI 233 IRQ_TYPE_LEVEL_LOW>; 176991f9c963SEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_DISP>; 177091f9c963SEnric Balletbo i Serra clocks = <&mmsys CLK_MM_DISP_AAL0>; 1771b7a8f50aSHsin-Yi Wang mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0 0x1000>; 177291f9c963SEnric Balletbo i Serra }; 177391f9c963SEnric Balletbo i Serra 177491f9c963SEnric Balletbo i Serra gamma0: gamma@14011000 { 17759a2cb5ebSYongqiang Niu compatible = "mediatek,mt8183-disp-gamma"; 177691f9c963SEnric Balletbo i Serra reg = <0 0x14011000 0 0x1000>; 177791f9c963SEnric Balletbo i Serra interrupts = <GIC_SPI 234 IRQ_TYPE_LEVEL_LOW>; 177891f9c963SEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_DISP>; 177991f9c963SEnric Balletbo i Serra clocks = <&mmsys CLK_MM_DISP_GAMMA0>; 1780b7a8f50aSHsin-Yi Wang mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0x1000 0x1000>; 178191f9c963SEnric Balletbo i Serra }; 178291f9c963SEnric Balletbo i Serra 178391f9c963SEnric Balletbo i Serra dither0: dither@14012000 { 178491f9c963SEnric Balletbo i Serra compatible = "mediatek,mt8183-disp-dither"; 178591f9c963SEnric Balletbo i Serra reg = <0 0x14012000 0 0x1000>; 178691f9c963SEnric Balletbo i Serra interrupts = <GIC_SPI 235 IRQ_TYPE_LEVEL_LOW>; 178791f9c963SEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_DISP>; 178891f9c963SEnric Balletbo i Serra clocks = <&mmsys CLK_MM_DISP_DITHER0>; 1789b7a8f50aSHsin-Yi Wang mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0x2000 0x1000>; 179091f9c963SEnric Balletbo i Serra }; 179191f9c963SEnric Balletbo i Serra 179288ec8402SJitao Shi dsi0: dsi@14014000 { 179388ec8402SJitao Shi compatible = "mediatek,mt8183-dsi"; 179488ec8402SJitao Shi reg = <0 0x14014000 0 0x1000>; 179588ec8402SJitao Shi interrupts = <GIC_SPI 236 IRQ_TYPE_LEVEL_LOW>; 179688ec8402SJitao Shi power-domains = <&spm MT8183_POWER_DOMAIN_DISP>; 179788ec8402SJitao Shi clocks = <&mmsys CLK_MM_DSI0_MM>, 179888ec8402SJitao Shi <&mmsys CLK_MM_DSI0_IF>, 179988ec8402SJitao Shi <&mipi_tx0>; 180088ec8402SJitao Shi clock-names = "engine", "digital", "hs"; 18014bdb00edSEnric Balletbo i Serra resets = <&mmsys MT8183_MMSYS_SW0_RST_B_DISP_DSI0>; 180288ec8402SJitao Shi phys = <&mipi_tx0>; 180388ec8402SJitao Shi phy-names = "dphy"; 180488ec8402SJitao Shi }; 180588ec8402SJitao Shi 180691f9c963SEnric Balletbo i Serra mutex: mutex@14016000 { 180791f9c963SEnric Balletbo i Serra compatible = "mediatek,mt8183-disp-mutex"; 180891f9c963SEnric Balletbo i Serra reg = <0 0x14016000 0 0x1000>; 180991f9c963SEnric Balletbo i Serra interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_LOW>; 181091f9c963SEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_DISP>; 181102912fb7SHsin-Yi Wang mediatek,gce-events = <CMDQ_EVENT_MUTEX_STREAM_DONE0>, 181202912fb7SHsin-Yi Wang <CMDQ_EVENT_MUTEX_STREAM_DONE1>; 181391f9c963SEnric Balletbo i Serra }; 181491f9c963SEnric Balletbo i Serra 1815c6080916SEnric Balletbo i Serra larb0: larb@14017000 { 1816c6080916SEnric Balletbo i Serra compatible = "mediatek,mt8183-smi-larb"; 1817c6080916SEnric Balletbo i Serra reg = <0 0x14017000 0 0x1000>; 1818c6080916SEnric Balletbo i Serra mediatek,smi = <&smi_common>; 1819c6080916SEnric Balletbo i Serra clocks = <&mmsys CLK_MM_SMI_LARB0>, 1820c6080916SEnric Balletbo i Serra <&mmsys CLK_MM_SMI_LARB0>; 1821c6080916SEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_DISP>; 1822c6080916SEnric Balletbo i Serra clock-names = "apb", "smi"; 1823c6080916SEnric Balletbo i Serra }; 1824c6080916SEnric Balletbo i Serra 1825ddebdbadSEnric Balletbo i Serra smi_common: smi@14019000 { 1826946437cfSHsin-Yi Wang compatible = "mediatek,mt8183-smi-common"; 1827ddebdbadSEnric Balletbo i Serra reg = <0 0x14019000 0 0x1000>; 1828ddebdbadSEnric Balletbo i Serra clocks = <&mmsys CLK_MM_SMI_COMMON>, 1829ddebdbadSEnric Balletbo i Serra <&mmsys CLK_MM_SMI_COMMON>, 1830ddebdbadSEnric Balletbo i Serra <&mmsys CLK_MM_GALS_COMM0>, 1831ddebdbadSEnric Balletbo i Serra <&mmsys CLK_MM_GALS_COMM1>; 1832ddebdbadSEnric Balletbo i Serra clock-names = "apb", "smi", "gals0", "gals1"; 1833946437cfSHsin-Yi Wang power-domains = <&spm MT8183_POWER_DOMAIN_DISP>; 1834ddebdbadSEnric Balletbo i Serra }; 1835ddebdbadSEnric Balletbo i Serra 1836e526c9bcSBen Ho imgsys: syscon@15020000 { 1837e526c9bcSBen Ho compatible = "mediatek,mt8183-imgsys", "syscon"; 1838e526c9bcSBen Ho reg = <0 0x15020000 0 0x1000>; 1839e526c9bcSBen Ho #clock-cells = <1>; 1840e526c9bcSBen Ho }; 1841e526c9bcSBen Ho 1842c6080916SEnric Balletbo i Serra larb5: larb@15021000 { 1843c6080916SEnric Balletbo i Serra compatible = "mediatek,mt8183-smi-larb"; 1844c6080916SEnric Balletbo i Serra reg = <0 0x15021000 0 0x1000>; 1845c6080916SEnric Balletbo i Serra mediatek,smi = <&smi_common>; 1846c6080916SEnric Balletbo i Serra clocks = <&imgsys CLK_IMG_LARB5>, <&imgsys CLK_IMG_LARB5>, 1847c6080916SEnric Balletbo i Serra <&mmsys CLK_MM_GALS_IMG2MM>; 1848c6080916SEnric Balletbo i Serra clock-names = "apb", "smi", "gals"; 1849c6080916SEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_ISP>; 1850c6080916SEnric Balletbo i Serra }; 1851c6080916SEnric Balletbo i Serra 1852c6080916SEnric Balletbo i Serra larb2: larb@1502f000 { 1853c6080916SEnric Balletbo i Serra compatible = "mediatek,mt8183-smi-larb"; 1854c6080916SEnric Balletbo i Serra reg = <0 0x1502f000 0 0x1000>; 1855c6080916SEnric Balletbo i Serra mediatek,smi = <&smi_common>; 1856c6080916SEnric Balletbo i Serra clocks = <&imgsys CLK_IMG_LARB2>, <&imgsys CLK_IMG_LARB2>, 1857c6080916SEnric Balletbo i Serra <&mmsys CLK_MM_GALS_IPU2MM>; 1858c6080916SEnric Balletbo i Serra clock-names = "apb", "smi", "gals"; 1859c6080916SEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_ISP>; 1860c6080916SEnric Balletbo i Serra }; 1861c6080916SEnric Balletbo i Serra 1862e526c9bcSBen Ho vdecsys: syscon@16000000 { 1863e526c9bcSBen Ho compatible = "mediatek,mt8183-vdecsys", "syscon"; 1864e526c9bcSBen Ho reg = <0 0x16000000 0 0x1000>; 1865e526c9bcSBen Ho #clock-cells = <1>; 1866e526c9bcSBen Ho }; 1867e526c9bcSBen Ho 1868c6080916SEnric Balletbo i Serra larb1: larb@16010000 { 1869c6080916SEnric Balletbo i Serra compatible = "mediatek,mt8183-smi-larb"; 1870c6080916SEnric Balletbo i Serra reg = <0 0x16010000 0 0x1000>; 1871c6080916SEnric Balletbo i Serra mediatek,smi = <&smi_common>; 1872c6080916SEnric Balletbo i Serra clocks = <&vdecsys CLK_VDEC_VDEC>, <&vdecsys CLK_VDEC_LARB1>; 1873c6080916SEnric Balletbo i Serra clock-names = "apb", "smi"; 1874c6080916SEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_VDEC>; 1875c6080916SEnric Balletbo i Serra }; 1876c6080916SEnric Balletbo i Serra 1877e526c9bcSBen Ho vencsys: syscon@17000000 { 1878e526c9bcSBen Ho compatible = "mediatek,mt8183-vencsys", "syscon"; 1879e526c9bcSBen Ho reg = <0 0x17000000 0 0x1000>; 1880e526c9bcSBen Ho #clock-cells = <1>; 1881e526c9bcSBen Ho }; 1882e526c9bcSBen Ho 1883c6080916SEnric Balletbo i Serra larb4: larb@17010000 { 1884c6080916SEnric Balletbo i Serra compatible = "mediatek,mt8183-smi-larb"; 1885c6080916SEnric Balletbo i Serra reg = <0 0x17010000 0 0x1000>; 1886c6080916SEnric Balletbo i Serra mediatek,smi = <&smi_common>; 1887c6080916SEnric Balletbo i Serra clocks = <&vencsys CLK_VENC_LARB>, 1888c6080916SEnric Balletbo i Serra <&vencsys CLK_VENC_LARB>; 1889c6080916SEnric Balletbo i Serra clock-names = "apb", "smi"; 1890c6080916SEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_VENC>; 1891c6080916SEnric Balletbo i Serra }; 1892c6080916SEnric Balletbo i Serra 1893462f6c4aSMaoguang Meng venc_jpg: venc_jpg@17030000 { 1894462f6c4aSMaoguang Meng compatible = "mediatek,mt8183-jpgenc", "mediatek,mtk-jpgenc"; 1895462f6c4aSMaoguang Meng reg = <0 0x17030000 0 0x1000>; 1896462f6c4aSMaoguang Meng interrupts = <GIC_SPI 249 IRQ_TYPE_LEVEL_LOW>; 1897462f6c4aSMaoguang Meng iommus = <&iommu M4U_PORT_JPGENC_RDMA>, 1898462f6c4aSMaoguang Meng <&iommu M4U_PORT_JPGENC_BSDMA>; 1899462f6c4aSMaoguang Meng power-domains = <&spm MT8183_POWER_DOMAIN_VENC>; 1900462f6c4aSMaoguang Meng clocks = <&vencsys CLK_VENC_JPGENC>; 1901462f6c4aSMaoguang Meng clock-names = "jpgenc"; 1902462f6c4aSMaoguang Meng }; 1903462f6c4aSMaoguang Meng 1904e526c9bcSBen Ho ipu_conn: syscon@19000000 { 1905e526c9bcSBen Ho compatible = "mediatek,mt8183-ipu_conn", "syscon"; 1906e526c9bcSBen Ho reg = <0 0x19000000 0 0x1000>; 1907e526c9bcSBen Ho #clock-cells = <1>; 1908e526c9bcSBen Ho }; 1909e526c9bcSBen Ho 1910e526c9bcSBen Ho ipu_adl: syscon@19010000 { 1911e526c9bcSBen Ho compatible = "mediatek,mt8183-ipu_adl", "syscon"; 1912e526c9bcSBen Ho reg = <0 0x19010000 0 0x1000>; 1913e526c9bcSBen Ho #clock-cells = <1>; 1914e526c9bcSBen Ho }; 1915e526c9bcSBen Ho 1916e526c9bcSBen Ho ipu_core0: syscon@19180000 { 1917e526c9bcSBen Ho compatible = "mediatek,mt8183-ipu_core0", "syscon"; 1918e526c9bcSBen Ho reg = <0 0x19180000 0 0x1000>; 1919e526c9bcSBen Ho #clock-cells = <1>; 1920e526c9bcSBen Ho }; 1921e526c9bcSBen Ho 1922e526c9bcSBen Ho ipu_core1: syscon@19280000 { 1923e526c9bcSBen Ho compatible = "mediatek,mt8183-ipu_core1", "syscon"; 1924e526c9bcSBen Ho reg = <0 0x19280000 0 0x1000>; 1925e526c9bcSBen Ho #clock-cells = <1>; 1926e526c9bcSBen Ho }; 1927e526c9bcSBen Ho 1928e526c9bcSBen Ho camsys: syscon@1a000000 { 1929e526c9bcSBen Ho compatible = "mediatek,mt8183-camsys", "syscon"; 1930e526c9bcSBen Ho reg = <0 0x1a000000 0 0x1000>; 1931e526c9bcSBen Ho #clock-cells = <1>; 1932e526c9bcSBen Ho }; 1933c6080916SEnric Balletbo i Serra 1934c6080916SEnric Balletbo i Serra larb6: larb@1a001000 { 1935c6080916SEnric Balletbo i Serra compatible = "mediatek,mt8183-smi-larb"; 1936c6080916SEnric Balletbo i Serra reg = <0 0x1a001000 0 0x1000>; 1937c6080916SEnric Balletbo i Serra mediatek,smi = <&smi_common>; 1938c6080916SEnric Balletbo i Serra clocks = <&camsys CLK_CAM_LARB6>, <&camsys CLK_CAM_LARB6>, 1939c6080916SEnric Balletbo i Serra <&mmsys CLK_MM_GALS_CAM2MM>; 1940c6080916SEnric Balletbo i Serra clock-names = "apb", "smi", "gals"; 1941c6080916SEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_CAM>; 1942c6080916SEnric Balletbo i Serra }; 1943c6080916SEnric Balletbo i Serra 1944c6080916SEnric Balletbo i Serra larb3: larb@1a002000 { 1945c6080916SEnric Balletbo i Serra compatible = "mediatek,mt8183-smi-larb"; 1946c6080916SEnric Balletbo i Serra reg = <0 0x1a002000 0 0x1000>; 1947c6080916SEnric Balletbo i Serra mediatek,smi = <&smi_common>; 1948c6080916SEnric Balletbo i Serra clocks = <&camsys CLK_CAM_LARB3>, <&camsys CLK_CAM_LARB3>, 1949c6080916SEnric Balletbo i Serra <&mmsys CLK_MM_GALS_IPU12MM>; 1950c6080916SEnric Balletbo i Serra clock-names = "apb", "smi", "gals"; 1951c6080916SEnric Balletbo i Serra power-domains = <&spm MT8183_POWER_DOMAIN_CAM>; 1952c6080916SEnric Balletbo i Serra }; 1953e526c9bcSBen Ho }; 1954e526c9bcSBen Ho}; 1955