1*d4c6c8f8SAndrea della Porta// SPDX-License-Identifier: (GPL-2.0 OR MIT) 2*d4c6c8f8SAndrea della Porta/dts-v1/; 3*d4c6c8f8SAndrea della Porta 4*d4c6c8f8SAndrea della Porta#include <dt-bindings/gpio/gpio.h> 5*d4c6c8f8SAndrea della Porta#include "bcm2712.dtsi" 6*d4c6c8f8SAndrea della Porta 7*d4c6c8f8SAndrea della Porta/ { 8*d4c6c8f8SAndrea della Porta compatible = "raspberrypi,5-model-b", "brcm,bcm2712"; 9*d4c6c8f8SAndrea della Porta model = "Raspberry Pi 5"; 10*d4c6c8f8SAndrea della Porta 11*d4c6c8f8SAndrea della Porta aliases { 12*d4c6c8f8SAndrea della Porta serial10 = &uart10; 13*d4c6c8f8SAndrea della Porta }; 14*d4c6c8f8SAndrea della Porta 15*d4c6c8f8SAndrea della Porta chosen: chosen { 16*d4c6c8f8SAndrea della Porta stdout-path = "serial10:115200n8"; 17*d4c6c8f8SAndrea della Porta }; 18*d4c6c8f8SAndrea della Porta 19*d4c6c8f8SAndrea della Porta clk_rp1_xosc: clock-50000000 { 20*d4c6c8f8SAndrea della Porta compatible = "fixed-clock"; 21*d4c6c8f8SAndrea della Porta #clock-cells = <0>; 22*d4c6c8f8SAndrea della Porta clock-output-names = "rp1-xosc"; 23*d4c6c8f8SAndrea della Porta clock-frequency = <50000000>; 24*d4c6c8f8SAndrea della Porta }; 25*d4c6c8f8SAndrea della Porta 26*d4c6c8f8SAndrea della Porta /* Will be filled by the bootloader */ 27*d4c6c8f8SAndrea della Porta memory@0 { 28*d4c6c8f8SAndrea della Porta device_type = "memory"; 29*d4c6c8f8SAndrea della Porta reg = <0 0 0 0x28000000>; 30*d4c6c8f8SAndrea della Porta }; 31*d4c6c8f8SAndrea della Porta 32*d4c6c8f8SAndrea della Porta sd_io_1v8_reg: sd-io-1v8-reg { 33*d4c6c8f8SAndrea della Porta compatible = "regulator-gpio"; 34*d4c6c8f8SAndrea della Porta regulator-name = "vdd-sd-io"; 35*d4c6c8f8SAndrea della Porta regulator-min-microvolt = <1800000>; 36*d4c6c8f8SAndrea della Porta regulator-max-microvolt = <3300000>; 37*d4c6c8f8SAndrea della Porta regulator-boot-on; 38*d4c6c8f8SAndrea della Porta regulator-always-on; 39*d4c6c8f8SAndrea della Porta regulator-settling-time-us = <5000>; 40*d4c6c8f8SAndrea della Porta gpios = <&gio_aon 3 GPIO_ACTIVE_HIGH>; 41*d4c6c8f8SAndrea della Porta states = <1800000 1>, 42*d4c6c8f8SAndrea della Porta <3300000 0>; 43*d4c6c8f8SAndrea della Porta }; 44*d4c6c8f8SAndrea della Porta 45*d4c6c8f8SAndrea della Porta sd_vcc_reg: sd-vcc-reg { 46*d4c6c8f8SAndrea della Porta compatible = "regulator-fixed"; 47*d4c6c8f8SAndrea della Porta regulator-name = "vcc-sd"; 48*d4c6c8f8SAndrea della Porta regulator-min-microvolt = <3300000>; 49*d4c6c8f8SAndrea della Porta regulator-max-microvolt = <3300000>; 50*d4c6c8f8SAndrea della Porta regulator-boot-on; 51*d4c6c8f8SAndrea della Porta enable-active-high; 52*d4c6c8f8SAndrea della Porta gpios = <&gio_aon 4 GPIO_ACTIVE_HIGH>; 53*d4c6c8f8SAndrea della Porta }; 54*d4c6c8f8SAndrea della Porta}; 55*d4c6c8f8SAndrea della Porta 56*d4c6c8f8SAndrea della Porta/* The Debug UART, on Rpi5 it's on JST-SH 1.0mm 3-pin connector 57*d4c6c8f8SAndrea della Porta * labeled "UART", i.e. the interface with the system console. 58*d4c6c8f8SAndrea della Porta */ 59*d4c6c8f8SAndrea della Porta&uart10 { 60*d4c6c8f8SAndrea della Porta status = "okay"; 61*d4c6c8f8SAndrea della Porta}; 62*d4c6c8f8SAndrea della Porta 63*d4c6c8f8SAndrea della Porta/* SDIO1 is used to drive the SD card */ 64*d4c6c8f8SAndrea della Porta&sdio1 { 65*d4c6c8f8SAndrea della Porta vqmmc-supply = <&sd_io_1v8_reg>; 66*d4c6c8f8SAndrea della Porta vmmc-supply = <&sd_vcc_reg>; 67*d4c6c8f8SAndrea della Porta bus-width = <4>; 68*d4c6c8f8SAndrea della Porta sd-uhs-sdr50; 69*d4c6c8f8SAndrea della Porta sd-uhs-ddr50; 70*d4c6c8f8SAndrea della Porta sd-uhs-sdr104; 71*d4c6c8f8SAndrea della Porta}; 72*d4c6c8f8SAndrea della Porta 73*d4c6c8f8SAndrea della Porta&soc { 74*d4c6c8f8SAndrea della Porta firmware: firmware { 75*d4c6c8f8SAndrea della Porta compatible = "raspberrypi,bcm2835-firmware", "simple-mfd"; 76*d4c6c8f8SAndrea della Porta #address-cells = <1>; 77*d4c6c8f8SAndrea della Porta #size-cells = <1>; 78*d4c6c8f8SAndrea della Porta 79*d4c6c8f8SAndrea della Porta mboxes = <&mailbox>; 80*d4c6c8f8SAndrea della Porta dma-ranges; 81*d4c6c8f8SAndrea della Porta 82*d4c6c8f8SAndrea della Porta firmware_clocks: clocks { 83*d4c6c8f8SAndrea della Porta compatible = "raspberrypi,firmware-clocks"; 84*d4c6c8f8SAndrea della Porta #clock-cells = <1>; 85*d4c6c8f8SAndrea della Porta }; 86*d4c6c8f8SAndrea della Porta 87*d4c6c8f8SAndrea della Porta reset: reset { 88*d4c6c8f8SAndrea della Porta compatible = "raspberrypi,firmware-reset"; 89*d4c6c8f8SAndrea della Porta #reset-cells = <1>; 90*d4c6c8f8SAndrea della Porta }; 91*d4c6c8f8SAndrea della Porta }; 92*d4c6c8f8SAndrea della Porta 93*d4c6c8f8SAndrea della Porta power: power { 94*d4c6c8f8SAndrea della Porta compatible = "raspberrypi,bcm2835-power"; 95*d4c6c8f8SAndrea della Porta firmware = <&firmware>; 96*d4c6c8f8SAndrea della Porta #power-domain-cells = <1>; 97*d4c6c8f8SAndrea della Porta }; 98*d4c6c8f8SAndrea della Porta}; 99*d4c6c8f8SAndrea della Porta 100*d4c6c8f8SAndrea della Porta&hvs { 101*d4c6c8f8SAndrea della Porta clocks = <&firmware_clocks 4>, <&firmware_clocks 16>; 102*d4c6c8f8SAndrea della Porta clock-names = "core", "disp"; 103*d4c6c8f8SAndrea della Porta}; 104*d4c6c8f8SAndrea della Porta 105*d4c6c8f8SAndrea della Porta&hdmi0 { 106*d4c6c8f8SAndrea della Porta clocks = <&firmware_clocks 13>, <&firmware_clocks 14>, <&dvp 0>, <&clk_27MHz>; 107*d4c6c8f8SAndrea della Porta clock-names = "hdmi", "bvb", "audio", "cec"; 108*d4c6c8f8SAndrea della Porta}; 109*d4c6c8f8SAndrea della Porta 110*d4c6c8f8SAndrea della Porta&hdmi1 { 111*d4c6c8f8SAndrea della Porta clocks = <&firmware_clocks 13>, <&firmware_clocks 14>, <&dvp 1>, <&clk_27MHz>; 112*d4c6c8f8SAndrea della Porta clock-names = "hdmi", "bvb", "audio", "cec"; 113*d4c6c8f8SAndrea della Porta}; 114*d4c6c8f8SAndrea della Porta 115*d4c6c8f8SAndrea della Porta&pcie1 { 116*d4c6c8f8SAndrea della Porta status = "okay"; 117*d4c6c8f8SAndrea della Porta}; 118*d4c6c8f8SAndrea della Porta 119*d4c6c8f8SAndrea della Porta&pcie2 { 120*d4c6c8f8SAndrea della Porta status = "okay"; 121*d4c6c8f8SAndrea della Porta}; 122