mt7623-NAND.dts 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449
  1. /*
  2. * Copyright (c) 2016 MediaTek Inc.
  3. * Author: John Crispin <blogic@openwrt.org>
  4. *
  5. * This program is free software; you can redistribute it and/or modify
  6. * it under the terms of the GNU General Public License version 2 as
  7. * published by the Free Software Foundation.
  8. *
  9. * This program is distributed in the hope that it will be useful,
  10. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  12. * GNU General Public License for more details.
  13. */
  14. /dts-v1/;
  15. #include "_mt7623.dtsi"
  16. #include <dt-bindings/gpio/gpio.h>
  17. / {
  18. model = "MediaTek MT7623 NAND evaluation board";
  19. compatible = "mediatek,mt7623-evb", "mediatek,mt7623";
  20. chosen {
  21. stdout-path = &uart2;
  22. };
  23. memory {
  24. reg = <0 0x80000000 0 0x20000000>;
  25. };
  26. usb_p1_vbus: regulator@0 {
  27. compatible = "regulator-fixed";
  28. regulator-name = "usb_vbus";
  29. regulator-min-microvolt = <5000000>;
  30. regulator-max-microvolt = <5000000>;
  31. gpio = <&pio 135 GPIO_ACTIVE_HIGH>;
  32. enable-active-high;
  33. };
  34. };
  35. &cpu0 {
  36. proc-supply = <&mt6323_vproc_reg>;
  37. };
  38. &cpu1 {
  39. proc-supply = <&mt6323_vproc_reg>;
  40. };
  41. &cpu2 {
  42. proc-supply = <&mt6323_vproc_reg>;
  43. };
  44. &cpu3 {
  45. proc-supply = <&mt6323_vproc_reg>;
  46. };
  47. &pwrap {
  48. pmic: mt6323 {
  49. compatible = "mediatek,mt6323";
  50. interrupt-parent = <&pio>;
  51. interrupts = <150 IRQ_TYPE_LEVEL_HIGH>;
  52. interrupt-controller;
  53. #interrupt-cells = <2>;
  54. mt6323regulator: mt6323regulator{
  55. compatible = "mediatek,mt6323-regulator";
  56. mt6323_vproc_reg: buck_vproc{
  57. regulator-name = "vproc";
  58. regulator-min-microvolt = < 700000>;
  59. regulator-max-microvolt = <1350000>;
  60. regulator-ramp-delay = <12500>;
  61. regulator-always-on;
  62. regulator-boot-on;
  63. };
  64. mt6323_vsys_reg: buck_vsys{
  65. regulator-name = "vsys";
  66. regulator-min-microvolt = <1400000>;
  67. regulator-max-microvolt = <2987500>;
  68. regulator-ramp-delay = <25000>;
  69. regulator-always-on;
  70. regulator-boot-on;
  71. };
  72. mt6323_vpa_reg: buck_vpa{
  73. regulator-name = "vpa";
  74. regulator-min-microvolt = < 500000>;
  75. regulator-max-microvolt = <3650000>;
  76. };
  77. mt6323_vtcxo_reg: ldo_vtcxo{
  78. regulator-name = "vtcxo";
  79. regulator-min-microvolt = <2800000>;
  80. regulator-max-microvolt = <2800000>;
  81. regulator-enable-ramp-delay = <90>;
  82. regulator-always-on;
  83. regulator-boot-on;
  84. };
  85. mt6323_vcn28_reg: ldo_vcn28{
  86. regulator-name = "vcn28";
  87. regulator-min-microvolt = <2800000>;
  88. regulator-max-microvolt = <2800000>;
  89. regulator-enable-ramp-delay = <185>;
  90. };
  91. mt6323_vcn33_bt_reg: ldo_vcn33_bt{
  92. regulator-name = "vcn33_bt";
  93. regulator-min-microvolt = <3300000>;
  94. regulator-max-microvolt = <3600000>;
  95. regulator-enable-ramp-delay = <185>;
  96. };
  97. mt6323_vcn33_wifi_reg: ldo_vcn33_wifi{
  98. regulator-name = "vcn33_wifi";
  99. regulator-min-microvolt = <3300000>;
  100. regulator-max-microvolt = <3600000>;
  101. regulator-enable-ramp-delay = <185>;
  102. };
  103. mt6323_va_reg: ldo_va{
  104. regulator-name = "va";
  105. regulator-min-microvolt = <2800000>;
  106. regulator-max-microvolt = <2800000>;
  107. regulator-enable-ramp-delay = <216>;
  108. regulator-always-on;
  109. regulator-boot-on;
  110. };
  111. mt6323_vcama_reg: ldo_vcama{
  112. regulator-name = "vcama";
  113. regulator-min-microvolt = <1500000>;
  114. regulator-max-microvolt = <2800000>;
  115. regulator-enable-ramp-delay = <216>;
  116. };
  117. mt6323_vio28_reg: ldo_vio28{
  118. regulator-name = "vio28";
  119. regulator-min-microvolt = <2800000>;
  120. regulator-max-microvolt = <2800000>;
  121. regulator-enable-ramp-delay = <216>;
  122. regulator-always-on;
  123. regulator-boot-on;
  124. };
  125. mt6323_vusb_reg: ldo_vusb{
  126. regulator-name = "vusb";
  127. regulator-min-microvolt = <3300000>;
  128. regulator-max-microvolt = <3300000>;
  129. regulator-enable-ramp-delay = <216>;
  130. regulator-boot-on;
  131. };
  132. mt6323_vmc_reg: ldo_vmc{
  133. regulator-name = "vmc";
  134. regulator-min-microvolt = <1800000>;
  135. regulator-max-microvolt = <3300000>;
  136. regulator-enable-ramp-delay = <36>;
  137. regulator-boot-on;
  138. };
  139. mt6323_vmch_reg: ldo_vmch{
  140. regulator-name = "vmch";
  141. regulator-min-microvolt = <3000000>;
  142. regulator-max-microvolt = <3300000>;
  143. regulator-enable-ramp-delay = <36>;
  144. regulator-boot-on;
  145. };
  146. mt6323_vemc3v3_reg: ldo_vemc3v3{
  147. regulator-name = "vemc3v3";
  148. regulator-min-microvolt = <3000000>;
  149. regulator-max-microvolt = <3300000>;
  150. regulator-enable-ramp-delay = <36>;
  151. regulator-boot-on;
  152. };
  153. mt6323_vgp1_reg: ldo_vgp1{
  154. regulator-name = "vgp1";
  155. regulator-min-microvolt = <1200000>;
  156. regulator-max-microvolt = <3300000>;
  157. regulator-enable-ramp-delay = <216>;
  158. };
  159. mt6323_vgp2_reg: ldo_vgp2{
  160. regulator-name = "vgp2";
  161. regulator-min-microvolt = <1200000>;
  162. regulator-max-microvolt = <3000000>;
  163. regulator-enable-ramp-delay = <216>;
  164. };
  165. mt6323_vgp3_reg: ldo_vgp3{
  166. regulator-name = "vgp3";
  167. regulator-min-microvolt = <1200000>;
  168. regulator-max-microvolt = <1800000>;
  169. regulator-enable-ramp-delay = <216>;
  170. };
  171. mt6323_vcn18_reg: ldo_vcn18{
  172. regulator-name = "vcn18";
  173. regulator-min-microvolt = <1800000>;
  174. regulator-max-microvolt = <1800000>;
  175. regulator-enable-ramp-delay = <216>;
  176. };
  177. mt6323_vsim1_reg: ldo_vsim1{
  178. regulator-name = "vsim1";
  179. regulator-min-microvolt = <1800000>;
  180. regulator-max-microvolt = <3000000>;
  181. regulator-enable-ramp-delay = <216>;
  182. };
  183. mt6323_vsim2_reg: ldo_vsim2{
  184. regulator-name = "vsim2";
  185. regulator-min-microvolt = <1800000>;
  186. regulator-max-microvolt = <3000000>;
  187. regulator-enable-ramp-delay = <216>;
  188. };
  189. mt6323_vrtc_reg: ldo_vrtc{
  190. regulator-name = "vrtc";
  191. regulator-min-microvolt = <2800000>;
  192. regulator-max-microvolt = <2800000>;
  193. regulator-always-on;
  194. regulator-boot-on;
  195. };
  196. mt6323_vcamaf_reg: ldo_vcamaf{
  197. regulator-name = "vcamaf";
  198. regulator-min-microvolt = <1200000>;
  199. regulator-max-microvolt = <3300000>;
  200. regulator-enable-ramp-delay = <216>;
  201. };
  202. mt6323_vibr_reg: ldo_vibr{
  203. regulator-name = "vibr";
  204. regulator-min-microvolt = <1200000>;
  205. regulator-max-microvolt = <3300000>;
  206. regulator-enable-ramp-delay = <36>;
  207. };
  208. mt6323_vrf18_reg: ldo_vrf18{
  209. regulator-name = "vrf18";
  210. regulator-min-microvolt = <1825000>;
  211. regulator-max-microvolt = <1825000>;
  212. regulator-enable-ramp-delay = <187>;
  213. };
  214. mt6323_vm_reg: ldo_vm{
  215. regulator-name = "vm";
  216. regulator-min-microvolt = <1200000>;
  217. regulator-max-microvolt = <1800000>;
  218. regulator-enable-ramp-delay = <216>;
  219. regulator-always-on;
  220. regulator-boot-on;
  221. };
  222. mt6323_vio18_reg: ldo_vio18{
  223. regulator-name = "vio18";
  224. regulator-min-microvolt = <1800000>;
  225. regulator-max-microvolt = <1800000>;
  226. regulator-enable-ramp-delay = <216>;
  227. regulator-always-on;
  228. regulator-boot-on;
  229. };
  230. mt6323_vcamd_reg: ldo_vcamd{
  231. regulator-name = "vcamd";
  232. regulator-min-microvolt = <1200000>;
  233. regulator-max-microvolt = <1800000>;
  234. regulator-enable-ramp-delay = <216>;
  235. };
  236. mt6323_vcamio_reg: ldo_vcamio{
  237. regulator-name = "vcamio";
  238. regulator-min-microvolt = <1800000>;
  239. regulator-max-microvolt = <1800000>;
  240. regulator-enable-ramp-delay = <216>;
  241. };
  242. };
  243. };
  244. };
  245. &uart2 {
  246. status = "okay";
  247. };
  248. &pio {
  249. nand_pins_default: nanddefault {
  250. pins_dat {
  251. pinmux = <MT7623_PIN_111_MSDC0_DAT7_FUNC_NLD7>,
  252. <MT7623_PIN_112_MSDC0_DAT6_FUNC_NLD6>,
  253. <MT7623_PIN_114_MSDC0_DAT4_FUNC_NLD4>,
  254. <MT7623_PIN_118_MSDC0_DAT3_FUNC_NLD3>,
  255. <MT7623_PIN_121_MSDC0_DAT0_FUNC_NLD0>,
  256. <MT7623_PIN_120_MSDC0_DAT1_FUNC_NLD1>,
  257. <MT7623_PIN_113_MSDC0_DAT5_FUNC_NLD5>,
  258. <MT7623_PIN_115_MSDC0_RSTB_FUNC_NLD8>,
  259. <MT7623_PIN_119_MSDC0_DAT2_FUNC_NLD2>;
  260. input-enable;
  261. drive-strength = <MTK_DRIVE_8mA>;
  262. bias-pull-up;
  263. };
  264. pins_we {
  265. pinmux = <MT7623_PIN_117_MSDC0_CLK_FUNC_NWEB>;
  266. drive-strength = <MTK_DRIVE_8mA>;
  267. bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
  268. };
  269. pins_ale {
  270. pinmux = <MT7623_PIN_116_MSDC0_CMD_FUNC_NALE>;
  271. drive-strength = <MTK_DRIVE_8mA>;
  272. bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
  273. };
  274. };
  275. eth_default: eth {
  276. pins_eth {
  277. pinmux = <MT7623_PIN_275_G2_MDC_FUNC_MDC>,
  278. <MT7623_PIN_276_G2_MDIO_FUNC_MDIO>,
  279. <MT7623_PIN_262_G2_TXEN_FUNC_G2_TXEN>,
  280. <MT7623_PIN_263_G2_TXD3_FUNC_G2_TXD3>,
  281. <MT7623_PIN_264_G2_TXD2_FUNC_G2_TXD2>,
  282. <MT7623_PIN_265_G2_TXD1_FUNC_G2_TXD1>,
  283. <MT7623_PIN_266_G2_TXD0_FUNC_G2_TXD0>,
  284. <MT7623_PIN_267_G2_TXCLK_FUNC_G2_TXC>,
  285. <MT7623_PIN_268_G2_RXCLK_FUNC_G2_RXC>,
  286. <MT7623_PIN_269_G2_RXD0_FUNC_G2_RXD0>,
  287. <MT7623_PIN_270_G2_RXD1_FUNC_G2_RXD1>,
  288. <MT7623_PIN_271_G2_RXD2_FUNC_G2_RXD2>,
  289. <MT7623_PIN_272_G2_RXD3_FUNC_G2_RXD3>,
  290. <MT7623_PIN_273_ESW_INT_FUNC_ESW_INT>,
  291. <MT7623_PIN_274_G2_RXDV_FUNC_G2_RXDV>;
  292. };
  293. pins_eth_rst {
  294. pinmux = <MT7623_PIN_15_GPIO15_FUNC_GPIO15>;
  295. output-low;
  296. };
  297. };
  298. pwm_pins: pwm {
  299. pins_pwm1 {
  300. pinmux = <MT7623_PIN_204_PWM1_FUNC_PWM1>;
  301. };
  302. pins_pwm2 {
  303. pinmux = <MT7623_PIN_205_PWM2_FUNC_PWM2>;
  304. };
  305. };
  306. };
  307. &nandc {
  308. status = "okay";
  309. pinctrl-names = "default";
  310. pinctrl-0 = <&nand_pins_default>;
  311. nand@0 {
  312. reg = <0>;
  313. spare_per_sector = <64>;
  314. nand-ecc-mode = "hw";
  315. nand-ecc-strength = <12>;
  316. nand-ecc-step-size = <1024>;
  317. partitions {
  318. compatible = "fixed-partitions";
  319. #address-cells = <1>;
  320. #size-cells = <1>;
  321. partition@C0000 {
  322. label = "uboot-env";
  323. reg = <0xC0000 0x40000>;
  324. };
  325. partition@100000 {
  326. label = "factory";
  327. reg = <0x100000 0x40000>;
  328. };
  329. partition@140000 {
  330. label = "kernel";
  331. reg = <0x140000 0x2000000>;
  332. };
  333. partition@2140000 {
  334. label = "recovery";
  335. reg = <0x2140000 0x2000000>;
  336. };
  337. partition@4140000 {
  338. label = "ubi";
  339. reg = <0x4140000 0x1000000>;
  340. };
  341. };
  342. };
  343. };
  344. &bch {
  345. status = "okay";
  346. };
  347. &usb1 {
  348. vusb33-supply = <&mt6323_vusb_reg>;
  349. vbus-supply = <&usb_p1_vbus>;
  350. status = "okay";
  351. };
  352. &u3phy1 {
  353. status = "okay";
  354. };
  355. &pcie {
  356. status = "okay";
  357. };
  358. &eth {
  359. status = "okay";
  360. };
  361. &gmac1 {
  362. mac-address = [00 11 22 33 44 56];
  363. status = "okay";
  364. };
  365. &gmac2 {
  366. mac-address = [00 11 22 33 44 55];
  367. status = "okay";
  368. phy-mode = "rgmii";
  369. fixed-link {
  370. speed = <1000>;
  371. full-duplex;
  372. pause;
  373. };
  374. };
  375. &gsw {
  376. pinctrl-names = "default";
  377. pinctrl-0 = <&eth_default>;
  378. mediatek,reset-pin = <&pio 15 0>;
  379. status = "okay";
  380. };
  381. &pwm {
  382. pinctrl-names = "default";
  383. pinctrl-0 = <&pwm_pins>;
  384. status = "okay";
  385. };