162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci/dts-v1/; 362306a36Sopenharmony_ci#include "bcm2836.dtsi" 462306a36Sopenharmony_ci#include "bcm2836-rpi.dtsi" 562306a36Sopenharmony_ci#include "bcm283x-rpi-led-deprecated.dtsi" 662306a36Sopenharmony_ci#include "bcm283x-rpi-smsc9514.dtsi" 762306a36Sopenharmony_ci#include "bcm283x-rpi-usb-host.dtsi" 862306a36Sopenharmony_ci 962306a36Sopenharmony_ci/ { 1062306a36Sopenharmony_ci compatible = "raspberrypi,2-model-b", "brcm,bcm2836"; 1162306a36Sopenharmony_ci model = "Raspberry Pi 2 Model B"; 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci memory@0 { 1462306a36Sopenharmony_ci device_type = "memory"; 1562306a36Sopenharmony_ci reg = <0 0x40000000>; 1662306a36Sopenharmony_ci }; 1762306a36Sopenharmony_ci}; 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci&gpio { 2062306a36Sopenharmony_ci /* 2162306a36Sopenharmony_ci * Taken from rpi_SCH_2b_1p2_reduced.pdf and 2262306a36Sopenharmony_ci * the official GPU firmware DT blob. 2362306a36Sopenharmony_ci * 2462306a36Sopenharmony_ci * Legend: 2562306a36Sopenharmony_ci * "FOO" = GPIO line named "FOO" on the schematic 2662306a36Sopenharmony_ci * "FOO_N" = GPIO line named "FOO" on schematic, active low 2762306a36Sopenharmony_ci */ 2862306a36Sopenharmony_ci gpio-line-names = "ID_SDA", 2962306a36Sopenharmony_ci "ID_SCL", 3062306a36Sopenharmony_ci "SDA1", 3162306a36Sopenharmony_ci "SCL1", 3262306a36Sopenharmony_ci "GPIO_GCLK", 3362306a36Sopenharmony_ci "GPIO5", 3462306a36Sopenharmony_ci "GPIO6", 3562306a36Sopenharmony_ci "SPI_CE1_N", 3662306a36Sopenharmony_ci "SPI_CE0_N", 3762306a36Sopenharmony_ci "SPI_MISO", 3862306a36Sopenharmony_ci "SPI_MOSI", 3962306a36Sopenharmony_ci "SPI_SCLK", 4062306a36Sopenharmony_ci "GPIO12", 4162306a36Sopenharmony_ci "GPIO13", 4262306a36Sopenharmony_ci /* Serial port */ 4362306a36Sopenharmony_ci "TXD0", 4462306a36Sopenharmony_ci "RXD0", 4562306a36Sopenharmony_ci "GPIO16", 4662306a36Sopenharmony_ci "GPIO17", 4762306a36Sopenharmony_ci "GPIO18", 4862306a36Sopenharmony_ci "GPIO19", 4962306a36Sopenharmony_ci "GPIO20", 5062306a36Sopenharmony_ci "GPIO21", 5162306a36Sopenharmony_ci "GPIO22", 5262306a36Sopenharmony_ci "GPIO23", 5362306a36Sopenharmony_ci "GPIO24", 5462306a36Sopenharmony_ci "GPIO25", 5562306a36Sopenharmony_ci "GPIO26", 5662306a36Sopenharmony_ci "GPIO27", 5762306a36Sopenharmony_ci "SDA0", 5862306a36Sopenharmony_ci "SCL0", 5962306a36Sopenharmony_ci "", /* GPIO30 */ 6062306a36Sopenharmony_ci "LAN_RUN", 6162306a36Sopenharmony_ci "CAM_GPIO1", 6262306a36Sopenharmony_ci "", /* GPIO33 */ 6362306a36Sopenharmony_ci "", /* GPIO34 */ 6462306a36Sopenharmony_ci "PWR_LOW_N", 6562306a36Sopenharmony_ci "", /* GPIO36 */ 6662306a36Sopenharmony_ci "", /* GPIO37 */ 6762306a36Sopenharmony_ci "USB_LIMIT", 6862306a36Sopenharmony_ci "", /* GPIO39 */ 6962306a36Sopenharmony_ci "PWM0_OUT", 7062306a36Sopenharmony_ci "CAM_GPIO0", 7162306a36Sopenharmony_ci "SMPS_SCL", 7262306a36Sopenharmony_ci "SMPS_SDA", 7362306a36Sopenharmony_ci "ETH_CLK", 7462306a36Sopenharmony_ci "PWM1_OUT", 7562306a36Sopenharmony_ci "HDMI_HPD_N", 7662306a36Sopenharmony_ci "STATUS_LED", 7762306a36Sopenharmony_ci /* Used by SD Card */ 7862306a36Sopenharmony_ci "SD_CLK_R", 7962306a36Sopenharmony_ci "SD_CMD_R", 8062306a36Sopenharmony_ci "SD_DATA0_R", 8162306a36Sopenharmony_ci "SD_DATA1_R", 8262306a36Sopenharmony_ci "SD_DATA2_R", 8362306a36Sopenharmony_ci "SD_DATA3_R"; 8462306a36Sopenharmony_ci 8562306a36Sopenharmony_ci pinctrl-names = "default"; 8662306a36Sopenharmony_ci pinctrl-0 = <&gpioout &alt0 &i2s_alt0>; 8762306a36Sopenharmony_ci 8862306a36Sopenharmony_ci /* I2S interface */ 8962306a36Sopenharmony_ci i2s_alt0: i2s_alt0 { 9062306a36Sopenharmony_ci brcm,pins = <18 19 20 21>; 9162306a36Sopenharmony_ci brcm,function = <BCM2835_FSEL_ALT0>; 9262306a36Sopenharmony_ci }; 9362306a36Sopenharmony_ci}; 9462306a36Sopenharmony_ci 9562306a36Sopenharmony_ci&hdmi { 9662306a36Sopenharmony_ci hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>; 9762306a36Sopenharmony_ci power-domains = <&power RPI_POWER_DOMAIN_HDMI>; 9862306a36Sopenharmony_ci status = "okay"; 9962306a36Sopenharmony_ci}; 10062306a36Sopenharmony_ci 10162306a36Sopenharmony_ci&led_act { 10262306a36Sopenharmony_ci gpios = <&gpio 47 GPIO_ACTIVE_HIGH>; 10362306a36Sopenharmony_ci}; 10462306a36Sopenharmony_ci 10562306a36Sopenharmony_ci&leds { 10662306a36Sopenharmony_ci led-pwr { 10762306a36Sopenharmony_ci label = "PWR"; 10862306a36Sopenharmony_ci gpios = <&gpio 35 GPIO_ACTIVE_HIGH>; 10962306a36Sopenharmony_ci default-state = "keep"; 11062306a36Sopenharmony_ci linux,default-trigger = "default-on"; 11162306a36Sopenharmony_ci }; 11262306a36Sopenharmony_ci}; 11362306a36Sopenharmony_ci 11462306a36Sopenharmony_ci&pwm { 11562306a36Sopenharmony_ci pinctrl-names = "default"; 11662306a36Sopenharmony_ci pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio45>; 11762306a36Sopenharmony_ci status = "okay"; 11862306a36Sopenharmony_ci}; 11962306a36Sopenharmony_ci 12062306a36Sopenharmony_ci&sdhost { 12162306a36Sopenharmony_ci pinctrl-names = "default"; 12262306a36Sopenharmony_ci pinctrl-0 = <&sdhost_gpio48>; 12362306a36Sopenharmony_ci bus-width = <4>; 12462306a36Sopenharmony_ci status = "okay"; 12562306a36Sopenharmony_ci}; 12662306a36Sopenharmony_ci 12762306a36Sopenharmony_ci&uart0 { 12862306a36Sopenharmony_ci pinctrl-names = "default"; 12962306a36Sopenharmony_ci pinctrl-0 = <&uart0_gpio14>; 13062306a36Sopenharmony_ci status = "okay"; 13162306a36Sopenharmony_ci}; 132