omap4-duovero-parlor.dts 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. /*
  2. * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group
  3. *
  4. * This program is free software; you can redistribute it and/or modify
  5. * it under the terms of the GNU General Public License version 2 as
  6. * published by the Free Software Foundation.
  7. */
  8. /dts-v1/;
  9. #include "omap4-duovero.dtsi"
  10. #include <dt-bindings/input/input.h>
  11. / {
  12. model = "OMAP4430 Gumstix Duovero on Parlor";
  13. compatible = "gumstix,omap4-duovero-parlor", "gumstix,omap4-duovero", "ti,omap4430", "ti,omap4";
  14. aliases {
  15. display0 = &hdmi0;
  16. };
  17. leds {
  18. compatible = "gpio-leds";
  19. led0 {
  20. label = "duovero:blue:led0";
  21. gpios = <&gpio4 26 GPIO_ACTIVE_HIGH>; /* gpio_122 */
  22. linux,default-trigger = "heartbeat";
  23. };
  24. };
  25. gpio_keys {
  26. compatible = "gpio-keys";
  27. #address-cells = <1>;
  28. #size-cells = <0>;
  29. button0@121 {
  30. label = "button0";
  31. linux,code = <BTN_0>;
  32. gpios = <&gpio4 25 GPIO_ACTIVE_LOW>; /* gpio_121 */
  33. gpio-key,wakeup;
  34. };
  35. };
  36. hdmi0: connector@0 {
  37. compatible = "hdmi-connector";
  38. label = "hdmi";
  39. type = "d";
  40. hpd-gpios = <&gpio2 31 GPIO_ACTIVE_HIGH>; /* gpio_63 */
  41. port {
  42. hdmi_connector_in: endpoint {
  43. remote-endpoint = <&hdmi_out>;
  44. };
  45. };
  46. };
  47. };
  48. &omap4_pmx_core {
  49. pinctrl-0 = <
  50. &led_pins
  51. &button_pins
  52. &smsc_pins
  53. >;
  54. led_pins: pinmux_led_pins {
  55. pinctrl-single,pins = <
  56. OMAP4_IOPAD(0x116, PIN_OUTPUT | MUX_MODE3) /* abe_dmic_din3.gpio_122 */
  57. >;
  58. };
  59. button_pins: pinmux_button_pins {
  60. pinctrl-single,pins = <
  61. OMAP4_IOPAD(0x114, PIN_INPUT_PULLUP | MUX_MODE3) /* abe_dmic_din2.gpio_121 */
  62. >;
  63. };
  64. i2c2_pins: pinmux_i2c2_pins {
  65. pinctrl-single,pins = <
  66. OMAP4_IOPAD(0x126, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_scl */
  67. OMAP4_IOPAD(0x128, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c2_sda */
  68. >;
  69. };
  70. i2c3_pins: pinmux_i2c3_pins {
  71. pinctrl-single,pins = <
  72. OMAP4_IOPAD(0x12a, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_scl */
  73. OMAP4_IOPAD(0x12c, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c3_sda */
  74. >;
  75. };
  76. smsc_pins: pinmux_smsc_pins {
  77. pinctrl-single,pins = <
  78. OMAP4_IOPAD(0x068, PIN_INPUT | MUX_MODE3) /* gpmc_a20.gpio_44: IRQ */
  79. OMAP4_IOPAD(0x06a, PIN_INPUT_PULLUP | MUX_MODE3) /* gpmc_a21.gpio_45: nReset */
  80. OMAP4_IOPAD(0x070, PIN_INPUT_PULLUP | MUX_MODE3) /* gpmc_a24.gpio_48: amdix enabled */
  81. >;
  82. };
  83. dss_hdmi_pins: pinmux_dss_hdmi_pins {
  84. pinctrl-single,pins = <
  85. OMAP4_IOPAD(0x098, PIN_INPUT | MUX_MODE3) /* hdmi_hpd.gpio_63 */
  86. OMAP4_IOPAD(0x09a, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_cec.hdmi_cec */
  87. OMAP4_IOPAD(0x09c, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_ddc_scl.hdmi_ddc_scl */
  88. OMAP4_IOPAD(0x09e, PIN_INPUT_PULLUP | MUX_MODE0) /* hdmi_ddc_sda.hdmi_ddc_sda */
  89. >;
  90. };
  91. };
  92. &i2c2 {
  93. pinctrl-names = "default";
  94. pinctrl-0 = <&i2c2_pins>;
  95. clock-frequency = <400000>;
  96. };
  97. &i2c3 {
  98. pinctrl-names = "default";
  99. pinctrl-0 = <&i2c3_pins>;
  100. clock-frequency = <100000>;
  101. /* optional 1K EEPROM with revision information */
  102. eeprom@51 {
  103. compatible = "atmel,24c01";
  104. reg = <0x51>;
  105. pagesize = <8>;
  106. };
  107. };
  108. &mmc3 {
  109. status = "disabled";
  110. };
  111. #include "omap-gpmc-smsc911x.dtsi"
  112. &gpmc {
  113. ranges = <5 0 0x2c000000 0x1000000>; /* CS5 */
  114. ethernet@gpmc {
  115. reg = <5 0 0xff>;
  116. interrupt-parent = <&gpio2>;
  117. interrupts = <12 IRQ_TYPE_LEVEL_LOW>; /* gpio_44 */
  118. phy-mode = "mii";
  119. gpmc,cs-on-ns = <10>;
  120. gpmc,cs-rd-off-ns = <50>;
  121. gpmc,cs-wr-off-ns = <50>;
  122. gpmc,adv-on-ns = <0>;
  123. gpmc,adv-rd-off-ns = <10>;
  124. gpmc,adv-wr-off-ns = <10>;
  125. gpmc,oe-on-ns = <15>;
  126. gpmc,oe-off-ns = <50>;
  127. gpmc,we-on-ns = <15>;
  128. gpmc,we-off-ns = <50>;
  129. gpmc,rd-cycle-ns = <50>;
  130. gpmc,wr-cycle-ns = <50>;
  131. gpmc,access-ns = <50>;
  132. gpmc,page-burst-access-ns = <0>;
  133. gpmc,bus-turnaround-ns = <35>;
  134. gpmc,cycle2cycle-delay-ns = <35>;
  135. gpmc,wr-data-mux-bus-ns = <35>;
  136. gpmc,wr-access-ns = <50>;
  137. gpmc,mux-add-data = <2>;
  138. gpmc,sync-read;
  139. gpmc,sync-write;
  140. gpmc,clk-activation-ns = <5>;
  141. gpmc,sync-clk-ps = <20000>;
  142. };
  143. };
  144. &dss {
  145. status = "ok";
  146. };
  147. &hdmi {
  148. status = "ok";
  149. pinctrl-names = "default";
  150. pinctrl-0 = <&dss_hdmi_pins>;
  151. port {
  152. hdmi_out: endpoint {
  153. remote-endpoint = <&hdmi_connector_in>;
  154. };
  155. };
  156. };