am335x-brsmarc1.dts 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427
  1. // SPDX-License-Identifier: GPL-2.0+
  2. /*
  3. * Copyright (C) 2017 B&R Industrial Automation GmbH
  4. * http://www.br-automation.com
  5. *
  6. */
  7. /dts-v1/;
  8. #include "am33xx.dtsi"
  9. #include "dt-bindings/thermal/thermal.h"
  10. / {
  11. model = "BRSMARC1 SoM";
  12. compatible = "ti,am33xx";
  13. fset: factory-settings {
  14. bl-version = " ";
  15. order-no = " ";
  16. cpu-order-no = " ";
  17. hw-revision = " ";
  18. serial-no = <0>;
  19. device-id = <0x0>;
  20. parent-id = <0x0>;
  21. hw-variant = <0x0>;
  22. hw-platform = <0x7>;
  23. fram-offset = <0x100>;
  24. fram-size = <0x1F00>;
  25. cache-disable = <0x0>;
  26. cpu-clock = <0x0>;
  27. };
  28. chosen {
  29. bootargs = "console=ttyO0,115200 earlyprintk";
  30. stdout-path = &uart0;
  31. };
  32. aliases {
  33. fset = &fset;
  34. mmc = &mmc2;
  35. spi0 = &spi0;
  36. spi1 = &spi1;
  37. touch0 = &burtouch0;
  38. screen0 = &lcdscreen0;
  39. };
  40. memory {
  41. device_type = "memory";
  42. reg = <0x80000000 0x10000000>; /* 256 MB */
  43. };
  44. vmmcsd_fixed: fixedregulator@0 {
  45. compatible = "regulator-fixed";
  46. regulator-name = "vmmcsd_fixed";
  47. regulator-min-microvolt = <3300000>;
  48. regulator-max-microvolt = <3300000>;
  49. };
  50. lcdscreen0: lcdscreen@0 {
  51. /*backlight = <&tps_bl>; */
  52. compatible = "ti,tilcdc,panel";
  53. status = "okay";
  54. u-boot,dm-pre-reloc;
  55. panel-info {
  56. ac-bias = <255>;
  57. ac-bias-intrpt = <0>;
  58. dma-burst-sz = <16>;
  59. bpp = <32>;
  60. fdd = <0x80>;
  61. sync-edge = <0>;
  62. sync-ctrl = <1>;
  63. raster-order = <0>;
  64. fifo-th = <0>;
  65. rotation = <0>;
  66. pupdelay = <0>;
  67. pondelay = <0>;
  68. pwrpin = <0x000000B1>;
  69. brightdrv = <0>;
  70. brightfdim = <100>;
  71. brightdef = <50>;
  72. };
  73. display-timings {
  74. default {
  75. clock-frequency = <0>;
  76. hactive = <0>;
  77. vactive = <0>;
  78. hfront-porch = <0>;
  79. hback-porch = <0>;
  80. hsync-len = <0>;
  81. vfront-porch = <0>;
  82. vback-porch = <0>;
  83. vsync-len = <0>;
  84. hsync-active = <0>;
  85. vsync-active = <0>;
  86. pupdelay = <10>;
  87. pondelay = <10>;
  88. };
  89. };
  90. };
  91. board_thermal: board-thermal {
  92. polling-delay-passive = <1000>; /* milliseconds */
  93. polling-delay = <2500>; /* milliseconds */
  94. thermal-sensors = <&cputemp>;
  95. trips {
  96. crit_trip: crit-trip {
  97. temperature = <95000>; /* millicelsius */
  98. hysteresis = <5000>; /* millicelsius */
  99. type = "critical";
  100. };
  101. };
  102. cooling-maps {
  103. map0 {
  104. trip = <&crit_trip>;
  105. cooling-device =
  106. <&resetc THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
  107. };
  108. };
  109. };
  110. };
  111. &uart0 { /* console uart */
  112. u-boot,dm-spl;
  113. status = "okay";
  114. };
  115. &uart2 { /* X2X - P2P */
  116. status = "okay";
  117. };
  118. &uart3 { /* RS485 */
  119. status = "okay";
  120. };
  121. &uart4 { /* RS232 */
  122. status = "okay";
  123. };
  124. &i2c0 {
  125. u-boot,dm-spl;
  126. status = "okay";
  127. clock-frequency = <100000>;
  128. tps: tps@24 { /* PMIC controller */
  129. u-boot,dm-spl;
  130. reg = <0x24>;
  131. compatible = "ti,tps65217";
  132. };
  133. cputemp: temperature-sensor@48 { /* cpu temperature */
  134. #thermal-sensor-cells = <0>;
  135. compatible = "nxp,pct2075";
  136. reg = <0x48>;
  137. };
  138. basetemp: temperature-sensor@49 { /* baseboard temperature */
  139. #thermal-sensor-cells = <0>;
  140. compatible = "nxp,pct2075";
  141. reg = <0x49>;
  142. };
  143. extrtc: rtc@51 { /* realtime clock */
  144. compatible = "epson,rx8571";
  145. reg = <0x51>;
  146. };
  147. resetc: reset-controller@60 {
  148. compatible = "bur,rststm";
  149. reg = <0x60>;
  150. cooling-min-state = <0>;
  151. cooling-max-state = <1>; /* reset gets fired */
  152. #cooling-cells = <2>; /* min followed by max */
  153. };
  154. };
  155. &i2c1 {
  156. u-boot,dm-spl;
  157. status = "okay";
  158. };
  159. &spi0 {
  160. u-boot,dm-spl;
  161. status = "okay";
  162. cs-gpios = <&gpio0 5 GPIO_ACTIVE_HIGH>,
  163. <&gpio0 6 GPIO_ACTIVE_HIGH>,
  164. <0>,
  165. <0>;
  166. spi-max-frequency = <24000000>;
  167. spi_flash: spiflash@0 {
  168. u-boot,dm-spl;
  169. u-boot,dm-pre-reloc;
  170. compatible = "spidev", "spi-flash";
  171. spi-max-frequency = <24000000>;
  172. reg = <0>;
  173. };
  174. };
  175. &spi1 {
  176. u-boot,dm-spl;
  177. status = "okay";
  178. cs-gpios = <&gpio3 17 GPIO_ACTIVE_HIGH>,
  179. <&gpio0 19 GPIO_ACTIVE_HIGH>,
  180. <0>,
  181. <0>;
  182. spi-max-frequency = <24000000>;
  183. };
  184. &edma {
  185. status = "okay";
  186. };
  187. &cppi41dma {
  188. status = "okay";
  189. };
  190. &usb {
  191. status = "okay";
  192. };
  193. &usb_ctrl_mod {
  194. status = "okay";
  195. };
  196. &usb0_phy {
  197. status = "okay";
  198. };
  199. &usb1_phy {
  200. status = "okay";
  201. };
  202. &usb0 {
  203. status = "okay";
  204. dr_mode = "host";
  205. };
  206. &usb1 {
  207. status = "okay";
  208. dr_mode = "host";
  209. };
  210. &davinci_mdio {
  211. status = "okay";
  212. ethphy0: ethernet-phy@1 {
  213. reg = <1>;
  214. };
  215. ethphy1: ethernet-phy@3 {
  216. reg = <3>;
  217. };
  218. };
  219. &mac {
  220. status = "okay";
  221. };
  222. &phy_sel {
  223. rmii-clock-ext;
  224. };
  225. &cpsw_emac0 {
  226. phy_id = <&davinci_mdio>, <1>;
  227. phy-handle = <&ethphy0>;
  228. phy-mode = "rmii";
  229. ti,ledcr = <0x0480>;
  230. };
  231. &cpsw_emac1 {
  232. phy_id = <&davinci_mdio>, <3>;
  233. phy-handle = <&ethphy1>;
  234. phy-mode = "rmii";
  235. ti,ledcr = <0x0480>;
  236. };
  237. &mmc1 {
  238. vmmc-supply = <&vmmcsd_fixed>;
  239. bus-width = <0x4>;
  240. ti,non-removable;
  241. ti,needs-special-hs-handling;
  242. ti,vcc-aux-disable-is-sleep;
  243. status = "okay";
  244. };
  245. &mmc2 {
  246. vmmc-supply = <&vmmcsd_fixed>;
  247. bus-width = <0x8>;
  248. ti,non-removable;
  249. ti,needs-special-hs-handling;
  250. ti,vcc-aux-disable-is-sleep;
  251. status = "okay";
  252. };
  253. &lcdc {
  254. status = "okay";
  255. ti,no-reset-on-init;
  256. ti,no-idle-on-init;
  257. };
  258. &elm {
  259. status = "okay";
  260. };
  261. &sham {
  262. status = "okay";
  263. };
  264. &aes {
  265. status = "okay";
  266. };
  267. &gpio0 {
  268. u-boot,dm-spl;
  269. ti,no-reset-on-init;
  270. };
  271. &gpio1 {
  272. u-boot,dm-spl;
  273. ti,no-reset-on-init;
  274. };
  275. &gpio2 {
  276. u-boot,dm-spl;
  277. ti,no-reset-on-init;
  278. };
  279. &gpio3 {
  280. u-boot,dm-spl;
  281. ti,no-reset-on-init;
  282. };
  283. &timer1 { /* today unused */
  284. status = "okay";
  285. ti,no-reset-on-init;
  286. ti,no-idle-on-init;
  287. };
  288. &timer2 { /* used for vxworks primary timer device */
  289. status = "okay";
  290. ti,no-reset-on-init;
  291. ti,no-idle-on-init;
  292. };
  293. &timer3 { /* used sysdelay and hal tsc counter*/
  294. status = "okay";
  295. ti,no-reset-on-init;
  296. ti,no-idle-on-init;
  297. };
  298. &timer4 { /* used for PWM beeper */
  299. status = "okay";
  300. ti,no-reset-on-init;
  301. ti,no-idle-on-init;
  302. };
  303. &timer5 { /* used for PWM backlight */
  304. status = "okay";
  305. ti,no-reset-on-init;
  306. ti,no-idle-on-init;
  307. };
  308. &timer6 { /* used for cpsw end device */
  309. status = "okay";
  310. ti,no-reset-on-init;
  311. ti,no-idle-on-init;
  312. };
  313. &timer7 { /* used for cpsw end device */
  314. status = "okay";
  315. ti,no-reset-on-init;
  316. ti,no-idle-on-init;
  317. };
  318. &wdt2 {
  319. status = "okay";
  320. ti,no-reset-on-init;
  321. ti,no-idle-on-init;
  322. };
  323. &epwmss0 {
  324. status = "okay";
  325. };
  326. &tscadc {
  327. status = "okay";
  328. tsc {
  329. burtouch0: burtouch@0 {
  330. status = "okay";
  331. compatible = "bur,DdVxSfTouchXXX";
  332. bur,hwtree = "IF7";
  333. bur,KX0 = <0x0>;
  334. bur,KX1 = <0x0>;
  335. bur,KX2 = <0x0>;
  336. bur,KY0 = <0x0>;
  337. bur,KY1 = <0x0>;
  338. bur,KY2 = <0x0>;
  339. };
  340. };
  341. };
  342. &dcan0 {
  343. status = "okay";
  344. };
  345. &dcan1 {
  346. status = "okay";
  347. };
  348. &sham {
  349. status = "disabled";
  350. };
  351. &aes {
  352. status = "disabled";
  353. };
  354. &rng {
  355. status = "disabled";
  356. };