iwg20d-q7-common.dtsi 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375
  1. // SPDX-License-Identifier: GPL-2.0
  2. /*
  3. * Device Tree Source for the iWave-RZ/G1M/G1N Qseven carrier board
  4. *
  5. * Copyright (C) 2017 Renesas Electronics Corp.
  6. */
  7. /*
  8. * SSI-SGTL5000
  9. *
  10. * This command is required when Playback/Capture
  11. *
  12. * amixer set "DVC Out" 100%
  13. * amixer set "DVC In" 100%
  14. *
  15. * You can use Mute
  16. *
  17. * amixer set "DVC Out Mute" on
  18. * amixer set "DVC In Mute" on
  19. *
  20. * You can use Volume Ramp
  21. *
  22. * amixer set "DVC Out Ramp Up Rate" "0.125 dB/64 steps"
  23. * amixer set "DVC Out Ramp Down Rate" "0.125 dB/512 steps"
  24. * amixer set "DVC Out Ramp" on
  25. * aplay xxx.wav &
  26. * amixer set "DVC Out" 80% // Volume Down
  27. * amixer set "DVC Out" 100% // Volume Up
  28. */
  29. / {
  30. aliases {
  31. serial0 = &scif0;
  32. serial3 = &scifb1;
  33. ethernet0 = &avb;
  34. };
  35. chosen {
  36. bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp";
  37. stdout-path = "serial0:115200n8";
  38. };
  39. audio_clock: audio_clock {
  40. compatible = "fixed-clock";
  41. #clock-cells = <0>;
  42. clock-frequency = <26000000>;
  43. };
  44. lcd_backlight: backlight {
  45. compatible = "pwm-backlight";
  46. pwms = <&pwm3 0 5000000>;
  47. brightness-levels = <0 4 8 16 32 64 128 255>;
  48. default-brightness-level = <7>;
  49. enable-gpios = <&gpio5 14 GPIO_ACTIVE_HIGH>;
  50. };
  51. lvds-receiver {
  52. compatible = "ti,ds90cf384a", "lvds-decoder";
  53. power-supply = <&vcc_3v3_tft1>;
  54. ports {
  55. #address-cells = <1>;
  56. #size-cells = <0>;
  57. port@0 {
  58. reg = <0>;
  59. lvds_receiver_in: endpoint {
  60. remote-endpoint = <&lvds0_out>;
  61. };
  62. };
  63. port@1 {
  64. reg = <1>;
  65. lvds_receiver_out: endpoint {
  66. remote-endpoint = <&panel_in>;
  67. };
  68. };
  69. };
  70. };
  71. panel {
  72. compatible = "edt,etm0700g0dh6";
  73. backlight = <&lcd_backlight>;
  74. power-supply = <&vcc_3v3_tft1>;
  75. port {
  76. panel_in: endpoint {
  77. remote-endpoint = <&lvds_receiver_out>;
  78. };
  79. };
  80. };
  81. reg_1p5v: 1p5v {
  82. compatible = "regulator-fixed";
  83. regulator-name = "1P5V";
  84. regulator-min-microvolt = <1500000>;
  85. regulator-max-microvolt = <1500000>;
  86. regulator-always-on;
  87. };
  88. rsnd_sgtl5000: sound {
  89. compatible = "simple-audio-card";
  90. simple-audio-card,format = "i2s";
  91. simple-audio-card,bitclock-master = <&sndcodec>;
  92. simple-audio-card,frame-master = <&sndcodec>;
  93. sndcpu: simple-audio-card,cpu {
  94. sound-dai = <&rcar_sound>;
  95. };
  96. sndcodec: simple-audio-card,codec {
  97. sound-dai = <&sgtl5000>;
  98. };
  99. };
  100. vcc_3v3_tft1: regulator-panel {
  101. compatible = "regulator-fixed";
  102. regulator-name = "vcc-3v3-tft1";
  103. regulator-min-microvolt = <3300000>;
  104. regulator-max-microvolt = <3300000>;
  105. enable-active-high;
  106. startup-delay-us = <500>;
  107. gpio = <&gpio7 25 GPIO_ACTIVE_HIGH>;
  108. };
  109. vcc_sdhi1: regulator-vcc-sdhi1 {
  110. compatible = "regulator-fixed";
  111. regulator-name = "SDHI1 Vcc";
  112. regulator-min-microvolt = <3300000>;
  113. regulator-max-microvolt = <3300000>;
  114. gpio = <&gpio1 16 GPIO_ACTIVE_LOW>;
  115. };
  116. vccq_sdhi1: regulator-vccq-sdhi1 {
  117. compatible = "regulator-gpio";
  118. regulator-name = "SDHI1 VccQ";
  119. regulator-min-microvolt = <1800000>;
  120. regulator-max-microvolt = <3300000>;
  121. gpios = <&gpio2 30 GPIO_ACTIVE_HIGH>;
  122. gpios-states = <1>;
  123. states = <3300000 1>, <1800000 0>;
  124. };
  125. };
  126. &avb {
  127. pinctrl-0 = <&avb_pins>;
  128. pinctrl-names = "default";
  129. phy-handle = <&phy3>;
  130. phy-mode = "gmii";
  131. renesas,no-ether-link;
  132. status = "okay";
  133. phy3: ethernet-phy@3 {
  134. compatible = "ethernet-phy-id0022.1622",
  135. "ethernet-phy-ieee802.3-c22";
  136. reg = <3>;
  137. micrel,led-mode = <1>;
  138. };
  139. };
  140. &can0 {
  141. pinctrl-0 = <&can0_pins>;
  142. pinctrl-names = "default";
  143. status = "okay";
  144. };
  145. &cmt0 {
  146. status = "okay";
  147. };
  148. &du {
  149. status = "okay";
  150. };
  151. &gpio2 {
  152. touch-interrupt-hog {
  153. gpio-hog;
  154. gpios = <12 GPIO_ACTIVE_LOW>;
  155. input;
  156. };
  157. };
  158. &hsusb {
  159. status = "okay";
  160. pinctrl-0 = <&usb0_pins>;
  161. pinctrl-names = "default";
  162. };
  163. &i2c2 {
  164. pinctrl-0 = <&i2c2_pins>;
  165. pinctrl-names = "default";
  166. status = "okay";
  167. clock-frequency = <400000>;
  168. rtc@68 {
  169. compatible = "ti,bq32000";
  170. reg = <0x68>;
  171. };
  172. sgtl5000: codec@a {
  173. compatible = "fsl,sgtl5000";
  174. #sound-dai-cells = <0>;
  175. reg = <0x0a>;
  176. clocks = <&audio_clock>;
  177. VDDA-supply = <&reg_3p3v>;
  178. VDDIO-supply = <&reg_3p3v>;
  179. VDDD-supply = <&reg_1p5v>;
  180. };
  181. touch: touchpanel@38 {
  182. compatible = "edt,edt-ft5406";
  183. reg = <0x38>;
  184. interrupt-parent = <&gpio2>;
  185. interrupts = <12 IRQ_TYPE_EDGE_FALLING>;
  186. vcc-supply = <&vcc_3v3_tft1>;
  187. };
  188. };
  189. &lvds0 {
  190. status = "okay";
  191. ports {
  192. port@1 {
  193. lvds0_out: endpoint {
  194. remote-endpoint = <&lvds_receiver_in>;
  195. };
  196. };
  197. };
  198. };
  199. &pci0 {
  200. pinctrl-0 = <&usb0_pins>;
  201. pinctrl-names = "default";
  202. };
  203. &pci1 {
  204. status = "okay";
  205. pinctrl-0 = <&usb1_pins>;
  206. pinctrl-names = "default";
  207. };
  208. &pcie_bus_clk {
  209. clock-frequency = <100000000>;
  210. };
  211. &pfc {
  212. can0_pins: can0 {
  213. groups = "can0_data_d";
  214. function = "can0";
  215. };
  216. avb_pins: avb {
  217. groups = "avb_mdio", "avb_gmii";
  218. function = "avb";
  219. };
  220. i2c2_pins: i2c2 {
  221. groups = "i2c2";
  222. function = "i2c2";
  223. };
  224. pwm3_pins: pwm3 {
  225. groups = "pwm3";
  226. function = "pwm3";
  227. };
  228. scif0_pins: scif0 {
  229. groups = "scif0_data_d";
  230. function = "scif0";
  231. };
  232. scifb1_pins: scifb1 {
  233. groups = "scifb1_data_d", "scifb1_ctrl";
  234. function = "scifb1";
  235. };
  236. sdhi1_pins: sd1 {
  237. groups = "sdhi1_data4", "sdhi1_ctrl";
  238. function = "sdhi1";
  239. power-source = <3300>;
  240. };
  241. sdhi1_pins_uhs: sd1_uhs {
  242. groups = "sdhi1_data4", "sdhi1_ctrl";
  243. function = "sdhi1";
  244. power-source = <1800>;
  245. };
  246. sound_pins: sound {
  247. groups = "ssi0129_ctrl", "ssi0_data", "ssi1_data";
  248. function = "ssi";
  249. };
  250. usb0_pins: usb0 {
  251. groups = "usb0";
  252. function = "usb0";
  253. };
  254. usb1_pins: usb1 {
  255. groups = "usb1";
  256. function = "usb1";
  257. };
  258. };
  259. &pwm3 {
  260. pinctrl-0 = <&pwm3_pins>;
  261. pinctrl-names = "default";
  262. status = "okay";
  263. };
  264. &rcar_sound {
  265. pinctrl-0 = <&sound_pins>;
  266. pinctrl-names = "default";
  267. status = "okay";
  268. /* Single DAI */
  269. #sound-dai-cells = <0>;
  270. rcar_sound,dai {
  271. dai0 {
  272. playback = <&ssi1>, <&src3>, <&dvc1>;
  273. capture = <&ssi0>, <&src2>, <&dvc0>;
  274. };
  275. };
  276. };
  277. &rwdt {
  278. timeout-sec = <60>;
  279. status = "okay";
  280. };
  281. &scif0 {
  282. pinctrl-0 = <&scif0_pins>;
  283. pinctrl-names = "default";
  284. status = "okay";
  285. };
  286. &scifb1 {
  287. pinctrl-0 = <&scifb1_pins>;
  288. pinctrl-names = "default";
  289. uart-has-rtscts;
  290. status = "okay";
  291. };
  292. &sdhi1 {
  293. pinctrl-0 = <&sdhi1_pins>;
  294. pinctrl-1 = <&sdhi1_pins_uhs>;
  295. pinctrl-names = "default", "state_uhs";
  296. vmmc-supply = <&vcc_sdhi1>;
  297. vqmmc-supply = <&vccq_sdhi1>;
  298. cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
  299. wp-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>;
  300. sd-uhs-sdr50;
  301. status = "okay";
  302. };
  303. &ssi1 {
  304. shared-pin;
  305. };
  306. &usbphy {
  307. status = "okay";
  308. };