am335x-chiliboard.dts 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. // SPDX-License-Identifier: GPL-2.0-only
  2. /*
  3. * Copyright (C) 2015 Jablotron s.r.o. -- https://www.jablotron.com/
  4. * Author: Rostislav Lisovy <[email protected]>
  5. */
  6. /dts-v1/;
  7. #include "am335x-chilisom.dtsi"
  8. / {
  9. model = "AM335x Chiliboard";
  10. compatible = "grinn,am335x-chiliboard", "grinn,am335x-chilisom",
  11. "ti,am33xx";
  12. chosen {
  13. stdout-path = &uart0;
  14. };
  15. leds {
  16. compatible = "gpio-leds";
  17. pinctrl-names = "default";
  18. pinctrl-0 = <&led_gpio_pins>;
  19. led0 {
  20. label = "led0";
  21. gpios = <&gpio3 7 GPIO_ACTIVE_LOW>;
  22. default-state = "keep";
  23. linux,default-trigger = "heartbeat";
  24. };
  25. led1 {
  26. label = "led1";
  27. gpios = <&gpio3 8 GPIO_ACTIVE_LOW>;
  28. default-state = "keep";
  29. };
  30. };
  31. };
  32. &am33xx_pinmux {
  33. uart0_pins: pinmux_uart0_pins {
  34. pinctrl-single,pins = <
  35. AM33XX_PADCONF(AM335X_PIN_UART0_RXD, PIN_INPUT_PULLUP, MUX_MODE0)
  36. AM33XX_PADCONF(AM335X_PIN_UART0_TXD, PIN_OUTPUT_PULLDOWN, MUX_MODE0)
  37. >;
  38. };
  39. cpsw_default: cpsw_default {
  40. pinctrl-single,pins = <
  41. /* Slave 1 */
  42. AM33XX_PADCONF(AM335X_PIN_MII1_CRS, PIN_INPUT_PULLDOWN, MUX_MODE1)
  43. AM33XX_PADCONF(AM335X_PIN_MII1_RX_ER, PIN_INPUT_PULLUP, MUX_MODE1)
  44. AM33XX_PADCONF(AM335X_PIN_MII1_TX_EN, PIN_OUTPUT_PULLDOWN, MUX_MODE1)
  45. AM33XX_PADCONF(AM335X_PIN_MII1_TXD1, PIN_OUTPUT_PULLDOWN, MUX_MODE1)
  46. AM33XX_PADCONF(AM335X_PIN_MII1_TXD0, PIN_OUTPUT_PULLDOWN, MUX_MODE1)
  47. AM33XX_PADCONF(AM335X_PIN_MII1_RXD1, PIN_INPUT_PULLUP, MUX_MODE1)
  48. AM33XX_PADCONF(AM335X_PIN_MII1_RXD0, PIN_INPUT_PULLUP, MUX_MODE1)
  49. AM33XX_PADCONF(AM335X_PIN_RMII1_REF_CLK, PIN_INPUT_PULLDOWN, MUX_MODE0)
  50. >;
  51. };
  52. cpsw_sleep: cpsw_sleep {
  53. pinctrl-single,pins = <
  54. /* Slave 1 reset value */
  55. AM33XX_PADCONF(AM335X_PIN_MII1_CRS, PIN_INPUT_PULLDOWN, MUX_MODE7)
  56. AM33XX_PADCONF(AM335X_PIN_MII1_RX_ER, PIN_INPUT_PULLDOWN, MUX_MODE7)
  57. AM33XX_PADCONF(AM335X_PIN_MII1_TX_EN, PIN_INPUT_PULLDOWN, MUX_MODE7)
  58. AM33XX_PADCONF(AM335X_PIN_MII1_RX_DV, PIN_INPUT_PULLDOWN, MUX_MODE7)
  59. AM33XX_PADCONF(AM335X_PIN_MII1_TXD1, PIN_INPUT_PULLDOWN, MUX_MODE7)
  60. AM33XX_PADCONF(AM335X_PIN_MII1_TXD0, PIN_INPUT_PULLDOWN, MUX_MODE7)
  61. AM33XX_PADCONF(AM335X_PIN_MII1_RXD1, PIN_INPUT_PULLDOWN, MUX_MODE7)
  62. AM33XX_PADCONF(AM335X_PIN_MII1_RXD0, PIN_INPUT_PULLDOWN, MUX_MODE7)
  63. AM33XX_PADCONF(AM335X_PIN_RMII1_REF_CLK, PIN_INPUT_PULLDOWN, MUX_MODE7)
  64. >;
  65. };
  66. davinci_mdio_default: davinci_mdio_default {
  67. pinctrl-single,pins = <
  68. /* mdio_data.mdio_data */
  69. AM33XX_PADCONF(AM335X_PIN_MDIO, PIN_INPUT_PULLUP | SLEWCTRL_FAST, MUX_MODE0)
  70. /* mdio_clk.mdio_clk */
  71. AM33XX_PADCONF(AM335X_PIN_MDC, PIN_OUTPUT_PULLUP, MUX_MODE0)
  72. >;
  73. };
  74. davinci_mdio_sleep: davinci_mdio_sleep {
  75. pinctrl-single,pins = <
  76. /* MDIO reset value */
  77. AM33XX_PADCONF(AM335X_PIN_MDIO, PIN_INPUT_PULLDOWN, MUX_MODE7)
  78. AM33XX_PADCONF(AM335X_PIN_MDC, PIN_INPUT_PULLDOWN, MUX_MODE7)
  79. >;
  80. };
  81. usb1_drvvbus: usb1_drvvbus {
  82. pinctrl-single,pins = <
  83. AM33XX_PADCONF(AM335X_PIN_USB1_DRVVBUS, PIN_OUTPUT_PULLDOWN, MUX_MODE0)
  84. >;
  85. };
  86. sd_pins: pinmux_sd_card {
  87. pinctrl-single,pins = <
  88. AM33XX_PADCONF(AM335X_PIN_MMC0_DAT3, PIN_INPUT, MUX_MODE0)
  89. AM33XX_PADCONF(AM335X_PIN_MMC0_DAT2, PIN_INPUT, MUX_MODE0)
  90. AM33XX_PADCONF(AM335X_PIN_MMC0_DAT1, PIN_INPUT, MUX_MODE0)
  91. AM33XX_PADCONF(AM335X_PIN_MMC0_DAT0, PIN_INPUT, MUX_MODE0)
  92. AM33XX_PADCONF(AM335X_PIN_MMC0_CLK, PIN_INPUT, MUX_MODE0)
  93. AM33XX_PADCONF(AM335X_PIN_MMC0_CMD, PIN_INPUT, MUX_MODE0)
  94. AM33XX_PADCONF(AM335X_PIN_SPI0_CS1, PIN_INPUT, MUX_MODE7) /* spi0_cs1.gpio0_6 */
  95. >;
  96. };
  97. led_gpio_pins: led_gpio_pins {
  98. pinctrl-single,pins = <
  99. AM33XX_PADCONF(AM335X_PIN_EMU0, PIN_OUTPUT, MUX_MODE7) /* emu0.gpio3_7 */
  100. AM33XX_PADCONF(AM335X_PIN_EMU1, PIN_OUTPUT, MUX_MODE7) /* emu1.gpio3_8 */
  101. >;
  102. };
  103. };
  104. &uart0 {
  105. pinctrl-names = "default";
  106. pinctrl-0 = <&uart0_pins>;
  107. status = "okay";
  108. };
  109. &ldo4_reg {
  110. regulator-min-microvolt = <3300000>;
  111. regulator-max-microvolt = <3300000>;
  112. };
  113. /* Ethernet */
  114. &mac_sw {
  115. pinctrl-names = "default", "sleep";
  116. pinctrl-0 = <&cpsw_default>;
  117. pinctrl-1 = <&cpsw_sleep>;
  118. status = "okay";
  119. };
  120. &davinci_mdio_sw {
  121. pinctrl-names = "default", "sleep";
  122. pinctrl-0 = <&davinci_mdio_default>;
  123. pinctrl-1 = <&davinci_mdio_sleep>;
  124. ethphy0: ethernet-phy@0 {
  125. reg = <0>;
  126. };
  127. };
  128. &cpsw_port1 {
  129. phy-handle = <&ethphy0>;
  130. phy-mode = "rmii";
  131. ti,dual-emac-pvid = <1>;
  132. };
  133. &cpsw_port2 {
  134. status = "disabled";
  135. };
  136. /* USB */
  137. &usb1 {
  138. pinctrl-names = "default";
  139. pinctrl-0 = <&usb1_drvvbus>;
  140. dr_mode = "host";
  141. };
  142. /* microSD */
  143. &mmc1 {
  144. pinctrl-names = "default";
  145. pinctrl-0 = <&sd_pins>;
  146. vmmc-supply = <&ldo4_reg>;
  147. bus-width = <0x4>;
  148. cd-gpios = <&gpio0 6 GPIO_ACTIVE_HIGH>;
  149. status = "okay";
  150. };
  151. &tps {
  152. interrupt-parent = <&intc>;
  153. interrupts = <7>; /* NNMI */
  154. charger {
  155. status = "okay";
  156. };
  157. pwrbutton {
  158. status = "okay";
  159. };
  160. };