bcm2837-rpi-3-b-plus.dts 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. // SPDX-License-Identifier: GPL-2.0
  2. /dts-v1/;
  3. #include "bcm2837.dtsi"
  4. #include "bcm2836-rpi.dtsi"
  5. #include "bcm283x-rpi-lan7515.dtsi"
  6. #include "bcm283x-rpi-usb-host.dtsi"
  7. #include "bcm283x-rpi-wifi-bt.dtsi"
  8. / {
  9. compatible = "raspberrypi,3-model-b-plus", "brcm,bcm2837";
  10. model = "Raspberry Pi 3 Model B+";
  11. chosen {
  12. /* 8250 auxiliary UART instead of pl011 */
  13. stdout-path = "serial1:115200n8";
  14. };
  15. memory@0 {
  16. device_type = "memory";
  17. reg = <0 0x40000000>;
  18. };
  19. leds {
  20. led-act {
  21. gpios = <&gpio 29 GPIO_ACTIVE_HIGH>;
  22. };
  23. led-pwr {
  24. label = "PWR";
  25. gpios = <&expgpio 2 GPIO_ACTIVE_LOW>;
  26. default-state = "keep";
  27. linux,default-trigger = "default-on";
  28. };
  29. };
  30. };
  31. &bt {
  32. shutdown-gpios = <&expgpio 0 GPIO_ACTIVE_HIGH>;
  33. };
  34. &firmware {
  35. expgpio: gpio {
  36. compatible = "raspberrypi,firmware-gpio";
  37. gpio-controller;
  38. #gpio-cells = <2>;
  39. gpio-line-names = "BT_ON",
  40. "WL_ON",
  41. "PWR_LED_R",
  42. "LAN_RUN",
  43. "",
  44. "CAM_GPIO0",
  45. "CAM_GPIO1",
  46. "";
  47. status = "okay";
  48. };
  49. };
  50. &gpio {
  51. /*
  52. * Taken from rpi_SCH_3bplus_1p0_reduced.pdf and
  53. * the official GPU firmware DT blob.
  54. *
  55. * Legend:
  56. * "FOO" = GPIO line named "FOO" on the schematic
  57. * "FOO_N" = GPIO line named "FOO" on schematic, active low
  58. */
  59. gpio-line-names = "ID_SDA",
  60. "ID_SCL",
  61. "SDA1",
  62. "SCL1",
  63. "GPIO_GCLK",
  64. "GPIO5",
  65. "GPIO6",
  66. "SPI_CE1_N",
  67. "SPI_CE0_N",
  68. "SPI_MISO",
  69. "SPI_MOSI",
  70. "SPI_SCLK",
  71. "GPIO12",
  72. "GPIO13",
  73. /* Serial port */
  74. "TXD1",
  75. "RXD1",
  76. "GPIO16",
  77. "GPIO17",
  78. "GPIO18",
  79. "GPIO19",
  80. "GPIO20",
  81. "GPIO21",
  82. "GPIO22",
  83. "GPIO23",
  84. "GPIO24",
  85. "GPIO25",
  86. "GPIO26",
  87. "GPIO27",
  88. "HDMI_HPD_N",
  89. "STATUS_LED_G",
  90. /* Used by BT module */
  91. "CTS0",
  92. "RTS0",
  93. "TXD0",
  94. "RXD0",
  95. /* Used by Wifi */
  96. "SD1_CLK",
  97. "SD1_CMD",
  98. "SD1_DATA0",
  99. "SD1_DATA1",
  100. "SD1_DATA2",
  101. "SD1_DATA3",
  102. "PWM0_OUT",
  103. "PWM1_OUT",
  104. "ETH_CLK",
  105. "WIFI_CLK",
  106. "SDA0",
  107. "SCL0",
  108. "SMPS_SCL",
  109. "SMPS_SDA",
  110. /* Used by SD Card */
  111. "SD_CLK_R",
  112. "SD_CMD_R",
  113. "SD_DATA0_R",
  114. "SD_DATA1_R",
  115. "SD_DATA2_R",
  116. "SD_DATA3_R";
  117. };
  118. &hdmi {
  119. hpd-gpios = <&gpio 28 GPIO_ACTIVE_LOW>;
  120. power-domains = <&power RPI_POWER_DOMAIN_HDMI>;
  121. status = "okay";
  122. };
  123. &pwm {
  124. pinctrl-names = "default";
  125. pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio41>;
  126. status = "okay";
  127. };
  128. /* SDHOST is used to drive the SD card */
  129. &sdhost {
  130. pinctrl-names = "default";
  131. pinctrl-0 = <&sdhost_gpio48>;
  132. status = "okay";
  133. bus-width = <4>;
  134. };
  135. /* uart0 communicates with the BT module */
  136. &uart0 {
  137. pinctrl-names = "default";
  138. pinctrl-0 = <&uart0_ctsrts_gpio30 &uart0_gpio32 &gpclk2_gpio43>;
  139. };
  140. /* uart1 is mapped to the pin header */
  141. &uart1 {
  142. pinctrl-names = "default";
  143. pinctrl-0 = <&uart1_gpio14>;
  144. status = "okay";
  145. };
  146. &wifi_pwrseq {
  147. reset-gpios = <&expgpio 1 GPIO_ACTIVE_LOW>;
  148. };