mt8188.dtsi 50 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917
  1. // SPDX-License-Identifier: GPL-2.0+
  2. /*
  3. * Copyright (c) 2023 MediaTek Inc.
  4. *
  5. */
  6. /dts-v1/;
  7. #include <dt-bindings/clock/mediatek,mt8188-clk.h>
  8. #include <dt-bindings/interrupt-controller/arm-gic.h>
  9. #include <dt-bindings/interrupt-controller/irq.h>
  10. #include <dt-bindings/mailbox/mediatek,mt8188-gce.h>
  11. #include <dt-bindings/phy/phy.h>
  12. #include <dt-bindings/pinctrl/mediatek,mt8188-pinfunc.h>
  13. #include <dt-bindings/power/mediatek,mt8188-power.h>
  14. #include <dt-bindings/reset/mt8188-resets.h>
  15. #include <dt-bindings/thermal/thermal.h>
  16. #include <dt-bindings/thermal/mediatek,lvts-thermal.h>
  17. / {
  18. compatible = "mediatek,mt8188";
  19. interrupt-parent = <&gic>;
  20. #address-cells = <2>;
  21. #size-cells = <2>;
  22. cpus {
  23. #address-cells = <1>;
  24. #size-cells = <0>;
  25. cpu0: cpu@0 {
  26. device_type = "cpu";
  27. compatible = "arm,cortex-a55";
  28. reg = <0x000>;
  29. enable-method = "psci";
  30. clock-frequency = <2000000000>;
  31. capacity-dmips-mhz = <282>;
  32. cpu-idle-states = <&cpu_off_l &cluster_off_l>;
  33. i-cache-size = <32768>;
  34. i-cache-line-size = <64>;
  35. i-cache-sets = <128>;
  36. d-cache-size = <32768>;
  37. d-cache-line-size = <64>;
  38. d-cache-sets = <128>;
  39. next-level-cache = <&l2_0>;
  40. #cooling-cells = <2>;
  41. };
  42. cpu1: cpu@100 {
  43. device_type = "cpu";
  44. compatible = "arm,cortex-a55";
  45. reg = <0x100>;
  46. enable-method = "psci";
  47. clock-frequency = <2000000000>;
  48. capacity-dmips-mhz = <282>;
  49. cpu-idle-states = <&cpu_off_l &cluster_off_l>;
  50. i-cache-size = <32768>;
  51. i-cache-line-size = <64>;
  52. i-cache-sets = <128>;
  53. d-cache-size = <32768>;
  54. d-cache-line-size = <64>;
  55. d-cache-sets = <128>;
  56. next-level-cache = <&l2_0>;
  57. #cooling-cells = <2>;
  58. };
  59. cpu2: cpu@200 {
  60. device_type = "cpu";
  61. compatible = "arm,cortex-a55";
  62. reg = <0x200>;
  63. enable-method = "psci";
  64. clock-frequency = <2000000000>;
  65. capacity-dmips-mhz = <282>;
  66. cpu-idle-states = <&cpu_off_l &cluster_off_l>;
  67. i-cache-size = <32768>;
  68. i-cache-line-size = <64>;
  69. i-cache-sets = <128>;
  70. d-cache-size = <32768>;
  71. d-cache-line-size = <64>;
  72. d-cache-sets = <128>;
  73. next-level-cache = <&l2_0>;
  74. #cooling-cells = <2>;
  75. };
  76. cpu3: cpu@300 {
  77. device_type = "cpu";
  78. compatible = "arm,cortex-a55";
  79. reg = <0x300>;
  80. enable-method = "psci";
  81. clock-frequency = <2000000000>;
  82. capacity-dmips-mhz = <282>;
  83. cpu-idle-states = <&cpu_off_l &cluster_off_l>;
  84. i-cache-size = <32768>;
  85. i-cache-line-size = <64>;
  86. i-cache-sets = <128>;
  87. d-cache-size = <32768>;
  88. d-cache-line-size = <64>;
  89. d-cache-sets = <128>;
  90. next-level-cache = <&l2_0>;
  91. #cooling-cells = <2>;
  92. };
  93. cpu4: cpu@400 {
  94. device_type = "cpu";
  95. compatible = "arm,cortex-a55";
  96. reg = <0x400>;
  97. enable-method = "psci";
  98. clock-frequency = <2000000000>;
  99. capacity-dmips-mhz = <282>;
  100. cpu-idle-states = <&cpu_off_l &cluster_off_l>;
  101. i-cache-size = <32768>;
  102. i-cache-line-size = <64>;
  103. i-cache-sets = <128>;
  104. d-cache-size = <32768>;
  105. d-cache-line-size = <64>;
  106. d-cache-sets = <128>;
  107. next-level-cache = <&l2_0>;
  108. #cooling-cells = <2>;
  109. };
  110. cpu5: cpu@500 {
  111. device_type = "cpu";
  112. compatible = "arm,cortex-a55";
  113. reg = <0x500>;
  114. enable-method = "psci";
  115. clock-frequency = <2000000000>;
  116. capacity-dmips-mhz = <282>;
  117. cpu-idle-states = <&cpu_off_l &cluster_off_l>;
  118. i-cache-size = <32768>;
  119. i-cache-line-size = <64>;
  120. i-cache-sets = <128>;
  121. d-cache-size = <32768>;
  122. d-cache-line-size = <64>;
  123. d-cache-sets = <128>;
  124. next-level-cache = <&l2_0>;
  125. #cooling-cells = <2>;
  126. };
  127. cpu6: cpu@600 {
  128. device_type = "cpu";
  129. compatible = "arm,cortex-a78";
  130. reg = <0x600>;
  131. enable-method = "psci";
  132. clock-frequency = <2600000000>;
  133. capacity-dmips-mhz = <1024>;
  134. cpu-idle-states = <&cpu_off_b &cluster_off_b>;
  135. i-cache-size = <65536>;
  136. i-cache-line-size = <64>;
  137. i-cache-sets = <256>;
  138. d-cache-size = <65536>;
  139. d-cache-line-size = <64>;
  140. d-cache-sets = <256>;
  141. next-level-cache = <&l2_1>;
  142. #cooling-cells = <2>;
  143. };
  144. cpu7: cpu@700 {
  145. device_type = "cpu";
  146. compatible = "arm,cortex-a78";
  147. reg = <0x700>;
  148. enable-method = "psci";
  149. clock-frequency = <2600000000>;
  150. capacity-dmips-mhz = <1024>;
  151. cpu-idle-states = <&cpu_off_b &cluster_off_b>;
  152. i-cache-size = <65536>;
  153. i-cache-line-size = <64>;
  154. i-cache-sets = <256>;
  155. d-cache-size = <65536>;
  156. d-cache-line-size = <64>;
  157. d-cache-sets = <256>;
  158. next-level-cache = <&l2_1>;
  159. #cooling-cells = <2>;
  160. };
  161. cpu-map {
  162. cluster0 {
  163. core0 {
  164. cpu = <&cpu0>;
  165. };
  166. core1 {
  167. cpu = <&cpu1>;
  168. };
  169. core2 {
  170. cpu = <&cpu2>;
  171. };
  172. core3 {
  173. cpu = <&cpu3>;
  174. };
  175. core4 {
  176. cpu = <&cpu4>;
  177. };
  178. core5 {
  179. cpu = <&cpu5>;
  180. };
  181. core6 {
  182. cpu = <&cpu6>;
  183. };
  184. core7 {
  185. cpu = <&cpu7>;
  186. };
  187. };
  188. };
  189. idle-states {
  190. entry-method = "psci";
  191. cpu_off_l: cpu-off-l {
  192. compatible = "arm,idle-state";
  193. arm,psci-suspend-param = <0x00010000>;
  194. local-timer-stop;
  195. entry-latency-us = <50>;
  196. exit-latency-us = <95>;
  197. min-residency-us = <580>;
  198. };
  199. cpu_off_b: cpu-off-b {
  200. compatible = "arm,idle-state";
  201. arm,psci-suspend-param = <0x00010000>;
  202. local-timer-stop;
  203. entry-latency-us = <45>;
  204. exit-latency-us = <140>;
  205. min-residency-us = <740>;
  206. };
  207. cluster_off_l: cluster-off-l {
  208. compatible = "arm,idle-state";
  209. arm,psci-suspend-param = <0x01010010>;
  210. local-timer-stop;
  211. entry-latency-us = <55>;
  212. exit-latency-us = <155>;
  213. min-residency-us = <840>;
  214. };
  215. cluster_off_b: cluster-off-b {
  216. compatible = "arm,idle-state";
  217. arm,psci-suspend-param = <0x01010010>;
  218. local-timer-stop;
  219. entry-latency-us = <50>;
  220. exit-latency-us = <200>;
  221. min-residency-us = <1000>;
  222. };
  223. };
  224. l2_0: l2-cache0 {
  225. compatible = "cache";
  226. cache-level = <2>;
  227. cache-size = <131072>;
  228. cache-line-size = <64>;
  229. cache-sets = <512>;
  230. next-level-cache = <&l3_0>;
  231. cache-unified;
  232. };
  233. l2_1: l2-cache1 {
  234. compatible = "cache";
  235. cache-level = <2>;
  236. cache-size = <262144>;
  237. cache-line-size = <64>;
  238. cache-sets = <512>;
  239. next-level-cache = <&l3_0>;
  240. cache-unified;
  241. };
  242. l3_0: l3-cache {
  243. compatible = "cache";
  244. cache-level = <3>;
  245. cache-size = <2097152>;
  246. cache-line-size = <64>;
  247. cache-sets = <2048>;
  248. cache-unified;
  249. };
  250. };
  251. clk13m: oscillator-13m {
  252. compatible = "fixed-clock";
  253. #clock-cells = <0>;
  254. clock-frequency = <13000000>;
  255. clock-output-names = "clk13m";
  256. };
  257. clk26m: oscillator-26m {
  258. compatible = "fixed-clock";
  259. #clock-cells = <0>;
  260. clock-frequency = <26000000>;
  261. clock-output-names = "clk26m";
  262. };
  263. clk32k: oscillator-32k {
  264. compatible = "fixed-clock";
  265. #clock-cells = <0>;
  266. clock-frequency = <32768>;
  267. clock-output-names = "clk32k";
  268. };
  269. gpu_opp_table: opp-table-gpu {
  270. compatible = "operating-points-v2";
  271. opp-shared;
  272. opp-390000000 {
  273. opp-hz = /bits/ 64 <390000000>;
  274. opp-microvolt = <575000>;
  275. opp-supported-hw = <0xff>;
  276. };
  277. opp-431000000 {
  278. opp-hz = /bits/ 64 <431000000>;
  279. opp-microvolt = <587500>;
  280. opp-supported-hw = <0xff>;
  281. };
  282. opp-473000000 {
  283. opp-hz = /bits/ 64 <473000000>;
  284. opp-microvolt = <600000>;
  285. opp-supported-hw = <0xff>;
  286. };
  287. opp-515000000 {
  288. opp-hz = /bits/ 64 <515000000>;
  289. opp-microvolt = <612500>;
  290. opp-supported-hw = <0xff>;
  291. };
  292. opp-556000000 {
  293. opp-hz = /bits/ 64 <556000000>;
  294. opp-microvolt = <625000>;
  295. opp-supported-hw = <0xff>;
  296. };
  297. opp-598000000 {
  298. opp-hz = /bits/ 64 <598000000>;
  299. opp-microvolt = <637500>;
  300. opp-supported-hw = <0xff>;
  301. };
  302. opp-640000000 {
  303. opp-hz = /bits/ 64 <640000000>;
  304. opp-microvolt = <650000>;
  305. opp-supported-hw = <0xff>;
  306. };
  307. opp-670000000 {
  308. opp-hz = /bits/ 64 <670000000>;
  309. opp-microvolt = <662500>;
  310. opp-supported-hw = <0xff>;
  311. };
  312. opp-700000000 {
  313. opp-hz = /bits/ 64 <700000000>;
  314. opp-microvolt = <675000>;
  315. opp-supported-hw = <0xff>;
  316. };
  317. opp-730000000 {
  318. opp-hz = /bits/ 64 <730000000>;
  319. opp-microvolt = <687500>;
  320. opp-supported-hw = <0xff>;
  321. };
  322. opp-760000000 {
  323. opp-hz = /bits/ 64 <760000000>;
  324. opp-microvolt = <700000>;
  325. opp-supported-hw = <0xff>;
  326. };
  327. opp-790000000 {
  328. opp-hz = /bits/ 64 <790000000>;
  329. opp-microvolt = <712500>;
  330. opp-supported-hw = <0xff>;
  331. };
  332. opp-835000000 {
  333. opp-hz = /bits/ 64 <835000000>;
  334. opp-microvolt = <731250>;
  335. opp-supported-hw = <0xff>;
  336. };
  337. opp-880000000 {
  338. opp-hz = /bits/ 64 <880000000>;
  339. opp-microvolt = <750000>;
  340. opp-supported-hw = <0xff>;
  341. };
  342. opp-915000000 {
  343. opp-hz = /bits/ 64 <915000000>;
  344. opp-microvolt = <775000>;
  345. opp-supported-hw = <0x8f>;
  346. };
  347. opp-915000000-5 {
  348. opp-hz = /bits/ 64 <915000000>;
  349. opp-microvolt = <762500>;
  350. opp-supported-hw = <0x30>;
  351. };
  352. opp-915000000-6 {
  353. opp-hz = /bits/ 64 <915000000>;
  354. opp-microvolt = <750000>;
  355. opp-supported-hw = <0x70>;
  356. };
  357. opp-950000000 {
  358. opp-hz = /bits/ 64 <950000000>;
  359. opp-microvolt = <800000>;
  360. opp-supported-hw = <0x8f>;
  361. };
  362. opp-950000000-5 {
  363. opp-hz = /bits/ 64 <950000000>;
  364. opp-microvolt = <775000>;
  365. opp-supported-hw = <0x30>;
  366. };
  367. opp-950000000-6 {
  368. opp-hz = /bits/ 64 <950000000>;
  369. opp-microvolt = <750000>;
  370. opp-supported-hw = <0x70>;
  371. };
  372. };
  373. pmu-a55 {
  374. compatible = "arm,cortex-a55-pmu";
  375. interrupt-parent = <&gic>;
  376. interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH &ppi_cluster0>;
  377. };
  378. pmu-a78 {
  379. compatible = "arm,cortex-a78-pmu";
  380. interrupt-parent = <&gic>;
  381. interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH &ppi_cluster1>;
  382. };
  383. psci {
  384. compatible = "arm,psci-1.0";
  385. method = "smc";
  386. };
  387. thermal_zones: thermal-zones {
  388. cpu-little0-thermal {
  389. polling-delay = <1000>;
  390. polling-delay-passive = <150>;
  391. thermal-sensors = <&lvts_mcu MT8188_MCU_LITTLE_CPU0>;
  392. trips {
  393. cpu_little0_alert0: trip-alert0 {
  394. temperature = <85000>;
  395. hysteresis = <2000>;
  396. type = "passive";
  397. };
  398. cpu_little0_alert1: trip-alert1 {
  399. temperature = <95000>;
  400. hysteresis = <2000>;
  401. type = "hot";
  402. };
  403. cpu_little0_crit: trip-crit {
  404. temperature = <100000>;
  405. hysteresis = <0>;
  406. type = "critical";
  407. };
  408. };
  409. cooling-maps {
  410. map0 {
  411. trip = <&cpu_little0_alert0>;
  412. cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  413. <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  414. <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  415. <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  416. <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  417. <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
  418. };
  419. };
  420. };
  421. cpu-little1-thermal {
  422. polling-delay = <1000>;
  423. polling-delay-passive = <150>;
  424. thermal-sensors = <&lvts_mcu MT8188_MCU_LITTLE_CPU1>;
  425. trips {
  426. cpu_little1_alert0: trip-alert0 {
  427. temperature = <85000>;
  428. hysteresis = <2000>;
  429. type = "passive";
  430. };
  431. cpu_little1_alert1: trip-alert1 {
  432. temperature = <95000>;
  433. hysteresis = <2000>;
  434. type = "hot";
  435. };
  436. cpu_little1_crit: trip-crit {
  437. temperature = <100000>;
  438. hysteresis = <0>;
  439. type = "critical";
  440. };
  441. };
  442. cooling-maps {
  443. map0 {
  444. trip = <&cpu_little1_alert0>;
  445. cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  446. <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  447. <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  448. <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  449. <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  450. <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
  451. };
  452. };
  453. };
  454. cpu-little2-thermal {
  455. polling-delay = <1000>;
  456. polling-delay-passive = <150>;
  457. thermal-sensors = <&lvts_mcu MT8188_MCU_LITTLE_CPU2>;
  458. trips {
  459. cpu_little2_alert0: trip-alert0 {
  460. temperature = <85000>;
  461. hysteresis = <2000>;
  462. type = "passive";
  463. };
  464. cpu_little2_alert1: trip-alert1 {
  465. temperature = <95000>;
  466. hysteresis = <2000>;
  467. type = "hot";
  468. };
  469. cpu_little2_crit: trip-crit {
  470. temperature = <100000>;
  471. hysteresis = <0>;
  472. type = "critical";
  473. };
  474. };
  475. cooling-maps {
  476. map0 {
  477. trip = <&cpu_little2_alert0>;
  478. cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  479. <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  480. <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  481. <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  482. <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  483. <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
  484. };
  485. };
  486. };
  487. cpu-little3-thermal {
  488. polling-delay = <1000>;
  489. polling-delay-passive = <150>;
  490. thermal-sensors = <&lvts_mcu MT8188_MCU_LITTLE_CPU3>;
  491. trips {
  492. cpu_little3_alert0: trip-alert0 {
  493. temperature = <85000>;
  494. hysteresis = <2000>;
  495. type = "passive";
  496. };
  497. cpu_little3_alert1: trip-alert1 {
  498. temperature = <95000>;
  499. hysteresis = <2000>;
  500. type = "hot";
  501. };
  502. cpu_little3_crit: trip-crit {
  503. temperature = <100000>;
  504. hysteresis = <0>;
  505. type = "critical";
  506. };
  507. };
  508. cooling-maps {
  509. map0 {
  510. trip = <&cpu_little3_alert0>;
  511. cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  512. <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  513. <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  514. <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  515. <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  516. <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
  517. };
  518. };
  519. };
  520. cpu-big0-thermal {
  521. polling-delay = <1000>;
  522. polling-delay-passive = <100>;
  523. thermal-sensors = <&lvts_mcu MT8188_MCU_BIG_CPU0>;
  524. trips {
  525. cpu_big0_alert0: trip-alert0 {
  526. temperature = <85000>;
  527. hysteresis = <2000>;
  528. type = "passive";
  529. };
  530. cpu_big0_alert1: trip-alert1 {
  531. temperature = <95000>;
  532. hysteresis = <2000>;
  533. type = "hot";
  534. };
  535. cpu_big0_crit: trip-crit {
  536. temperature = <100000>;
  537. hysteresis = <0>;
  538. type = "critical";
  539. };
  540. };
  541. cooling-maps {
  542. map0 {
  543. trip = <&cpu_big0_alert0>;
  544. cooling-device = <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  545. <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
  546. };
  547. };
  548. };
  549. cpu-big1-thermal {
  550. polling-delay = <1000>;
  551. polling-delay-passive = <100>;
  552. thermal-sensors = <&lvts_mcu MT8188_MCU_BIG_CPU1>;
  553. trips {
  554. cpu_big1_alert0: trip-alert0 {
  555. temperature = <85000>;
  556. hysteresis = <2000>;
  557. type = "passive";
  558. };
  559. cpu_big1_alert1: trip-alert1 {
  560. temperature = <95000>;
  561. hysteresis = <2000>;
  562. type = "hot";
  563. };
  564. cpu_big1_crit: trip-crit {
  565. temperature = <100000>;
  566. hysteresis = <0>;
  567. type = "critical";
  568. };
  569. };
  570. cooling-maps {
  571. map0 {
  572. trip = <&cpu_big1_alert0>;
  573. cooling-device = <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
  574. <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
  575. };
  576. };
  577. };
  578. apu-thermal {
  579. polling-delay = <1000>;
  580. polling-delay-passive = <250>;
  581. thermal-sensors = <&lvts_ap MT8188_AP_APU>;
  582. trips {
  583. apu_alert0: trip-alert0 {
  584. temperature = <85000>;
  585. hysteresis = <2000>;
  586. type = "passive";
  587. };
  588. apu_alert1: trip-alert1 {
  589. temperature = <95000>;
  590. hysteresis = <2000>;
  591. type = "hot";
  592. };
  593. apu_crit: trip-crit {
  594. temperature = <100000>;
  595. hysteresis = <0>;
  596. type = "critical";
  597. };
  598. };
  599. };
  600. gpu-thermal {
  601. polling-delay = <1000>;
  602. polling-delay-passive = <250>;
  603. thermal-sensors = <&lvts_ap MT8188_AP_GPU0>;
  604. trips {
  605. gpu_alert0: trip-alert0 {
  606. temperature = <85000>;
  607. hysteresis = <2000>;
  608. type = "passive";
  609. };
  610. gpu_alert1: trip-alert1 {
  611. temperature = <95000>;
  612. hysteresis = <2000>;
  613. type = "hot";
  614. };
  615. gpu_crit: trip-crit {
  616. temperature = <100000>;
  617. hysteresis = <0>;
  618. type = "critical";
  619. };
  620. };
  621. cooling-maps {
  622. map0 {
  623. trip = <&gpu_alert0>;
  624. cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
  625. };
  626. };
  627. };
  628. gpu1-thermal {
  629. polling-delay = <1000>;
  630. polling-delay-passive = <250>;
  631. thermal-sensors = <&lvts_ap MT8188_AP_GPU1>;
  632. trips {
  633. gpu1_alert0: trip-alert0 {
  634. temperature = <85000>;
  635. hysteresis = <2000>;
  636. type = "passive";
  637. };
  638. gpu1_alert1: trip-alert1 {
  639. temperature = <95000>;
  640. hysteresis = <2000>;
  641. type = "hot";
  642. };
  643. gpu1_crit: trip-crit {
  644. temperature = <100000>;
  645. hysteresis = <0>;
  646. type = "critical";
  647. };
  648. };
  649. cooling-maps {
  650. map0 {
  651. trip = <&gpu1_alert0>;
  652. cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
  653. };
  654. };
  655. };
  656. adsp-thermal {
  657. polling-delay = <1000>;
  658. polling-delay-passive = <250>;
  659. thermal-sensors = <&lvts_ap MT8188_AP_ADSP>;
  660. trips {
  661. soc_alert0: trip-alert0 {
  662. temperature = <85000>;
  663. hysteresis = <2000>;
  664. type = "passive";
  665. };
  666. soc_alert1: trip-alert1 {
  667. temperature = <95000>;
  668. hysteresis = <2000>;
  669. type = "hot";
  670. };
  671. soc_crit: trip-crit {
  672. temperature = <100000>;
  673. hysteresis = <0>;
  674. type = "critical";
  675. };
  676. };
  677. };
  678. vdo-thermal {
  679. polling-delay = <1000>;
  680. polling-delay-passive = <250>;
  681. thermal-sensors = <&lvts_ap MT8188_AP_VDO>;
  682. trips {
  683. soc1_alert0: trip-alert0 {
  684. temperature = <85000>;
  685. hysteresis = <2000>;
  686. type = "passive";
  687. };
  688. soc1_alert1: trip-alert1 {
  689. temperature = <95000>;
  690. hysteresis = <2000>;
  691. type = "hot";
  692. };
  693. soc1_crit: trip-crit {
  694. temperature = <100000>;
  695. hysteresis = <0>;
  696. type = "critical";
  697. };
  698. };
  699. };
  700. infra-thermal {
  701. polling-delay = <1000>;
  702. polling-delay-passive = <250>;
  703. thermal-sensors = <&lvts_ap MT8188_AP_INFRA>;
  704. trips {
  705. soc2_alert0: trip-alert0 {
  706. temperature = <85000>;
  707. hysteresis = <2000>;
  708. type = "passive";
  709. };
  710. soc2_alert1: trip-alert1 {
  711. temperature = <95000>;
  712. hysteresis = <2000>;
  713. type = "hot";
  714. };
  715. soc2_crit: trip-crit {
  716. temperature = <100000>;
  717. hysteresis = <0>;
  718. type = "critical";
  719. };
  720. };
  721. };
  722. cam1-thermal {
  723. polling-delay = <1000>;
  724. polling-delay-passive = <250>;
  725. thermal-sensors = <&lvts_ap MT8188_AP_CAM1>;
  726. trips {
  727. cam1_alert0: trip-alert0 {
  728. temperature = <85000>;
  729. hysteresis = <2000>;
  730. type = "passive";
  731. };
  732. cam1_alert1: trip-alert1 {
  733. temperature = <95000>;
  734. hysteresis = <2000>;
  735. type = "hot";
  736. };
  737. cam1_crit: trip-crit {
  738. temperature = <100000>;
  739. hysteresis = <0>;
  740. type = "critical";
  741. };
  742. };
  743. };
  744. cam2-thermal {
  745. polling-delay = <1000>;
  746. polling-delay-passive = <250>;
  747. thermal-sensors = <&lvts_ap MT8188_AP_CAM2>;
  748. trips {
  749. cam2_alert0: trip-alert0 {
  750. temperature = <85000>;
  751. hysteresis = <2000>;
  752. type = "passive";
  753. };
  754. cam2_alert1: trip-alert1 {
  755. temperature = <95000>;
  756. hysteresis = <2000>;
  757. type = "hot";
  758. };
  759. cam2_crit: trip-crit {
  760. temperature = <100000>;
  761. hysteresis = <0>;
  762. type = "critical";
  763. };
  764. };
  765. };
  766. };
  767. timer: timer {
  768. compatible = "arm,armv8-timer";
  769. interrupt-parent = <&gic>;
  770. interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_HIGH 0>,
  771. <GIC_PPI 14 IRQ_TYPE_LEVEL_HIGH 0>,
  772. <GIC_PPI 11 IRQ_TYPE_LEVEL_HIGH 0>,
  773. <GIC_PPI 10 IRQ_TYPE_LEVEL_HIGH 0>;
  774. clock-frequency = <13000000>;
  775. };
  776. soc {
  777. #address-cells = <2>;
  778. #size-cells = <2>;
  779. compatible = "simple-bus";
  780. ranges;
  781. gic: interrupt-controller@c000000 {
  782. compatible = "arm,gic-v3";
  783. #interrupt-cells = <4>;
  784. #redistributor-regions = <1>;
  785. interrupt-parent = <&gic>;
  786. interrupt-controller;
  787. reg = <0 0x0c000000 0 0x40000>,
  788. <0 0x0c040000 0 0x200000>;
  789. interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH 0>;
  790. ppi-partitions {
  791. ppi_cluster0: interrupt-partition-0 {
  792. affinity = <&cpu0 &cpu1 &cpu2 &cpu3 &cpu4 &cpu5>;
  793. };
  794. ppi_cluster1: interrupt-partition-1 {
  795. affinity = <&cpu6 &cpu7>;
  796. };
  797. };
  798. };
  799. topckgen: syscon@10000000 {
  800. compatible = "mediatek,mt8188-topckgen", "syscon";
  801. reg = <0 0x10000000 0 0x1000>;
  802. #clock-cells = <1>;
  803. };
  804. infracfg_ao: syscon@10001000 {
  805. compatible = "mediatek,mt8188-infracfg-ao", "syscon";
  806. reg = <0 0x10001000 0 0x1000>;
  807. #clock-cells = <1>;
  808. #reset-cells = <1>;
  809. };
  810. pericfg: syscon@10003000 {
  811. compatible = "mediatek,mt8188-pericfg", "syscon";
  812. reg = <0 0x10003000 0 0x1000>;
  813. #clock-cells = <1>;
  814. };
  815. pio: pinctrl@10005000 {
  816. compatible = "mediatek,mt8188-pinctrl";
  817. reg = <0 0x10005000 0 0x1000>,
  818. <0 0x11c00000 0 0x1000>,
  819. <0 0x11e10000 0 0x1000>,
  820. <0 0x11e20000 0 0x1000>,
  821. <0 0x11ea0000 0 0x1000>,
  822. <0 0x1000b000 0 0x1000>;
  823. reg-names = "iocfg0", "iocfg_rm", "iocfg_lt",
  824. "iocfg_lm", "iocfg_rt", "eint";
  825. gpio-controller;
  826. #gpio-cells = <2>;
  827. gpio-ranges = <&pio 0 0 176>;
  828. interrupt-controller;
  829. interrupts = <GIC_SPI 235 IRQ_TYPE_LEVEL_HIGH 0>;
  830. #interrupt-cells = <2>;
  831. };
  832. scpsys: syscon@10006000 {
  833. compatible = "mediatek,mt8188-scpsys", "syscon", "simple-mfd";
  834. reg = <0 0x10006000 0 0x1000>;
  835. /* System Power Manager */
  836. spm: power-controller {
  837. compatible = "mediatek,mt8188-power-controller";
  838. #address-cells = <1>;
  839. #size-cells = <0>;
  840. #power-domain-cells = <1>;
  841. /* power domain of the SoC */
  842. mfg0: power-domain@MT8188_POWER_DOMAIN_MFG0 {
  843. reg = <MT8188_POWER_DOMAIN_MFG0>;
  844. #address-cells = <1>;
  845. #size-cells = <0>;
  846. #power-domain-cells = <1>;
  847. mfg1: power-domain@MT8188_POWER_DOMAIN_MFG1 {
  848. reg = <MT8188_POWER_DOMAIN_MFG1>;
  849. clocks = <&apmixedsys CLK_APMIXED_MFGPLL>,
  850. <&topckgen CLK_TOP_MFG_CORE_TMP>;
  851. clock-names = "mfg", "alt";
  852. mediatek,infracfg = <&infracfg_ao>;
  853. #address-cells = <1>;
  854. #size-cells = <0>;
  855. #power-domain-cells = <1>;
  856. power-domain@MT8188_POWER_DOMAIN_MFG2 {
  857. reg = <MT8188_POWER_DOMAIN_MFG2>;
  858. #power-domain-cells = <0>;
  859. };
  860. power-domain@MT8188_POWER_DOMAIN_MFG3 {
  861. reg = <MT8188_POWER_DOMAIN_MFG3>;
  862. #power-domain-cells = <0>;
  863. };
  864. power-domain@MT8188_POWER_DOMAIN_MFG4 {
  865. reg = <MT8188_POWER_DOMAIN_MFG4>;
  866. #power-domain-cells = <0>;
  867. };
  868. };
  869. };
  870. power-domain@MT8188_POWER_DOMAIN_VPPSYS0 {
  871. reg = <MT8188_POWER_DOMAIN_VPPSYS0>;
  872. clocks = <&topckgen CLK_TOP_VPP>,
  873. <&topckgen CLK_TOP_CAM>,
  874. <&topckgen CLK_TOP_CCU>,
  875. <&topckgen CLK_TOP_IMG>,
  876. <&topckgen CLK_TOP_VENC>,
  877. <&topckgen CLK_TOP_VDEC>,
  878. <&topckgen CLK_TOP_WPE_VPP>,
  879. <&topckgen CLK_TOP_CFGREG_CLOCK_EN_VPP0>,
  880. <&topckgen CLK_TOP_CFGREG_F26M_VPP0>,
  881. <&vppsys0 CLK_VPP0_SMI_COMMON_MMSRAM>,
  882. <&vppsys0 CLK_VPP0_GALS_VDO0_LARB0_MMSRAM>,
  883. <&vppsys0 CLK_VPP0_GALS_VDO0_LARB1_MMSRAM>,
  884. <&vppsys0 CLK_VPP0_GALS_VENCSYS_MMSRAM>,
  885. <&vppsys0 CLK_VPP0_GALS_VENCSYS_CORE1_MMSRAM>,
  886. <&vppsys0 CLK_VPP0_GALS_INFRA_MMSRAM>,
  887. <&vppsys0 CLK_VPP0_GALS_CAMSYS_MMSRAM>,
  888. <&vppsys0 CLK_VPP0_GALS_VPP1_LARB5_MMSRAM>,
  889. <&vppsys0 CLK_VPP0_GALS_VPP1_LARB6_MMSRAM>,
  890. <&vppsys0 CLK_VPP0_SMI_REORDER_MMSRAM>,
  891. <&vppsys0 CLK_VPP0_SMI_IOMMU>,
  892. <&vppsys0 CLK_VPP0_GALS_IMGSYS_CAMSYS>,
  893. <&vppsys0 CLK_VPP0_GALS_EMI0_EMI1>,
  894. <&vppsys0 CLK_VPP0_SMI_SUB_COMMON_REORDER>,
  895. <&vppsys0 CLK_VPP0_SMI_RSI>,
  896. <&vppsys0 CLK_VPP0_SMI_COMMON_LARB4>,
  897. <&vppsys0 CLK_VPP0_GALS_VDEC_VDEC_CORE1>,
  898. <&vppsys0 CLK_VPP0_GALS_VPP1_WPESYS>,
  899. <&vppsys0 CLK_VPP0_GALS_VDO0_VDO1_VENCSYS_CORE1>;
  900. clock-names = "top", "cam", "ccu", "img", "venc",
  901. "vdec", "wpe", "cfgck", "cfgxo",
  902. "ss-sram-cmn", "ss-sram-v0l0", "ss-sram-v0l1",
  903. "ss-sram-ve0", "ss-sram-ve1", "ss-sram-ifa",
  904. "ss-sram-cam", "ss-sram-v1l5", "ss-sram-v1l6",
  905. "ss-sram-rdr", "ss-iommu", "ss-imgcam",
  906. "ss-emi", "ss-subcmn-rdr", "ss-rsi",
  907. "ss-cmn-l4", "ss-vdec1", "ss-wpe",
  908. "ss-cvdo-ve1";
  909. mediatek,infracfg = <&infracfg_ao>;
  910. #address-cells = <1>;
  911. #size-cells = <0>;
  912. #power-domain-cells = <1>;
  913. power-domain@MT8188_POWER_DOMAIN_VDOSYS0 {
  914. reg = <MT8188_POWER_DOMAIN_VDOSYS0>;
  915. clocks = <&topckgen CLK_TOP_CFGREG_CLOCK_EN_VDO0>,
  916. <&topckgen CLK_TOP_CFGREG_F26M_VDO0>,
  917. <&vdosys0 CLK_VDO0_SMI_GALS>,
  918. <&vdosys0 CLK_VDO0_SMI_COMMON>,
  919. <&vdosys0 CLK_VDO0_SMI_EMI>,
  920. <&vdosys0 CLK_VDO0_SMI_IOMMU>,
  921. <&vdosys0 CLK_VDO0_SMI_LARB>,
  922. <&vdosys0 CLK_VDO0_SMI_RSI>,
  923. <&vdosys0 CLK_VDO0_APB_BUS>;
  924. clock-names = "cfgck", "cfgxo", "ss-gals",
  925. "ss-cmn", "ss-emi", "ss-iommu",
  926. "ss-larb", "ss-rsi", "ss-bus";
  927. mediatek,infracfg = <&infracfg_ao>;
  928. #address-cells = <1>;
  929. #size-cells = <0>;
  930. #power-domain-cells = <1>;
  931. power-domain@MT8188_POWER_DOMAIN_VPPSYS1 {
  932. reg = <MT8188_POWER_DOMAIN_VPPSYS1>;
  933. clocks = <&topckgen CLK_TOP_CFGREG_CLOCK_EN_VPP1>,
  934. <&topckgen CLK_TOP_CFGREG_F26M_VPP1>,
  935. <&vppsys1 CLK_VPP1_GALS5>,
  936. <&vppsys1 CLK_VPP1_GALS6>,
  937. <&vppsys1 CLK_VPP1_LARB5>,
  938. <&vppsys1 CLK_VPP1_LARB6>;
  939. clock-names = "cfgck", "cfgxo",
  940. "ss-vpp1-g5", "ss-vpp1-g6",
  941. "ss-vpp1-l5", "ss-vpp1-l6";
  942. mediatek,infracfg = <&infracfg_ao>;
  943. #power-domain-cells = <0>;
  944. };
  945. power-domain@MT8188_POWER_DOMAIN_VDEC1 {
  946. reg = <MT8188_POWER_DOMAIN_VDEC1>;
  947. clocks = <&vdecsys CLK_VDEC2_LARB1>;
  948. clock-names = "ss-vdec";
  949. mediatek,infracfg = <&infracfg_ao>;
  950. #power-domain-cells = <0>;
  951. };
  952. power-domain@MT8188_POWER_DOMAIN_VDEC0 {
  953. reg = <MT8188_POWER_DOMAIN_VDEC0>;
  954. clocks = <&vdecsys_soc CLK_VDEC1_SOC_LARB1>;
  955. clock-names = "ss-vdec";
  956. mediatek,infracfg = <&infracfg_ao>;
  957. #power-domain-cells = <0>;
  958. };
  959. cam_vcore: power-domain@MT8188_POWER_DOMAIN_CAM_VCORE {
  960. reg = <MT8188_POWER_DOMAIN_CAM_VCORE>;
  961. clocks = <&topckgen CLK_TOP_CAM>,
  962. <&topckgen CLK_TOP_CCU>,
  963. <&topckgen CLK_TOP_CCU_AHB>,
  964. <&topckgen CLK_TOP_CFGREG_CLOCK_ISP_AXI_GALS>;
  965. clock-names = "cam", "ccu", "bus", "cfgck";
  966. mediatek,infracfg = <&infracfg_ao>;
  967. #address-cells = <1>;
  968. #size-cells = <0>;
  969. #power-domain-cells = <1>;
  970. power-domain@MT8188_POWER_DOMAIN_CAM_MAIN {
  971. reg = <MT8188_POWER_DOMAIN_CAM_MAIN>;
  972. clocks = <&camsys CLK_CAM_MAIN_LARB13>,
  973. <&camsys CLK_CAM_MAIN_LARB14>,
  974. <&camsys CLK_CAM_MAIN_CAM2MM0_GALS>,
  975. <&camsys CLK_CAM_MAIN_CAM2MM1_GALS>,
  976. <&camsys CLK_CAM_MAIN_CAM2SYS_GALS>;
  977. clock-names= "ss-cam-l13", "ss-cam-l14",
  978. "ss-cam-mm0", "ss-cam-mm1",
  979. "ss-camsys";
  980. mediatek,infracfg = <&infracfg_ao>;
  981. #address-cells = <1>;
  982. #size-cells = <0>;
  983. #power-domain-cells = <1>;
  984. power-domain@MT8188_POWER_DOMAIN_CAM_SUBB {
  985. reg = <MT8188_POWER_DOMAIN_CAM_SUBB>;
  986. clocks = <&camsys CLK_CAM_MAIN_CAM_SUBB>,
  987. <&camsys_rawb CLK_CAM_RAWB_LARBX>,
  988. <&camsys_yuvb CLK_CAM_YUVB_LARBX>;
  989. clock-names = "ss-camb-sub",
  990. "ss-camb-raw",
  991. "ss-camb-yuv";
  992. #power-domain-cells = <0>;
  993. };
  994. power-domain@MT8188_POWER_DOMAIN_CAM_SUBA {
  995. reg =<MT8188_POWER_DOMAIN_CAM_SUBA>;
  996. clocks = <&camsys CLK_CAM_MAIN_CAM_SUBA>,
  997. <&camsys_rawa CLK_CAM_RAWA_LARBX>,
  998. <&camsys_yuva CLK_CAM_YUVA_LARBX>;
  999. clock-names = "ss-cama-sub",
  1000. "ss-cama-raw",
  1001. "ss-cama-yuv";
  1002. #power-domain-cells = <0>;
  1003. };
  1004. };
  1005. };
  1006. power-domain@MT8188_POWER_DOMAIN_VDOSYS1 {
  1007. reg = <MT8188_POWER_DOMAIN_VDOSYS1>;
  1008. clocks = <&topckgen CLK_TOP_CFGREG_CLOCK_EN_VDO1>,
  1009. <&topckgen CLK_TOP_CFGREG_F26M_VDO1>,
  1010. <&vdosys1 CLK_VDO1_SMI_LARB2>,
  1011. <&vdosys1 CLK_VDO1_SMI_LARB3>,
  1012. <&vdosys1 CLK_VDO1_GALS>;
  1013. clock-names = "cfgck", "cfgxo", "ss-larb2",
  1014. "ss-larb3", "ss-gals";
  1015. mediatek,infracfg = <&infracfg_ao>;
  1016. #address-cells = <1>;
  1017. #size-cells = <0>;
  1018. #power-domain-cells = <1>;
  1019. power-domain@MT8188_POWER_DOMAIN_HDMI_TX {
  1020. reg = <MT8188_POWER_DOMAIN_HDMI_TX>;
  1021. clocks = <&topckgen CLK_TOP_HDMI_APB>,
  1022. <&topckgen CLK_TOP_HDCP_24M>;
  1023. clock-names = "bus", "hdcp";
  1024. mediatek,infracfg = <&infracfg_ao>;
  1025. #power-domain-cells = <0>;
  1026. };
  1027. power-domain@MT8188_POWER_DOMAIN_DP_TX {
  1028. reg = <MT8188_POWER_DOMAIN_DP_TX>;
  1029. mediatek,infracfg = <&infracfg_ao>;
  1030. #power-domain-cells = <0>;
  1031. };
  1032. power-domain@MT8188_POWER_DOMAIN_EDP_TX {
  1033. reg = <MT8188_POWER_DOMAIN_EDP_TX>;
  1034. mediatek,infracfg = <&infracfg_ao>;
  1035. #power-domain-cells = <0>;
  1036. };
  1037. };
  1038. power-domain@MT8188_POWER_DOMAIN_VENC {
  1039. reg = <MT8188_POWER_DOMAIN_VENC>;
  1040. clocks = <&vencsys CLK_VENC1_LARB>,
  1041. <&vencsys CLK_VENC1_VENC>,
  1042. <&vencsys CLK_VENC1_GALS>,
  1043. <&vencsys CLK_VENC1_GALS_SRAM>;
  1044. clock-names = "ss-ve1-larb", "ss-ve1-core",
  1045. "ss-ve1-gals", "ss-ve1-sram";
  1046. mediatek,infracfg = <&infracfg_ao>;
  1047. #power-domain-cells = <0>;
  1048. };
  1049. power-domain@MT8188_POWER_DOMAIN_WPE {
  1050. reg = <MT8188_POWER_DOMAIN_WPE>;
  1051. clocks = <&wpesys CLK_WPE_TOP_SMI_LARB7>,
  1052. <&wpesys CLK_WPE_TOP_SMI_LARB7_PCLK_EN>;
  1053. clock-names = "ss-wpe-l7", "ss-wpe-l7pce";
  1054. mediatek,infracfg = <&infracfg_ao>;
  1055. #power-domain-cells = <0>;
  1056. };
  1057. };
  1058. };
  1059. power-domain@MT8188_POWER_DOMAIN_PEXTP_MAC_P0 {
  1060. reg = <MT8188_POWER_DOMAIN_PEXTP_MAC_P0>;
  1061. mediatek,infracfg = <&infracfg_ao>;
  1062. clocks = <&pericfg_ao CLK_PERI_AO_PCIE_P0_FMEM>;
  1063. clock-names = "ss-pextp-fmem";
  1064. #power-domain-cells = <0>;
  1065. };
  1066. power-domain@MT8188_POWER_DOMAIN_CSIRX_TOP {
  1067. reg = <MT8188_POWER_DOMAIN_CSIRX_TOP>;
  1068. clocks = <&topckgen CLK_TOP_SENINF>,
  1069. <&topckgen CLK_TOP_SENINF1>;
  1070. clock-names = "seninf0", "seninf1";
  1071. #power-domain-cells = <0>;
  1072. };
  1073. power-domain@MT8188_POWER_DOMAIN_PEXTP_PHY_TOP {
  1074. reg = <MT8188_POWER_DOMAIN_PEXTP_PHY_TOP>;
  1075. #power-domain-cells = <0>;
  1076. };
  1077. power-domain@MT8188_POWER_DOMAIN_ADSP_AO {
  1078. reg = <MT8188_POWER_DOMAIN_ADSP_AO>;
  1079. clocks = <&topckgen CLK_TOP_AUDIO_LOCAL_BUS>,
  1080. <&topckgen CLK_TOP_ADSP>;
  1081. clock-names = "bus", "main";
  1082. mediatek,infracfg = <&infracfg_ao>;
  1083. #address-cells = <1>;
  1084. #size-cells = <0>;
  1085. #power-domain-cells = <1>;
  1086. power-domain@MT8188_POWER_DOMAIN_ADSP_INFRA {
  1087. reg = <MT8188_POWER_DOMAIN_ADSP_INFRA>;
  1088. mediatek,infracfg = <&infracfg_ao>;
  1089. #address-cells = <1>;
  1090. #size-cells = <0>;
  1091. #power-domain-cells = <1>;
  1092. power-domain@MT8188_POWER_DOMAIN_AUDIO_ASRC {
  1093. reg = <MT8188_POWER_DOMAIN_AUDIO_ASRC>;
  1094. clocks = <&topckgen CLK_TOP_ASM_H>;
  1095. clock-names = "asm";
  1096. mediatek,infracfg = <&infracfg_ao>;
  1097. #power-domain-cells = <0>;
  1098. };
  1099. power-domain@MT8188_POWER_DOMAIN_AUDIO {
  1100. reg = <MT8188_POWER_DOMAIN_AUDIO>;
  1101. clocks = <&topckgen CLK_TOP_A1SYS_HP>,
  1102. <&topckgen CLK_TOP_AUD_INTBUS>,
  1103. <&adsp_audio26m CLK_AUDIODSP_AUDIO26M>;
  1104. clock-names = "a1sys", "intbus", "adspck";
  1105. mediatek,infracfg = <&infracfg_ao>;
  1106. #power-domain-cells = <0>;
  1107. };
  1108. power-domain@MT8188_POWER_DOMAIN_ADSP {
  1109. reg = <MT8188_POWER_DOMAIN_ADSP>;
  1110. mediatek,infracfg = <&infracfg_ao>;
  1111. #power-domain-cells = <0>;
  1112. };
  1113. };
  1114. };
  1115. power-domain@MT8188_POWER_DOMAIN_ETHER {
  1116. reg = <MT8188_POWER_DOMAIN_ETHER>;
  1117. clocks = <&pericfg_ao CLK_PERI_AO_ETHERNET_MAC>;
  1118. clock-names = "ethermac";
  1119. mediatek,infracfg = <&infracfg_ao>;
  1120. #power-domain-cells = <0>;
  1121. };
  1122. };
  1123. };
  1124. watchdog: watchdog@10007000 {
  1125. compatible = "mediatek,mt8188-wdt";
  1126. reg = <0 0x10007000 0 0x100>;
  1127. mediatek,disable-extrst;
  1128. #reset-cells = <1>;
  1129. };
  1130. apmixedsys: syscon@1000c000 {
  1131. compatible = "mediatek,mt8188-apmixedsys", "syscon";
  1132. reg = <0 0x1000c000 0 0x1000>;
  1133. #clock-cells = <1>;
  1134. };
  1135. systimer: timer@10017000 {
  1136. compatible = "mediatek,mt8188-timer", "mediatek,mt6765-timer";
  1137. reg = <0 0x10017000 0 0x1000>;
  1138. interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH 0>;
  1139. clocks = <&clk13m>;
  1140. };
  1141. pwrap: pwrap@10024000 {
  1142. compatible = "mediatek,mt8188-pwrap", "mediatek,mt8195-pwrap", "syscon";
  1143. reg = <0 0x10024000 0 0x1000>;
  1144. reg-names = "pwrap";
  1145. interrupts = <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH 0>;
  1146. clocks = <&infracfg_ao CLK_INFRA_AO_PMIC_AP>,
  1147. <&infracfg_ao CLK_INFRA_AO_PMIC_TMR>;
  1148. clock-names = "spi", "wrap";
  1149. };
  1150. gce0: mailbox@10320000 {
  1151. compatible = "mediatek,mt8188-gce";
  1152. reg = <0 0x10320000 0 0x4000>;
  1153. interrupts = <GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH 0>;
  1154. #mbox-cells = <2>;
  1155. clocks = <&infracfg_ao CLK_INFRA_AO_GCE>;
  1156. };
  1157. gce1: mailbox@10330000 {
  1158. compatible = "mediatek,mt8188-gce";
  1159. reg = <0 0x10330000 0 0x4000>;
  1160. interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_HIGH 0>;
  1161. #mbox-cells = <2>;
  1162. clocks = <&infracfg_ao CLK_INFRA_AO_GCE2>;
  1163. };
  1164. scp: scp@10500000 {
  1165. compatible = "mediatek,mt8188-scp";
  1166. reg = <0 0x10500000 0 0x100000>,
  1167. <0 0x10720000 0 0xe0000>;
  1168. reg-names = "sram", "cfg";
  1169. interrupts = <GIC_SPI 462 IRQ_TYPE_LEVEL_HIGH 0>;
  1170. };
  1171. adsp_audio26m: clock-controller@10b91100 {
  1172. compatible = "mediatek,mt8188-adsp-audio26m";
  1173. reg = <0 0x10b91100 0 0x100>;
  1174. #clock-cells = <1>;
  1175. };
  1176. uart0: serial@11001100 {
  1177. compatible = "mediatek,mt8188-uart", "mediatek,mt6577-uart";
  1178. reg = <0 0x11001100 0 0x100>;
  1179. interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH 0>;
  1180. clocks = <&clk26m>, <&infracfg_ao CLK_INFRA_AO_UART0>;
  1181. clock-names = "baud", "bus";
  1182. status = "disabled";
  1183. };
  1184. uart1: serial@11001200 {
  1185. compatible = "mediatek,mt8188-uart", "mediatek,mt6577-uart";
  1186. reg = <0 0x11001200 0 0x100>;
  1187. interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH 0>;
  1188. clocks = <&clk26m>, <&infracfg_ao CLK_INFRA_AO_UART1>;
  1189. clock-names = "baud", "bus";
  1190. status = "disabled";
  1191. };
  1192. uart2: serial@11001300 {
  1193. compatible = "mediatek,mt8188-uart", "mediatek,mt6577-uart";
  1194. reg = <0 0x11001300 0 0x100>;
  1195. interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH 0>;
  1196. clocks = <&clk26m>, <&infracfg_ao CLK_INFRA_AO_UART2>;
  1197. clock-names = "baud", "bus";
  1198. status = "disabled";
  1199. };
  1200. uart3: serial@11001400 {
  1201. compatible = "mediatek,mt8188-uart", "mediatek,mt6577-uart";
  1202. reg = <0 0x11001400 0 0x100>;
  1203. interrupts = <GIC_SPI 723 IRQ_TYPE_LEVEL_HIGH 0>;
  1204. clocks = <&clk26m>, <&infracfg_ao CLK_INFRA_AO_UART3>;
  1205. clock-names = "baud", "bus";
  1206. status = "disabled";
  1207. };
  1208. auxadc: adc@11002000 {
  1209. compatible = "mediatek,mt8188-auxadc", "mediatek,mt8173-auxadc";
  1210. reg = <0 0x11002000 0 0x1000>;
  1211. clocks = <&infracfg_ao CLK_INFRA_AO_AUXADC>;
  1212. clock-names = "main";
  1213. #io-channel-cells = <1>;
  1214. status = "disabled";
  1215. };
  1216. pericfg_ao: syscon@11003000 {
  1217. compatible = "mediatek,mt8188-pericfg-ao", "syscon";
  1218. reg = <0 0x11003000 0 0x1000>;
  1219. #clock-cells = <1>;
  1220. };
  1221. spi0: spi@1100a000 {
  1222. compatible = "mediatek,mt8188-spi-ipm", "mediatek,spi-ipm";
  1223. #address-cells = <1>;
  1224. #size-cells = <0>;
  1225. reg = <0 0x1100a000 0 0x1000>;
  1226. interrupts = <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH 0>;
  1227. clocks = <&topckgen CLK_TOP_UNIVPLL_D6_D2>,
  1228. <&topckgen CLK_TOP_SPI>,
  1229. <&infracfg_ao CLK_INFRA_AO_SPI0>;
  1230. clock-names = "parent-clk", "sel-clk", "spi-clk";
  1231. status = "disabled";
  1232. };
  1233. lvts_ap: thermal-sensor@1100b000 {
  1234. compatible = "mediatek,mt8188-lvts-ap";
  1235. reg = <0 0x1100b000 0 0xc00>;
  1236. interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH 0>;
  1237. clocks = <&infracfg_ao CLK_INFRA_AO_THERM>;
  1238. resets = <&infracfg_ao MT8188_INFRA_RST1_THERMAL_CTRL_RST>;
  1239. nvmem-cells = <&lvts_efuse_data1>;
  1240. nvmem-cell-names = "lvts-calib-data-1";
  1241. #thermal-sensor-cells = <1>;
  1242. };
  1243. spi1: spi@11010000 {
  1244. compatible = "mediatek,mt8188-spi-ipm", "mediatek,spi-ipm";
  1245. #address-cells = <1>;
  1246. #size-cells = <0>;
  1247. reg = <0 0x11010000 0 0x1000>;
  1248. interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH 0>;
  1249. clocks = <&topckgen CLK_TOP_UNIVPLL_D6_D2>,
  1250. <&topckgen CLK_TOP_SPI>,
  1251. <&infracfg_ao CLK_INFRA_AO_SPI1>;
  1252. clock-names = "parent-clk", "sel-clk", "spi-clk";
  1253. status = "disabled";
  1254. };
  1255. spi2: spi@11012000 {
  1256. compatible = "mediatek,mt8188-spi-ipm", "mediatek,spi-ipm";
  1257. #address-cells = <1>;
  1258. #size-cells = <0>;
  1259. reg = <0 0x11012000 0 0x1000>;
  1260. interrupts = <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH 0>;
  1261. clocks = <&topckgen CLK_TOP_UNIVPLL_D6_D2>,
  1262. <&topckgen CLK_TOP_SPI>,
  1263. <&infracfg_ao CLK_INFRA_AO_SPI2>;
  1264. clock-names = "parent-clk", "sel-clk", "spi-clk";
  1265. status = "disabled";
  1266. };
  1267. spi3: spi@11013000 {
  1268. compatible = "mediatek,mt8188-spi-ipm", "mediatek,spi-ipm";
  1269. #address-cells = <1>;
  1270. #size-cells = <0>;
  1271. reg = <0 0x11013000 0 0x1000>;
  1272. interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH 0>;
  1273. clocks = <&topckgen CLK_TOP_UNIVPLL_D6_D2>,
  1274. <&topckgen CLK_TOP_SPI>,
  1275. <&infracfg_ao CLK_INFRA_AO_SPI3>;
  1276. clock-names = "parent-clk", "sel-clk", "spi-clk";
  1277. status = "disabled";
  1278. };
  1279. spi4: spi@11018000 {
  1280. compatible = "mediatek,mt8188-spi-ipm", "mediatek,spi-ipm";
  1281. #address-cells = <1>;
  1282. #size-cells = <0>;
  1283. reg = <0 0x11018000 0 0x1000>;
  1284. interrupts = <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH 0>;
  1285. clocks = <&topckgen CLK_TOP_UNIVPLL_D6_D2>,
  1286. <&topckgen CLK_TOP_SPI>,
  1287. <&infracfg_ao CLK_INFRA_AO_SPI4>;
  1288. clock-names = "parent-clk", "sel-clk", "spi-clk";
  1289. status = "disabled";
  1290. };
  1291. spi5: spi@11019000 {
  1292. compatible = "mediatek,mt8188-spi-ipm", "mediatek,spi-ipm";
  1293. #address-cells = <1>;
  1294. #size-cells = <0>;
  1295. reg = <0 0x11019000 0 0x1000>;
  1296. interrupts = <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH 0>;
  1297. clocks = <&topckgen CLK_TOP_UNIVPLL_D6_D2>,
  1298. <&topckgen CLK_TOP_SPI>,
  1299. <&infracfg_ao CLK_INFRA_AO_SPI5>;
  1300. clock-names = "parent-clk", "sel-clk", "spi-clk";
  1301. status = "disabled";
  1302. };
  1303. xhci1: usb@11200000 {
  1304. compatible = "mediatek,mt8188-xhci", "mediatek,mtk-xhci";
  1305. reg = <0 0x11200000 0 0x1000>,
  1306. <0 0x11203e00 0 0x0100>;
  1307. reg-names = "mac", "ippc";
  1308. interrupts = <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH 0>;
  1309. phys = <&u2port1 PHY_TYPE_USB2>,
  1310. <&u3port1 PHY_TYPE_USB3>;
  1311. assigned-clocks = <&topckgen CLK_TOP_USB_TOP>,
  1312. <&topckgen CLK_TOP_SSUSB_XHCI>;
  1313. assigned-clock-parents = <&topckgen CLK_TOP_UNIVPLL_D5_D4>,
  1314. <&topckgen CLK_TOP_UNIVPLL_D5_D4>;
  1315. clocks = <&pericfg_ao CLK_PERI_AO_SSUSB_BUS>,
  1316. <&topckgen CLK_TOP_SSUSB_TOP_REF>,
  1317. <&pericfg_ao CLK_PERI_AO_SSUSB_XHCI>;
  1318. clock-names = "sys_ck", "ref_ck", "mcu_ck";
  1319. mediatek,syscon-wakeup = <&pericfg 0x468 2>;
  1320. wakeup-source;
  1321. status = "disabled";
  1322. };
  1323. mmc0: mmc@11230000 {
  1324. compatible = "mediatek,mt8188-mmc", "mediatek,mt8183-mmc";
  1325. reg = <0 0x11230000 0 0x10000>,
  1326. <0 0x11f50000 0 0x1000>;
  1327. interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH 0>;
  1328. clocks = <&topckgen CLK_TOP_MSDC50_0>,
  1329. <&infracfg_ao CLK_INFRA_AO_MSDC0>,
  1330. <&infracfg_ao CLK_INFRA_AO_MSDC0_SRC>,
  1331. <&infracfg_ao CLK_INFRA_AO_RG_AES_MSDCFDE_CK_0P>;
  1332. clock-names = "source", "hclk", "source_cg", "crypto_clk";
  1333. status = "disabled";
  1334. };
  1335. mmc1: mmc@11240000 {
  1336. compatible = "mediatek,mt8188-mmc", "mediatek,mt8183-mmc";
  1337. reg = <0 0x11240000 0 0x1000>,
  1338. <0 0x11eb0000 0 0x1000>;
  1339. interrupts = <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH 0>;
  1340. clocks = <&topckgen CLK_TOP_MSDC30_1>,
  1341. <&infracfg_ao CLK_INFRA_AO_MSDC1>,
  1342. <&infracfg_ao CLK_INFRA_AO_MSDC1_SRC>;
  1343. clock-names = "source", "hclk", "source_cg";
  1344. assigned-clocks = <&topckgen CLK_TOP_MSDC30_1>;
  1345. assigned-clock-parents = <&topckgen CLK_TOP_MSDCPLL_D2>;
  1346. status = "disabled";
  1347. };
  1348. lvts_mcu: thermal-sensor@11278000 {
  1349. compatible = "mediatek,mt8188-lvts-mcu";
  1350. reg = <0 0x11278000 0 0x1000>;
  1351. interrupts = <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH 0>;
  1352. clocks = <&infracfg_ao CLK_INFRA_AO_THERM>;
  1353. resets = <&infracfg_ao MT8188_INFRA_RST1_THERMAL_MCU_RST>;
  1354. nvmem-cells = <&lvts_efuse_data1>;
  1355. nvmem-cell-names = "lvts-calib-data-1";
  1356. #thermal-sensor-cells = <1>;
  1357. };
  1358. i2c0: i2c@11280000 {
  1359. compatible = "mediatek,mt8188-i2c";
  1360. reg = <0 0x11280000 0 0x1000>,
  1361. <0 0x10220080 0 0x80>;
  1362. interrupts = <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH 0>;
  1363. clock-div = <1>;
  1364. clocks = <&imp_iic_wrap_c CLK_IMP_IIC_WRAP_C_AP_CLOCK_I2C0>,
  1365. <&infracfg_ao CLK_INFRA_AO_APDMA_BCLK>;
  1366. clock-names = "main", "dma";
  1367. #address-cells = <1>;
  1368. #size-cells = <0>;
  1369. status = "disabled";
  1370. };
  1371. i2c2: i2c@11281000 {
  1372. compatible = "mediatek,mt8188-i2c";
  1373. reg = <0 0x11281000 0 0x1000>,
  1374. <0 0x10220180 0 0x80>;
  1375. interrupts = <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH 0>;
  1376. clock-div = <1>;
  1377. clocks = <&imp_iic_wrap_c CLK_IMP_IIC_WRAP_C_AP_CLOCK_I2C2>,
  1378. <&infracfg_ao CLK_INFRA_AO_APDMA_BCLK>;
  1379. clock-names = "main", "dma";
  1380. #address-cells = <1>;
  1381. #size-cells = <0>;
  1382. status = "disabled";
  1383. };
  1384. i2c3: i2c@11282000 {
  1385. compatible = "mediatek,mt8188-i2c";
  1386. reg = <0 0x11282000 0 0x1000>,
  1387. <0 0x10220280 0 0x80>;
  1388. interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH 0>;
  1389. clock-div = <1>;
  1390. clocks = <&imp_iic_wrap_c CLK_IMP_IIC_WRAP_C_AP_CLOCK_I2C3>,
  1391. <&infracfg_ao CLK_INFRA_AO_APDMA_BCLK>;
  1392. clock-names = "main", "dma";
  1393. #address-cells = <1>;
  1394. #size-cells = <0>;
  1395. status = "disabled";
  1396. };
  1397. imp_iic_wrap_c: clock-controller@11283000 {
  1398. compatible = "mediatek,mt8188-imp-iic-wrap-c";
  1399. reg = <0 0x11283000 0 0x1000>;
  1400. #clock-cells = <1>;
  1401. };
  1402. xhci2: usb@112a0000 {
  1403. compatible = "mediatek,mt8188-xhci", "mediatek,mtk-xhci";
  1404. reg = <0 0x112a0000 0 0x1000>,
  1405. <0 0x112a3e00 0 0x0100>;
  1406. reg-names = "mac", "ippc";
  1407. interrupts = <GIC_SPI 536 IRQ_TYPE_LEVEL_HIGH 0>;
  1408. phys = <&u2port2 PHY_TYPE_USB2>;
  1409. assigned-clocks = <&topckgen CLK_TOP_SSUSB_XHCI_3P>,
  1410. <&topckgen CLK_TOP_USB_TOP_3P>;
  1411. assigned-clock-parents = <&topckgen CLK_TOP_UNIVPLL_D5_D4>,
  1412. <&topckgen CLK_TOP_UNIVPLL_D5_D4>;
  1413. clocks = <&pericfg_ao CLK_PERI_AO_SSUSB_3P_BUS>,
  1414. <&topckgen CLK_TOP_SSUSB_TOP_P3_REF>,
  1415. <&pericfg_ao CLK_PERI_AO_SSUSB_3P_XHCI>;
  1416. clock-names = "sys_ck", "ref_ck", "mcu_ck";
  1417. status = "disabled";
  1418. };
  1419. xhci0: usb@112b0000 {
  1420. compatible = "mediatek,mt8188-xhci", "mediatek,mtk-xhci";
  1421. reg = <0 0x112b0000 0 0x1000>,
  1422. <0 0x112b3e00 0 0x0100>;
  1423. reg-names = "mac", "ippc";
  1424. interrupts = <GIC_SPI 533 IRQ_TYPE_LEVEL_HIGH 0>;
  1425. phys = <&u2port0 PHY_TYPE_USB2>;
  1426. assigned-clocks = <&topckgen CLK_TOP_SSUSB_XHCI_2P>,
  1427. <&topckgen CLK_TOP_USB_TOP_2P>;
  1428. assigned-clock-parents = <&topckgen CLK_TOP_UNIVPLL_D5_D4>,
  1429. <&topckgen CLK_TOP_UNIVPLL_D5_D4>;
  1430. clocks = <&pericfg_ao CLK_PERI_AO_SSUSB_2P_BUS>,
  1431. <&topckgen CLK_TOP_SSUSB_TOP_P2_REF>,
  1432. <&pericfg_ao CLK_PERI_AO_SSUSB_2P_XHCI>;
  1433. clock-names = "sys_ck", "ref_ck", "mcu_ck";
  1434. mediatek,syscon-wakeup = <&pericfg 0x460 2>;
  1435. wakeup-source;
  1436. status = "disabled";
  1437. };
  1438. nor_flash: spi@1132c000 {
  1439. compatible = "mediatek,mt8188-nor", "mediatek,mt8186-nor";
  1440. reg = <0 0x1132c000 0 0x1000>;
  1441. clocks = <&topckgen CLK_TOP_SPINOR>,
  1442. <&pericfg_ao CLK_PERI_AO_FLASHIFLASHCK>,
  1443. <&pericfg_ao CLK_PERI_AO_FLASHIF_BUS>;
  1444. clock-names = "spi", "sf", "axi";
  1445. assigned-clocks = <&topckgen CLK_TOP_SPINOR>;
  1446. interrupts = <GIC_SPI 825 IRQ_TYPE_LEVEL_HIGH 0>;
  1447. status = "disabled";
  1448. };
  1449. i2c1: i2c@11e00000 {
  1450. compatible = "mediatek,mt8188-i2c";
  1451. reg = <0 0x11e00000 0 0x1000>,
  1452. <0 0x10220100 0 0x80>;
  1453. interrupts = <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH 0>;
  1454. clock-div = <1>;
  1455. clocks = <&imp_iic_wrap_w CLK_IMP_IIC_WRAP_W_AP_CLOCK_I2C1>,
  1456. <&infracfg_ao CLK_INFRA_AO_APDMA_BCLK>;
  1457. clock-names = "main", "dma";
  1458. #address-cells = <1>;
  1459. #size-cells = <0>;
  1460. status = "disabled";
  1461. };
  1462. i2c4: i2c@11e01000 {
  1463. compatible = "mediatek,mt8188-i2c";
  1464. reg = <0 0x11e01000 0 0x1000>,
  1465. <0 0x10220380 0 0x80>;
  1466. interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH 0>;
  1467. clock-div = <1>;
  1468. clocks = <&imp_iic_wrap_w CLK_IMP_IIC_WRAP_W_AP_CLOCK_I2C4>,
  1469. <&infracfg_ao CLK_INFRA_AO_APDMA_BCLK>;
  1470. clock-names = "main", "dma";
  1471. #address-cells = <1>;
  1472. #size-cells = <0>;
  1473. status = "disabled";
  1474. };
  1475. imp_iic_wrap_w: clock-controller@11e02000 {
  1476. compatible = "mediatek,mt8188-imp-iic-wrap-w";
  1477. reg = <0 0x11e02000 0 0x1000>;
  1478. #clock-cells = <1>;
  1479. };
  1480. u3phy0: t-phy@11e30000 {
  1481. compatible = "mediatek,mt8188-tphy", "mediatek,generic-tphy-v3";
  1482. #address-cells = <1>;
  1483. #size-cells = <1>;
  1484. ranges = <0x0 0x0 0x11e30000 0x1000>;
  1485. status = "disabled";
  1486. u2port0: usb-phy@0 {
  1487. reg = <0x0 0x700>;
  1488. clocks = <&topckgen CLK_TOP_SSUSB_PHY_P2_REF>,
  1489. <&apmixedsys CLK_APMIXED_PLL_SSUSB26M_EN>;
  1490. clock-names = "ref", "da_ref";
  1491. #phy-cells = <1>;
  1492. };
  1493. };
  1494. u3phy1: t-phy@11e40000 {
  1495. compatible = "mediatek,mt8188-tphy", "mediatek,generic-tphy-v3";
  1496. #address-cells = <1>;
  1497. #size-cells = <1>;
  1498. ranges = <0x0 0x0 0x11e40000 0x1000>;
  1499. status = "disabled";
  1500. u2port1: usb-phy@0 {
  1501. reg = <0x0 0x700>;
  1502. clocks = <&topckgen CLK_TOP_SSUSB_PHY_REF>,
  1503. <&apmixedsys CLK_APMIXED_PLL_SSUSB26M_EN>;
  1504. clock-names = "ref", "da_ref";
  1505. #phy-cells = <1>;
  1506. };
  1507. u3port1: usb-phy@700 {
  1508. reg = <0x700 0x700>;
  1509. clocks = <&apmixedsys CLK_APMIXED_PLL_SSUSB26M_EN>,
  1510. <&clk26m>;
  1511. clock-names = "ref", "da_ref";
  1512. #phy-cells = <1>;
  1513. };
  1514. };
  1515. u3phy2: t-phy@11e80000 {
  1516. compatible = "mediatek,mt8188-tphy", "mediatek,generic-tphy-v3";
  1517. #address-cells = <1>;
  1518. #size-cells = <1>;
  1519. ranges = <0x0 0x0 0x11e80000 0x1000>;
  1520. status = "disabled";
  1521. u2port2: usb-phy@0 {
  1522. reg = <0x0 0x700>;
  1523. clocks = <&topckgen CLK_TOP_SSUSB_PHY_P3_REF>,
  1524. <&apmixedsys CLK_APMIXED_PLL_SSUSB26M_EN>;
  1525. clock-names = "ref", "da_ref";
  1526. #phy-cells = <1>;
  1527. };
  1528. };
  1529. i2c5: i2c@11ec0000 {
  1530. compatible = "mediatek,mt8188-i2c";
  1531. reg = <0 0x11ec0000 0 0x1000>,
  1532. <0 0x10220480 0 0x80>;
  1533. interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH 0>;
  1534. clock-div = <1>;
  1535. clocks = <&imp_iic_wrap_en CLK_IMP_IIC_WRAP_EN_AP_CLOCK_I2C5>,
  1536. <&infracfg_ao CLK_INFRA_AO_APDMA_BCLK>;
  1537. clock-names = "main", "dma";
  1538. #address-cells = <1>;
  1539. #size-cells = <0>;
  1540. status = "disabled";
  1541. };
  1542. i2c6: i2c@11ec1000 {
  1543. compatible = "mediatek,mt8188-i2c";
  1544. reg = <0 0x11ec1000 0 0x1000>,
  1545. <0 0x10220600 0 0x80>;
  1546. interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH 0>;
  1547. clock-div = <1>;
  1548. clocks = <&imp_iic_wrap_en CLK_IMP_IIC_WRAP_EN_AP_CLOCK_I2C6>,
  1549. <&infracfg_ao CLK_INFRA_AO_APDMA_BCLK>;
  1550. clock-names = "main", "dma";
  1551. #address-cells = <1>;
  1552. #size-cells = <0>;
  1553. status = "disabled";
  1554. };
  1555. imp_iic_wrap_en: clock-controller@11ec2000 {
  1556. compatible = "mediatek,mt8188-imp-iic-wrap-en";
  1557. reg = <0 0x11ec2000 0 0x1000>;
  1558. #clock-cells = <1>;
  1559. };
  1560. efuse: efuse@11f20000 {
  1561. compatible = "mediatek,mt8188-efuse", "mediatek,efuse";
  1562. reg = <0 0x11f20000 0 0x1000>;
  1563. #address-cells = <1>;
  1564. #size-cells = <1>;
  1565. lvts_efuse_data1: lvts1-calib@1ac {
  1566. reg = <0x1ac 0x40>;
  1567. };
  1568. };
  1569. gpu: gpu@13000000 {
  1570. compatible = "mediatek,mt8188-mali", "arm,mali-valhall-jm";
  1571. reg = <0 0x13000000 0 0x4000>;
  1572. clocks = <&mfgcfg CLK_MFGCFG_BG3D>;
  1573. interrupts = <GIC_SPI 383 IRQ_TYPE_LEVEL_HIGH 0>,
  1574. <GIC_SPI 382 IRQ_TYPE_LEVEL_HIGH 0>,
  1575. <GIC_SPI 381 IRQ_TYPE_LEVEL_HIGH 0>;
  1576. interrupt-names = "job", "mmu", "gpu";
  1577. operating-points-v2 = <&gpu_opp_table>;
  1578. power-domains = <&spm MT8188_POWER_DOMAIN_MFG2>,
  1579. <&spm MT8188_POWER_DOMAIN_MFG3>,
  1580. <&spm MT8188_POWER_DOMAIN_MFG4>;
  1581. power-domain-names = "core0", "core1", "core2";
  1582. #cooling-cells = <2>;
  1583. status = "disabled";
  1584. };
  1585. mfgcfg: clock-controller@13fbf000 {
  1586. compatible = "mediatek,mt8188-mfgcfg";
  1587. reg = <0 0x13fbf000 0 0x1000>;
  1588. #clock-cells = <1>;
  1589. };
  1590. vppsys0: clock-controller@14000000 {
  1591. compatible = "mediatek,mt8188-vppsys0";
  1592. reg = <0 0x14000000 0 0x1000>;
  1593. #clock-cells = <1>;
  1594. };
  1595. wpesys: clock-controller@14e00000 {
  1596. compatible = "mediatek,mt8188-wpesys";
  1597. reg = <0 0x14e00000 0 0x1000>;
  1598. #clock-cells = <1>;
  1599. };
  1600. wpesys_vpp0: clock-controller@14e02000 {
  1601. compatible = "mediatek,mt8188-wpesys-vpp0";
  1602. reg = <0 0x14e02000 0 0x1000>;
  1603. #clock-cells = <1>;
  1604. };
  1605. vppsys1: clock-controller@14f00000 {
  1606. compatible = "mediatek,mt8188-vppsys1";
  1607. reg = <0 0x14f00000 0 0x1000>;
  1608. #clock-cells = <1>;
  1609. };
  1610. imgsys: clock-controller@15000000 {
  1611. compatible = "mediatek,mt8188-imgsys";
  1612. reg = <0 0x15000000 0 0x1000>;
  1613. #clock-cells = <1>;
  1614. };
  1615. imgsys1_dip_top: clock-controller@15110000 {
  1616. compatible = "mediatek,mt8188-imgsys1-dip-top";
  1617. reg = <0 0x15110000 0 0x1000>;
  1618. #clock-cells = <1>;
  1619. };
  1620. imgsys1_dip_nr: clock-controller@15130000 {
  1621. compatible = "mediatek,mt8188-imgsys1-dip-nr";
  1622. reg = <0 0x15130000 0 0x1000>;
  1623. #clock-cells = <1>;
  1624. };
  1625. imgsys_wpe1: clock-controller@15220000 {
  1626. compatible = "mediatek,mt8188-imgsys-wpe1";
  1627. reg = <0 0x15220000 0 0x1000>;
  1628. #clock-cells = <1>;
  1629. };
  1630. ipesys: clock-controller@15330000 {
  1631. compatible = "mediatek,mt8188-ipesys";
  1632. reg = <0 0x15330000 0 0x1000>;
  1633. #clock-cells = <1>;
  1634. };
  1635. imgsys_wpe2: clock-controller@15520000 {
  1636. compatible = "mediatek,mt8188-imgsys-wpe2";
  1637. reg = <0 0x15520000 0 0x1000>;
  1638. #clock-cells = <1>;
  1639. };
  1640. imgsys_wpe3: clock-controller@15620000 {
  1641. compatible = "mediatek,mt8188-imgsys-wpe3";
  1642. reg = <0 0x15620000 0 0x1000>;
  1643. #clock-cells = <1>;
  1644. };
  1645. camsys: clock-controller@16000000 {
  1646. compatible = "mediatek,mt8188-camsys";
  1647. reg = <0 0x16000000 0 0x1000>;
  1648. #clock-cells = <1>;
  1649. };
  1650. camsys_rawa: clock-controller@1604f000 {
  1651. compatible = "mediatek,mt8188-camsys-rawa";
  1652. reg = <0 0x1604f000 0 0x1000>;
  1653. #clock-cells = <1>;
  1654. };
  1655. camsys_yuva: clock-controller@1606f000 {
  1656. compatible = "mediatek,mt8188-camsys-yuva";
  1657. reg = <0 0x1606f000 0 0x1000>;
  1658. #clock-cells = <1>;
  1659. };
  1660. camsys_rawb: clock-controller@1608f000 {
  1661. compatible = "mediatek,mt8188-camsys-rawb";
  1662. reg = <0 0x1608f000 0 0x1000>;
  1663. #clock-cells = <1>;
  1664. };
  1665. camsys_yuvb: clock-controller@160af000 {
  1666. compatible = "mediatek,mt8188-camsys-yuvb";
  1667. reg = <0 0x160af000 0 0x1000>;
  1668. #clock-cells = <1>;
  1669. };
  1670. ccusys: clock-controller@17200000 {
  1671. compatible = "mediatek,mt8188-ccusys";
  1672. reg = <0 0x17200000 0 0x1000>;
  1673. #clock-cells = <1>;
  1674. };
  1675. vdecsys_soc: clock-controller@1800f000 {
  1676. compatible = "mediatek,mt8188-vdecsys-soc";
  1677. reg = <0 0x1800f000 0 0x1000>;
  1678. #clock-cells = <1>;
  1679. };
  1680. vdecsys: clock-controller@1802f000 {
  1681. compatible = "mediatek,mt8188-vdecsys";
  1682. reg = <0 0x1802f000 0 0x1000>;
  1683. #clock-cells = <1>;
  1684. };
  1685. vencsys: clock-controller@1a000000 {
  1686. compatible = "mediatek,mt8188-vencsys";
  1687. reg = <0 0x1a000000 0 0x1000>;
  1688. #clock-cells = <1>;
  1689. };
  1690. vdosys0: syscon@1c01d000 {
  1691. compatible = "mediatek,mt8188-vdosys0", "syscon";
  1692. reg = <0 0x1c01d000 0 0x1000>;
  1693. #clock-cells = <1>;
  1694. mboxes = <&gce0 0 CMDQ_THR_PRIO_4>;
  1695. mediatek,gce-client-reg = <&gce0 SUBSYS_1c01XXXX 0xd000 0x1000>;
  1696. };
  1697. vdosys1: syscon@1c100000 {
  1698. compatible = "mediatek,mt8188-vdosys1", "syscon";
  1699. reg = <0 0x1c100000 0 0x1000>;
  1700. #clock-cells = <1>;
  1701. #reset-cells = <1>;
  1702. mboxes = <&gce0 1 CMDQ_THR_PRIO_4>;
  1703. mediatek,gce-client-reg = <&gce0 SUBSYS_1c10XXXX 0 0x1000>;
  1704. };
  1705. };
  1706. };