Skip to content

Instantly share code, notes, and snippets.

@cleverca22

cleverca22/fdt Secret

Last active September 30, 2023 13:39
Show Gist options
  • Save cleverca22/97e46998b5fbd4e2f6772127c0cd034a to your computer and use it in GitHub Desktop.
Save cleverca22/97e46998b5fbd4e2f6772127c0cd034a to your computer and use it in GitHub Desktop.
/dts-v1/;
/ {
memreserve = <0x3f800000 0x800000>;
serial-number = "c3dd4b6bbe445e1c";
compatible = "raspberrypi,5-model-b\0brcm,bcm2712";
model = "Raspberry Pi 5 Model B Rev 1.0";
#address-cells = <0x02>;
#size-cells = <0x01>;
interrupt-parent = <0x01>;
hat {
uuid = "fc6f6c3d-5622-4822-b565-81b0d3860e67";
product_ver = "0x0021";
product_id = "0x0003";
product = "Explorer HAT Pro";
vendor = "Pimoroni Ltd.";
};
system {
linux,serial = <0xc3dd4b6b 0xbe445e1c>;
linux,revision = <0xd04170>;
};
reserved-memory {
#address-cells = <0x02>;
#size-cells = <0x01>;
ranges;
phandle = <0x67>;
atf@0 {
reg = <0x00 0x00 0x80000>;
no-map;
};
linux,cma {
compatible = "shared-dma-pool";
size = <0x14000000>;
reusable;
linux,cma-default;
alloc-ranges = <0x00 0x00 0x40000000>;
phandle = <0x68>;
};
nvram@0 {
compatible = "raspberrypi,bootloader-config\0nvmem-rmem";
#address-cells = <0x01>;
#size-cells = <0x01>;
reg = <0x00 0x3fd165a0 0x46>;
no-map;
status = "okay";
phandle = <0x69>;
};
};
thermal-zones {
cpu-thermal {
polling-delay-passive = <0x7d0>;
polling-delay = <0x3e8>;
coefficients = <0xfffffdda 0x6ddd0>;
thermal-sensors = <0x02>;
phandle = <0x6a>;
trips {
phandle = <0x6b>;
cpu-crit {
temperature = <0x1adb0>;
hysteresis = <0x00>;
type = "critical";
phandle = <0x08>;
};
cpu-tepid {
temperature = <0xc350>;
hysteresis = <0x1388>;
type = "active";
phandle = <0x03>;
};
cpu-warm {
temperature = <0xea60>;
hysteresis = <0x1388>;
type = "active";
phandle = <0x05>;
};
cpu-hot {
temperature = <0x107ac>;
hysteresis = <0x1388>;
type = "active";
phandle = <0x06>;
};
cpu-vhot {
temperature = <0x124f8>;
hysteresis = <0x1388>;
type = "active";
phandle = <0x07>;
};
};
cooling-maps {
phandle = <0x6c>;
tepid {
trip = <0x03>;
cooling-device = <0x04 0x01 0x01>;
};
warm {
trip = <0x05>;
cooling-device = <0x04 0x02 0x02>;
};
hot {
trip = <0x06>;
cooling-device = <0x04 0x03 0x03>;
};
vhot {
trip = <0x07>;
cooling-device = <0x04 0x04 0x04>;
};
melt {
trip = <0x08>;
cooling-device = <0x04 0x04 0x04>;
};
};
};
};
clk-27M {
#clock-cells = <0x00>;
compatible = "fixed-clock";
clock-frequency = <0x19bfcc0>;
clock-output-names = "27MHz-clock";
phandle = <0x1d>;
};
clk-108M {
#clock-cells = <0x00>;
compatible = "fixed-clock";
clock-frequency = <0x66ff300>;
clock-output-names = "108MHz-clock";
phandle = <0x10>;
};
hvs@107c580000 {
compatible = "brcm,bcm2712-hvs";
reg = <0x10 0x7c580000 0x1a000>;
interrupt-parent = <0x09>;
interrupts = <0x02 0x09 0x10>;
interrupt-names = "ch0-eof\0ch1-eof\0ch2-eof";
status = "okay";
clocks = <0x0a 0x04 0x0a 0x10>;
clock-names = "core\0disp";
phandle = <0x6d>;
};
soc {
compatible = "simple-bus";
#address-cells = <0x01>;
#size-cells = <0x01>;
ranges = <0x7c000000 0x10 0x7c000000 0x4000000>;
dma-ranges = <0xc0000000 0x00 0x00 0x40000000 0x7c000000 0x10 0x7c000000 0x4000000>;
phandle = <0x6e>;
timer@7c003000 {
compatible = "brcm,bcm2835-system-timer";
reg = <0x7c003000 0x1000>;
interrupts = <0x00 0x40 0x04 0x00 0x41 0x04 0x00 0x42 0x04 0x00 0x43 0x04>;
clock-frequency = <0xf4240>;
phandle = <0x6f>;
};
firmwarekms@7d503000 {
compatible = "raspberrypi,rpi-firmware-kms";
reg = <0x7d503000 0x18>;
interrupt-parent = <0x0b>;
interrupts = <0x13>;
brcm,firmware = <0x0c>;
status = "disabled";
phandle = <0x70>;
};
mailbox@7c013880 {
compatible = "brcm,bcm2835-mbox";
reg = <0x7c013880 0x40>;
interrupts = <0x00 0x21 0x04>;
#mbox-cells = <0x00>;
phandle = <0x24>;
};
pixelvalve@7c410000 {
compatible = "brcm,bcm2712-pixelvalve0";
reg = <0x7c410000 0x100>;
interrupts = <0x00 0x65 0x04>;
status = "okay";
phandle = <0x71>;
};
pixelvalve@7c411000 {
compatible = "brcm,bcm2712-pixelvalve1";
reg = <0x7c411000 0x100>;
interrupts = <0x00 0x6e 0x04>;
status = "okay";
phandle = <0x72>;
};
usb@7c480000 {
compatible = "brcm,bcm2835-usb";
reg = <0x7c480000 0x10000>;
interrupts = <0x00 0x49 0x04>;
#address-cells = <0x01>;
#size-cells = <0x00>;
clocks = <0x0d>;
clock-names = "otg";
phys = <0x0e>;
phy-names = "usb2-phy";
status = "disabled";
power-domains = <0x0f 0x06>;
phandle = <0x73>;
};
mop@7c500000 {
compatible = "brcm,bcm2712-mop";
reg = <0x7c500000 0x20>;
interrupt-parent = <0x09>;
interrupts = <0x01>;
status = "okay";
phandle = <0x74>;
};
moplet@7c501000 {
compatible = "brcm,bcm2712-moplet";
reg = <0x7c501000 0x20>;
interrupt-parent = <0x09>;
interrupts = <0x00>;
status = "okay";
phandle = <0x75>;
};
interrupt-controller@7c502000 {
compatible = "brcm,bcm2711-l2-intc\0brcm,l2-intc";
reg = <0x7c502000 0x30>;
interrupts = <0x00 0x61 0x04>;
interrupt-controller;
#interrupt-cells = <0x01>;
status = "okay";
phandle = <0x09>;
};
clock@7c700000 {
compatible = "brcm,brcm2711-dvp";
reg = <0x7c700000 0x10>;
clocks = <0x10>;
#clock-cells = <0x01>;
#reset-cells = <0x01>;
phandle = <0x1f>;
};
local_intc@7cd00000 {
compatible = "brcm,bcm2836-l1-intc";
reg = <0x7cd00000 0x100>;
phandle = <0x76>;
};
serial@7d001000 {
compatible = "arm,pl011\0arm,primecell";
reg = <0x7d001000 0x200>;
interrupts = <0x00 0x79 0x04>;
clocks = <0x11 0x12>;
clock-names = "uartclk\0apb_pclk";
arm,primecell-periphid = <0x241011>;
status = "okay";
phandle = <0x77>;
};
serial@7d001400 {
compatible = "arm,pl011\0arm,primecell";
reg = <0x7d001400 0x200>;
interrupts = <0x00 0x79 0x04>;
clocks = <0x11 0x12>;
clock-names = "uartclk\0apb_pclk";
arm,primecell-periphid = <0x241011>;
status = "disabled";
phandle = <0x78>;
};
serial@7d001600 {
compatible = "arm,pl011\0arm,primecell";
reg = <0x7d001600 0x200>;
interrupts = <0x00 0x79 0x04>;
clocks = <0x11 0x12>;
clock-names = "uartclk\0apb_pclk";
arm,primecell-periphid = <0x241011>;
status = "disabled";
phandle = <0x79>;
};
serial@7d001800 {
compatible = "arm,pl011\0arm,primecell";
reg = <0x7d001800 0x200>;
interrupts = <0x00 0x79 0x04>;
clocks = <0x11 0x12>;
clock-names = "uartclk\0apb_pclk";
arm,primecell-periphid = <0x241011>;
status = "disabled";
phandle = <0x7a>;
};
serial@7d001a00 {
compatible = "arm,pl011\0arm,primecell";
reg = <0x7d001a00 0x200>;
interrupts = <0x00 0x79 0x04>;
clocks = <0x11 0x12>;
clock-names = "uartclk\0apb_pclk";
arm,primecell-periphid = <0x241011>;
status = "disabled";
phandle = <0x7b>;
};
mmc@7d002000 {
compatible = "brcm,bcm2835-sdhost";
reg = <0x7d002000 0x100>;
clocks = <0x12>;
status = "disabled";
phandle = <0x7c>;
};
_i2s@7d003000 {
compatible = "brcm,bcm2835-i2s";
reg = <0x7d003000 0x24>;
status = "disabled";
phandle = <0x7d>;
};
spi@7d004000 {
compatible = "brcm,bcm2835-spi";
reg = <0x7d004000 0x200>;
interrupts = <0x00 0x76 0x04>;
clocks = <0x12>;
num-cs = <0x01>;
#address-cells = <0x01>;
#size-cells = <0x00>;
status = "okay";
pinctrl-names = "default";
cs-gpios = <0x13 0x01 0x01>;
pinctrl-0 = <0x14 0x15>;
phandle = <0x7e>;
spidev@0 {
compatible = "spidev";
reg = <0x00>;
#address-cells = <0x01>;
#size-cells = <0x00>;
spi-max-frequency = <0x1312d00>;
status = "okay";
phandle = <0x7f>;
};
};
spi@7d004600 {
compatible = "brcm,bcm2835-spi";
reg = <0x7d004600 0x200>;
interrupts = <0x00 0x76 0x04>;
clocks = <0x12>;
#address-cells = <0x01>;
#size-cells = <0x00>;
status = "disabled";
phandle = <0x80>;
};
spi@7d004800 {
compatible = "brcm,bcm2835-spi";
reg = <0x7d004800 0x200>;
interrupts = <0x00 0x76 0x04>;
clocks = <0x12>;
#address-cells = <0x01>;
#size-cells = <0x00>;
status = "disabled";
phandle = <0x81>;
};
spi@7d004a00 {
compatible = "brcm,bcm2835-spi";
reg = <0x7d004a00 0x200>;
interrupts = <0x00 0x76 0x04>;
clocks = <0x12>;
#address-cells = <0x01>;
#size-cells = <0x00>;
status = "disabled";
phandle = <0x82>;
};
spi@7d004c00 {
compatible = "brcm,bcm2835-spi";
reg = <0x7d004c00 0x200>;
interrupts = <0x00 0x76 0x04>;
clocks = <0x12>;
#address-cells = <0x01>;
#size-cells = <0x00>;
status = "disabled";
phandle = <0x83>;
};
i2c@7d005000 {
compatible = "brcm,bcm2711-i2c\0brcm,bcm2835-i2c";
reg = <0x7d005000 0x20>;
interrupts = <0x00 0x75 0x04>;
clocks = <0x12>;
#address-cells = <0x01>;
#size-cells = <0x00>;
status = "disabled";
phandle = <0x84>;
};
i2c@7d005600 {
compatible = "brcm,bcm2711-i2c\0brcm,bcm2835-i2c";
reg = <0x7d005600 0x20>;
interrupts = <0x00 0x75 0x04>;
clocks = <0x12>;
#address-cells = <0x01>;
#size-cells = <0x00>;
status = "disabled";
clock-frequency = <0x61a80>;
pinctrl-0 = <0x16>;
pinctrl-names = "default";
phandle = <0x85>;
};
i2c@7d005800 {
compatible = "brcm,bcm2711-i2c\0brcm,bcm2835-i2c";
reg = <0x7d005800 0x20>;
interrupts = <0x00 0x75 0x04>;
clocks = <0x12>;
#address-cells = <0x01>;
#size-cells = <0x00>;
status = "disabled";
phandle = <0x86>;
};
i2c@7d005a00 {
compatible = "brcm,bcm2711-i2c\0brcm,bcm2835-i2c";
reg = <0x7d005a00 0x20>;
interrupts = <0x00 0x75 0x04>;
clocks = <0x12>;
#address-cells = <0x01>;
#size-cells = <0x00>;
status = "disabled";
phandle = <0x87>;
};
i2c@7d005c00 {
compatible = "brcm,bcm2711-i2c\0brcm,bcm2835-i2c";
reg = <0x7d005c00 0x20>;
interrupts = <0x00 0x75 0x04>;
clocks = <0x12>;
#address-cells = <0x01>;
#size-cells = <0x00>;
status = "disabled";
phandle = <0x88>;
};
i2c@7d005e00 {
compatible = "brcm,bcm2711-i2c\0brcm,bcm2835-i2c";
reg = <0x7d005e00 0x20>;
interrupts = <0x00 0x75 0x04>;
clocks = <0x12>;
#address-cells = <0x01>;
#size-cells = <0x00>;
status = "disabled";
phandle = <0x89>;
};
pwm@7d00c000 {
compatible = "brcm,bcm2835-pwm";
reg = <0x7d00c000 0x28>;
assigned-clock-rates = <0x989680>;
#pwm-cells = <0x02>;
status = "disabled";
phandle = <0x8a>;
};
pwm@7d00c800 {
compatible = "brcm,bcm2835-pwm";
reg = <0x7d00c800 0x28>;
assigned-clock-rates = <0x989680>;
#pwm-cells = <0x02>;
status = "disabled";
phandle = <0x8b>;
};
watchdog@7d200000 {
compatible = "brcm,bcm2712-pm";
reg = <0x7d200000 0x308>;
reg-names = "pm";
#power-domain-cells = <0x01>;
#reset-cells = <0x01>;
clock-names = "v3d\0peri_image\0h264\0isp";
system-power-controller;
phandle = <0x53>;
};
cprman@7d202000 {
compatible = "brcm,bcm2711-cprman";
reg = "} \0\0\0 ";
#clock-cells = <0x01>;
clocks = <0x17>;
status = "disabled";
phandle = <0x8c>;
};
rng@7d208000 {
compatible = "brcm,bcm2711-rng200";
reg = <0x7d208000 0x28>;
status = "okay";
phandle = <0x61>;
};
intc@7d503000 {
compatible = "brcm,l2-intc";
reg = <0x7d503000 0x18>;
interrupts = <0x00 0xee 0x04>;
interrupt-controller;
#interrupt-cells = <0x01>;
phandle = <0x0b>;
};
pinctrl@7d504100 {
compatible = "brcm,bcm2712-pinctrl";
reg = <0x7d504100 0x30>;
phandle = <0x8d>;
uarta_24_pins {
phandle = <0x1a>;
pin_rts {
function = "uart0";
pins = "gpio24";
bias-disable;
};
pin_cts {
function = "uart0";
pins = "gpio25";
bias-pull-up;
};
pin_txd {
function = "uart0";
pins = "gpio26";
bias-disable;
};
pin_rxd {
function = "uart0";
pins = "gpio27";
bias-pull-up;
};
};
sdio2_30_pins {
phandle = <0x51>;
pin_clk {
function = "sd2";
pins = "gpio30";
bias-disable;
};
pin_cmd {
function = "sd2";
pins = "gpio31";
bias-pull-up;
};
pins_dat {
function = "sd2";
pins = "gpio32\0gpio33\0gpio34\0gpio35";
bias-pull-up;
};
};
pwr_button_pins {
function = "gpio";
pins = "gpio20";
bias-pull-up;
phandle = <0x66>;
};
wl_on_pins {
function = "gpio";
pins = "gpio28";
phandle = <0x56>;
};
bt_shutdown_pins {
function = "gpio";
pins = "gpio29";
phandle = <0x1b>;
};
emmc_sd_pulls {
function = "emmc_dat0\0emmc_dat1\0emmc_dat2\0emmc_dat3";
bias-pull-up;
phandle = <0x4d>;
};
spi10_gpio2 {
function = "vc_spi0";
pins = "gpio2\0gpio3\0gpio4";
bias-disable;
phandle = <0x14>;
};
spi10_cs_gpio1 {
function = "gpio";
pins = "gpio1";
bias-pull-up;
phandle = <0x15>;
};
};
i2c@7d508200 {
compatible = "brcm,brcmstb-i2c";
reg = <0x7d508200 0x58>;
interrupt-parent = <0x18>;
interrupts = <0x01>;
clock-frequency = <0x30d40>;
#address-cells = <0x01>;
#size-cells = <0x00>;
status = "okay";
phandle = <0x21>;
};
i2c@7d508280 {
compatible = "brcm,brcmstb-i2c";
reg = <0x7d508280 0x58>;
interrupt-parent = <0x18>;
interrupts = <0x02>;
clock-frequency = <0x30d40>;
#address-cells = <0x01>;
#size-cells = <0x00>;
status = "okay";
phandle = <0x23>;
};
i2c@7d508300 {
compatible = "brcm,brcmstb-i2c";
reg = <0x7d508300 0x58>;
interrupt-parent = <0x18>;
interrupts = <0x00>;
clock-frequency = <0x30d40>;
#address-cells = <0x01>;
#size-cells = <0x00>;
status = "disabled";
phandle = <0x8e>;
};
intc@7d508380 {
compatible = "brcm,bcm7271-l2-intc";
reg = <0x7d508380 0x10>;
interrupts = <0x00 0xf2 0x04>;
interrupt-controller;
#interrupt-cells = <0x01>;
phandle = <0x18>;
};
intc@7d508400 {
compatible = "brcm,bcm7271-l2-intc";
reg = <0x7d508400 0x10>;
interrupts = <0x00 0xf4 0x04>;
interrupt-controller;
#interrupt-cells = <0x01>;
phandle = <0x19>;
};
gpio@7d508500 {
compatible = "brcm,brcmstb-gpio";
reg = <0x7d508500 0x40>;
interrupt-parent = <0x19>;
interrupts = <0x00>;
gpio-controller;
#gpio-cells = <0x02>;
interrupt-controller;
#interrupt-cells = <0x02>;
brcm,gpio-bank-widths = <0x20 0x04>;
brcm,gpio-direct;
gpio-line-names = "-\02712_BOOT_CS_N\02712_BOOT_MISO\02712_BOOT_MOSI\02712_BOOT_SCLK\0-\0-\0-\0-\0-\0-\0-\0-\0-\0PCIE_SDA\0PCIE_SCL\0-\0-\0-\0-\0PWR_GPIO\02712_G21_FS\0-\0-\0BT_RTS\0BT_CTS\0BT_TXD\0BT_RXD\0WL_ON\0BT_ON\0WIFI_SDIO_CLK\0WIFI_SDIO_CMD\0WIFI_SDIO_D0\0WIFI_SDIO_D1\0WIFI_SDIO_D2\0WIFI_SDIO_D3";
phandle = <0x13>;
};
serial@7d50c000 {
compatible = "brcm,bcm7271-uart";
reg = <0x7d50c000 0x20>;
reg-names = "uart";
reg-shift = <0x02>;
reg-io-width = <0x04>;
interrupts = <0x00 0x114 0x04>;
skip-init;
status = "okay";
uart-has-rtscts;
auto-flow-control;
clock-frequency = <0x5b8d800>;
pinctrl-0 = <0x1a 0x1b>;
pinctrl-names = "default";
phandle = <0x8f>;
bluetooth {
compatible = "brcm,bcm43438-bt";
max-speed = <0x2dc6c0>;
shutdown-gpios = <0x13 0x1d 0x00>;
local-bd-address = [fb fe 79 dd 3a d8];
phandle = <0x57>;
};
};
serial@7d50d000 {
compatible = "brcm,bcm7271-uart";
reg = <0x7d50d000 0x20>;
reg-names = "uart";
reg-shift = <0x02>;
reg-io-width = <0x04>;
interrupts = <0x00 0x115 0x04>;
skip-init;
status = "disabled";
phandle = <0x90>;
};
serial@7d50e000 {
compatible = "brcm,bcm7271-uart";
reg = <0x7d50e000 0x20>;
reg-names = "uart";
reg-shift = <0x02>;
reg-io-width = <0x04>;
interrupts = <0x00 0x116 0x04>;
skip-init;
status = "disabled";
phandle = <0x91>;
};
interrupt-controller@7d510600 {
compatible = "brcm,bcm2711-l2-intc\0brcm,l2-intc";
reg = <0x7d510600 0x30>;
interrupts = <0x00 0xef 0x04>;
interrupt-controller;
#interrupt-cells = <0x01>;
status = "okay";
phandle = <0x20>;
};
pinctrl@7d510700 {
compatible = "brcm,bcm2712-aon-pinctrl";
reg = <0x7d510700 0x20>;
phandle = <0x92>;
i2c3_m4_agpio0_pins {
function = "vc_i2c3";
pins = "aon_gpio0\0aon_gpio1";
bias-pull-up;
phandle = <0x16>;
};
bsc_m1_agpio13_pins {
function = "bsc_m1";
pins = "aon_gpio13\0aon_gpio14";
bias-pull-up;
phandle = <0x93>;
};
bsc_pmu_sgpio4_pins {
function = "avs_pmu_bsc";
pins = "aon_sgpio4\0aon_sgpio5";
phandle = <0x94>;
};
bsc_m2_sgpio4_pins {
function = "bsc_m2";
pins = "aon_sgpio4\0aon_sgpio5";
phandle = <0x95>;
};
pwm_aon_agpio1_pins {
function = "aon_pwm";
pins = "aon_gpio1\0aon_gpio2";
phandle = <0x96>;
};
pwm_aon_agpio4_pins {
function = "vc_pwm0";
pins = "aon_gpio4\0aon_gpio5";
phandle = <0x97>;
};
pwm_aon_agpio7_pins {
function = "aon_pwm";
pins = "aon_gpio7\0aon_gpio9";
phandle = <0x98>;
};
emmc_aon_cd_pins {
function = "sd_card_g";
pins = "aon_gpio5";
bias-pull-up;
phandle = <0x4e>;
};
aon_pwm_1pin {
function = "aon_pwm";
pins = "aon_gpio9";
phandle = <0x99>;
};
};
intc@7d517000 {
compatible = "brcm,bcm7271-l2-intc";
reg = <0x7d517000 0x10>;
interrupts = <0x00 0xf7 0x04>;
interrupt-controller;
#interrupt-cells = <0x01>;
status = "disabled";
};
i2c@7d517a00 {
compatible = "brcm,brcmstb-i2c";
reg = <0x7d517a00 0x58>;
interrupt-parent = <0x1c>;
interrupts = <0x00>;
clock-frequency = <0x30d40>;
#address-cells = <0x01>;
#size-cells = <0x00>;
status = "disabled";
phandle = <0x9a>;
};
pwm@7d517a80 {
compatible = "brcm,bcm7038-pwm";
reg = <0x7d517a80 0x28>;
#pwm-cells = <0x02>;
clocks = <0x1d>;
phandle = <0x9b>;
};
intc@7d517ac0 {
compatible = "brcm,bcm7271-l2-intc";
reg = <0x7d517ac0 0x10>;
interrupts = <0x00 0xf5 0x04>;
interrupt-controller;
#interrupt-cells = <0x01>;
status = "disabled";
phandle = <0x1e>;
};
intc@7d517b00 {
compatible = "brcm,bcm7271-l2-intc";
reg = <0x7d517b00 0x10>;
interrupts = <0x00 0xf3 0x04>;
interrupt-controller;
#interrupt-cells = <0x01>;
phandle = <0x1c>;
};
gpio@7d517c00 {
compatible = "brcm,brcmstb-gpio";
reg = <0x7d517c00 0x40>;
interrupt-parent = <0x1e>;
interrupts = <0x00>;
gpio-controller;
#gpio-cells = <0x02>;
#interrupt-cells = <0x02>;
brcm,gpio-bank-widths = <0x11 0x06>;
brcm,gpio-direct;
gpio-line-names = "RP1_SDA\0RP1_SCL\0RP1_RUN\0SD_IOVDD_SEL\0SD_PWR_ON\0SD_CDET_N\0SD_FLG_N\0-\02712_WAKE\02712_STAT_LED\0-\0-\0PMIC_INT\0UART_TX_FS\0UART_RX_FS\0-\0-\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0HDMI0_SCL\0HDMI0_SDA\0HDMI1_SCL\0HDMI1_SDA\0PMIC_SCL\0PMIC_SDA";
phandle = <0x55>;
rp1_run_hog {
gpio-hog;
gpios = <0x02 0x00>;
output-high;
line-name = "RP1 RUN pin";
};
};
avs-monitor@7d542000 {
compatible = "brcm,bcm2711-avs-monitor\0syscon\0simple-mfd";
reg = <0x7d542000 0xf00>;
status = "okay";
phandle = <0x9c>;
thermal {
compatible = "brcm,bcm2711-thermal";
#thermal-sensor-cells = <0x00>;
phandle = <0x02>;
};
};
i2c@7d544000 {
compatible = "brcm,brcmstb-i2c";
reg = <0x7d544000 0x58>;
interrupt-parent = <0x1c>;
interrupts = <0x01>;
clock-frequency = <0x30d40>;
status = "disabled";
phandle = <0x9d>;
};
hdmi@7ef00700 {
compatible = "brcm,bcm2712-hdmi0";
reg = <0x7c701400 0x300 0x7c701000 0x200 0x7c701d00 0x300 0x7c702000 0x80 0x7c703800 0x200 0x7c704000 0x800 0x7c700100 0x80 0x7d510800 0x100 0x7c720000 0x100>;
reg-names = "hdmi\0dvp\0phy\0rm\0packet\0metadata\0csc\0cec\0hd";
resets = <0x1f 0x01>;
interrupt-parent = <0x20>;
interrupts = <0x01 0x02 0x03 0x07 0x08>;
interrupt-names = "cec-tx\0cec-rx\0cec-low\0hpd-connected\0hpd-removed";
ddc = <0x21>;
dmas = <0x22 0x41fa000a>;
dma-names = "audio-rx";
status = "okay";
clocks = <0x0a 0x0d 0x0a 0x0e 0x1f 0x00 0x1d>;
clock-names = "hdmi\0bvb\0audio\0cec";
phandle = <0x9e>;
};
hdmi@7ef05700 {
compatible = "brcm,bcm2712-hdmi1";
reg = <0x7c706400 0x300 0x7c706000 0x200 0x7c706d00 0x300 0x7c707000 0x80 0x7c708800 0x200 0x7c709000 0x800 0x7c700180 0x80 0x7d511000 0x100 0x7c720000 0x100>;
reg-names = "hdmi\0dvp\0phy\0rm\0packet\0metadata\0csc\0cec\0hd";
ddc = <0x23>;
resets = <0x1f 0x02>;
interrupt-parent = <0x20>;
interrupts = <0x0b 0x0c 0x0d 0x0e 0x0f>;
interrupt-names = "cec-tx\0cec-rx\0cec-low\0hpd-connected\0hpd-removed";
dmas = <0x22 0x41fa0011>;
dma-names = "audio-rx";
status = "okay";
clocks = <0x0a 0x0d 0x0a 0x0e 0x1f 0x01 0x1d>;
clock-names = "hdmi\0bvb\0audio\0cec";
phandle = <0x9f>;
};
sound {
phandle = <0xa0>;
};
firmware {
compatible = "raspberrypi,bcm2835-firmware\0simple-mfd";
#address-cells = <0x01>;
#size-cells = <0x01>;
mboxes = <0x24>;
dma-ranges;
phandle = <0x0c>;
clocks {
compatible = "raspberrypi,firmware-clocks";
#clock-cells = <0x01>;
phandle = <0x0a>;
};
reset {
compatible = "raspberrypi,firmware-reset";
#reset-cells = <0x01>;
phandle = <0xa1>;
};
vcio {
compatible = "raspberrypi,vcio";
phandle = <0xa2>;
};
};
power {
compatible = "raspberrypi,bcm2835-power";
firmware = <0x0c>;
#power-domain-cells = <0x01>;
phandle = <0x0f>;
};
fb {
compatible = "brcm,bcm2708-fb";
firmware = <0x0c>;
status = "disabled";
phandle = <0xa3>;
};
rpi_rtc {
compatible = "raspberrypi,rpi-rtc";
firmware = <0x0c>;
status = "okay";
phandle = <0xa4>;
};
fixedregulator_3v3 {
compatible = "regulator-fixed";
regulator-always-on;
regulator-max-microvolt = <0x325aa0>;
regulator-min-microvolt = <0x325aa0>;
regulator-name = "3v3";
phandle = <0xa5>;
};
fixedregulator_5v0 {
compatible = "regulator-fixed";
regulator-always-on;
regulator-max-microvolt = <0x4c4b40>;
regulator-min-microvolt = <0x4c4b40>;
regulator-name = "5v0";
phandle = <0xa6>;
};
gpiomem@7d508500 {
compatible = "raspberrypi,gpiomem";
reg = <0x7d508500 0x40>;
chardev-name = "gpiomem1";
};
gpiomem@7d517c00 {
compatible = "raspberrypi,gpiomem";
reg = <0x7d517c00 0x40>;
chardev-name = "gpiomem2";
};
gpiomem@7d504100 {
compatible = "raspberrypi,gpiomem";
reg = <0x7d504100 0x20>;
chardev-name = "gpiomem3";
};
gpiomem@7d510700 {
compatible = "raspberrypi,gpiomem";
reg = <0x7d510700 0x20>;
chardev-name = "gpiomem4";
};
};
arm-pmu {
compatible = "arm,cortex-a76-pmu";
interrupts = <0x00 0x10 0x04 0x00 0x11 0x04 0x00 0x12 0x04 0x00 0x13 0x04>;
interrupt-affinity = <0x25 0x26 0x27 0x28>;
};
timer {
compatible = "arm,armv8-timer";
interrupts = <0x01 0x0d 0xf08 0x01 0x0e 0xf08 0x01 0x0b 0xf08 0x01 0x0a 0xf08>;
arm,cpu-registers-not-fw-configured;
};
cpus {
#address-cells = <0x01>;
#size-cells = <0x00>;
enable-method = "brcm,bcm2836-smp";
phandle = <0xa7>;
cpu@0 {
device_type = "cpu";
compatible = "arm,cortex-a76";
reg = <0x00>;
enable-method = "psci";
next-level-cache = <0x29>;
phandle = <0x25>;
};
cpu@1 {
device_type = "cpu";
compatible = "arm,cortex-a76";
reg = <0x100>;
enable-method = "psci";
next-level-cache = <0x29>;
phandle = <0x26>;
};
cpu@2 {
device_type = "cpu";
compatible = "arm,cortex-a76";
reg = <0x200>;
enable-method = "psci";
next-level-cache = <0x29>;
phandle = <0x27>;
};
cpu@3 {
device_type = "cpu";
compatible = "arm,cortex-a76";
reg = <0x300>;
enable-method = "psci";
next-level-cache = <0x29>;
phandle = <0x28>;
};
l2-cache {
compatible = "cache";
next-level-cache = <0x2a>;
phandle = <0x29>;
};
l3-cache {
compatible = "cache";
phandle = <0x2a>;
};
};
psci {
method = "smc";
compatible = "arm,psci-1.0\0arm,psci-0.2\0arm,psci";
cpu_on = <0xc4000003>;
cpu_suspend = <0xc4000001>;
cpu_off = <0x84000002>;
};
axi {
compatible = "simple-bus";
#address-cells = <0x02>;
#size-cells = <0x02>;
ranges = <0x00 0x00 0x00 0x00 0x10 0x00 0x10 0x00 0x10 0x00 0x01 0x00 0x14 0x00 0x14 0x00 0x04 0x00 0x18 0x00 0x18 0x00 0x04 0x00 0x1c 0x00 0x1c 0x00 0x04 0x00>;
dma-ranges = <0x00 0x00 0x00 0x00 0x10 0x00 0x10 0x00 0x10 0x00 0x01 0x00 0x14 0x00 0x14 0x00 0x04 0x00 0x18 0x00 0x18 0x00 0x04 0x00 0x1c 0x00 0x1c 0x00 0x04 0x00>;
phandle = <0xa8>;
vc_mem {
reg = <0x3fc00000 0x40000000 0xc0000000>;
};
gpu {
iommus = <0xaa>;
compatible = "brcm,bcm2712-vc6";
phandle = <0xa9>;
};
iommu@5100 {
compatible = "brcm,bcm2712-iommu";
reg = <0x10 0x5100 0x00 0x80>;
cache = <0x2b>;
#iommu-cells = <0x00>;
phandle = <0x54>;
};
iommu@5200 {
compatible = "brcm,bcm2712-iommu";
reg = <0x10 0x5200 0x00 0x80>;
cache = <0x2b>;
#iommu-cells = <0x00>;
#interconnect-cells = <0x00>;
phandle = <0xaa>;
};
iommu@5280 {
compatible = "brcm,bcm2712-iommu";
reg = <0x10 0x5280 0x00 0x80>;
cache = <0x2b>;
#iommu-cells = <0x00>;
dma-iova-offset = <0x10 0x00>;
phandle = <0x46>;
};
iommuc@5b00 {
compatible = "brcm,bcm2712-iommuc";
reg = <0x10 0x5b00 0x00 0x80>;
phandle = <0x2b>;
};
dma@10000 {
compatible = "brcm,bcm2712-dma";
reg = <0x10 0x10000 0x00 0x600>;
interrupts = <0x00 0x50 0x04 0x00 0x51 0x04 0x00 0x52 0x04 0x00 0x53 0x04 0x00 0x54 0x04 0x00 0x55 0x04>;
interrupt-names = "dma0\0dma1\0dma2\0dma3\0dma4\0dma5";
#dma-cells = <0x01>;
brcm,dma-channel-mask = <0x3f>;
phandle = <0xab>;
};
dma@10600 {
compatible = "brcm,bcm2712-dma";
reg = <0x10 0x10600 0x00 0x600>;
interrupts = <0x00 0x56 0x04 0x00 0x57 0x04 0x00 0x58 0x04 0x00 0x59 0x04 0x00 0x5a 0x04 0x00 0x5b 0x04>;
interrupt-names = "dma6\0dma7\0dma8\0dma9\0dma10\0dma11";
#dma-cells = <0x01>;
brcm,dma-channel-mask = <0xfc0>;
phandle = <0x22>;
};
pcie@100000 {
compatible = "brcm,bcm2712-pcie";
reg = <0x10 0x100000 0x00 0x9310>;
device_type = "pci";
max-link-speed = <0x02>;
#address-cells = <0x03>;
#interrupt-cells = <0x01>;
#size-cells = <0x02>;
interrupt-parent = <0x01>;
interrupts = <0x00 0xd5 0x04 0x00 0xd6 0x04>;
interrupt-names = "pcie\0msi";
interrupt-map-mask = <0x00 0x00 0x00 0x07>;
interrupt-map = <0x00 0x00 0x00 0x01 0x01 0x00 0xd1 0x04 0x00 0x00 0x00 0x02 0x01 0x00 0xd2 0x04 0x00 0x00 0x00 0x03 0x01 0x00 0xd3 0x04 0x00 0x00 0x00 0x04 0x01 0x00 0xd4 0x04>;
resets = <0x2c 0x05 0x2c 0x2a 0x2d>;
reset-names = "swinit\0bridge\0rescal";
msi-controller;
msi-parent = <0x2e>;
ranges = <0x2000000 0x00 0x00 0x17 0x00 0x00 0xfffffffc 0x43000000 0x04 0x00 0x14 0x00 0x03 0x00>;
dma-ranges = <0x43000000 0x10 0x00 0x00 0x00 0x10 0x00>;
status = "disabled";
phandle = <0x2e>;
};
pcie@110000 {
compatible = "brcm,bcm2712-pcie";
reg = <0x10 0x110000 0x00 0x9310>;
device_type = "pci";
max-link-speed = <0x02>;
#address-cells = <0x03>;
#interrupt-cells = <0x01>;
#size-cells = <0x02>;
interrupt-parent = <0x01>;
interrupts = <0x00 0xdf 0x04 0x00 0xe0 0x04>;
interrupt-names = "pcie\0msi";
interrupt-map-mask = <0x00 0x00 0x00 0x07>;
interrupt-map = <0x00 0x00 0x00 0x01 0x01 0x00 0xdb 0x04 0x00 0x00 0x00 0x02 0x01 0x00 0xdc 0x04 0x00 0x00 0x00 0x03 0x01 0x00 0xdd 0x04 0x00 0x00 0x00 0x04 0x01 0x00 0xde 0x04>;
resets = <0x2c 0x07 0x2c 0x2b 0x2d>;
reset-names = "swinit\0bridge\0rescal";
msi-controller;
msi-parent = <0x2f>;
ranges = <0x2000000 0x00 0x00 0x1b 0x00 0x00 0xfffffffc 0x43000000 0x04 0x00 0x18 0x00 0x03 0x00>;
dma-ranges = <0x3000000 0x10 0x00 0x00 0x00 0x10 0x00>;
brcm,enable-l1ss;
status = "disabled";
phandle = <0x60>;
};
reset-controller@119500 {
compatible = "brcm,bcm7216-pcie-sata-rescal";
reg = <0x10 0x119500 0x00 0x10>;
#reset-cells = <0x00>;
phandle = <0x2d>;
};
pcie@120000 {
compatible = "brcm,bcm2712-pcie";
reg = <0x10 0x120000 0x00 0x9310>;
device_type = "pci";
max-link-speed = <0x02>;
#address-cells = <0x03>;
#interrupt-cells = <0x01>;
#size-cells = <0x02>;
interrupt-parent = <0x01>;
interrupts = <0x00 0xe9 0x04 0x00 0xea 0x04>;
interrupt-names = "pcie\0msi";
interrupt-map-mask = <0x00 0x00 0x00 0x07>;
interrupt-map = <0x00 0x00 0x00 0x01 0x01 0x00 0xe5 0x04 0x00 0x00 0x00 0x02 0x01 0x00 0xe6 0x04 0x00 0x00 0x00 0x03 0x01 0x00 0xe7 0x04 0x00 0x00 0x00 0x04 0x01 0x00 0xe8 0x04>;
resets = <0x2c 0x20 0x2c 0x2c 0x2d>;
reset-names = "swinit\0bridge\0rescal";
msi-controller;
msi-parent = <0x30>;
ranges = <0x2000000 0x00 0x00 0x1f 0x00 0x00 0xfffffffc 0x43000000 0x04 0x00 0x1c 0x00 0x03 0x00>;
dma-ranges = <0x2000000 0x00 0x00 0x1f 0x00 0x00 0x400000 0x43000000 0x10 0x00 0x00 0x00 0x10 0x00>;
brcm,enable-mps-rcb;
brcm,enable-l1ss;
status = "okay";
brcm,vdm-qos-map = <0xbbaa9888>;
aspm-no-l0s;
phandle = <0xac>;
rp1 {
compatible = "simple-bus";
#address-cells = <0x02>;
#size-cells = <0x02>;
#interrupt-cells = <0x02>;
interrupt-controller;
interrupt-parent = <0x31>;
ranges = <0xc0 0x40000000 0x2000000 0x00 0x00 0x00 0x400000>;
dma-ranges = <0x10 0x00 0x43000000 0x10 0x00 0x10 0x00 0xc0 0x40000000 0x2000000 0x00 0x00 0x00 0x400000 0x00 0x00 0x2000000 0x10 0x00 0x10 0x00>;
phandle = <0x31>;
clocks@18000 {
compatible = "raspberrypi,rp1-clocks";
#clock-cells = <0x01>;
reg = <0xc0 0x40018000 0x00 0x10038>;
clocks = <0x32>;
assigned-clocks = <0x33 0x00 0x33 0x01 0x33 0x03 0x33 0x09 0x33 0x04 0x33 0x0a 0x33 0x0c 0x33 0x06 0x33 0x0d 0x33 0x1f 0x33 0x20 0x33 0x1d>;
assigned-clock-rates = <0x3b9aca00 0x5b8d8000 0xbebc200 0x7735940 0x3a98000 0xb71b000 0xbebc200 0x5f5e100 0x2faf080 0xf4240 0xbebc200 0x2faf080>;
phandle = <0x33>;
};
serial@30000 {
compatible = "arm,pl011-axi";
reg = <0xc0 0x40030000 0x00 0x100>;
interrupts = <0x19 0x04>;
clocks = <0x33 0x0f 0x33 0x06>;
clock-names = "uartclk\0apb_pclk";
dmas = <0x34 0x1a 0x34 0x19>;
dma-names = "tx\0rx";
pinctrl-names = "default";
arm,primecell-periphid = <0x541011>;
uart-has-rtscts;
cts-event-workaround;
skip-init;
status = "disabled";
pinctrl-0 = <0x35>;
phandle = <0x5a>;
};
serial@34000 {
compatible = "arm,pl011-axi";
reg = <0xc0 0x40034000 0x00 0x100>;
interrupts = <0x2a 0x04>;
clocks = <0x33 0x0f 0x33 0x06>;
clock-names = "uartclk\0apb_pclk";
pinctrl-names = "default";
arm,primecell-periphid = <0x541011>;
uart-has-rtscts;
cts-event-workaround;
skip-init;
status = "disabled";
phandle = <0xad>;
};
serial@38000 {
compatible = "arm,pl011-axi";
reg = <0xc0 0x40038000 0x00 0x100>;
interrupts = <0x2b 0x04>;
clocks = <0x33 0x0f 0x33 0x06>;
clock-names = "uartclk\0apb_pclk";
pinctrl-names = "default";
arm,primecell-periphid = <0x541011>;
uart-has-rtscts;
cts-event-workaround;
skip-init;
status = "disabled";
phandle = <0xae>;
};
serial@3c000 {
compatible = "arm,pl011-axi";
reg = <0xc0 0x4003c000 0x00 0x100>;
interrupts = <0x2c 0x04>;
clocks = <0x33 0x0f 0x33 0x06>;
clock-names = "uartclk\0apb_pclk";
pinctrl-names = "default";
arm,primecell-periphid = <0x541011>;
uart-has-rtscts;
cts-event-workaround;
skip-init;
status = "disabled";
phandle = <0xaf>;
};
serial@40000 {
compatible = "arm,pl011-axi";
reg = <0xc0 0x40040000 0x00 0x100>;
interrupts = <0x2d 0x04>;
clocks = <0x33 0x0f 0x33 0x06>;
clock-names = "uartclk\0apb_pclk";
pinctrl-names = "default";
arm,primecell-periphid = <0x541011>;
uart-has-rtscts;
cts-event-workaround;
skip-init;
status = "disabled";
phandle = <0xb0>;
};
serial@44000 {
compatible = "arm,pl011-axi";
reg = <0xc0 0x40044000 0x00 0x100>;
interrupts = <0x2e 0x04>;
clocks = <0x33 0x0f 0x33 0x06>;
clock-names = "uartclk\0apb_pclk";
pinctrl-names = "default";
arm,primecell-periphid = <0x541011>;
uart-has-rtscts;
cts-event-workaround;
skip-init;
status = "disabled";
phandle = <0xb1>;
};
spi@4c000 {
reg = <0xc0 0x4004c000 0x00 0x130>;
compatible = "snps,dw-apb-ssi";
interrupts = <0x38 0x04>;
clocks = <0x33 0x0c>;
clock-names = "ssi_clk";
#address-cells = <0x01>;
#size-cells = <0x00>;
num-cs = <0x02>;
dmas = <0x34 0x37 0x34 0x36>;
dma-names = "tx\0rx";
status = "disabled";
phandle = <0xb2>;
};
spi@50000 {
reg = <0xc0 0x40050000 0x00 0x130>;
compatible = "snps,dw-apb-ssi";
interrupts = <0x13 0x04>;
clocks = <0x33 0x0c>;
clock-names = "ssi_clk";
#address-cells = <0x01>;
#size-cells = <0x00>;
num-cs = <0x02>;
dmas = <0x34 0x0d 0x34 0x0c>;
dma-names = "tx\0rx";
status = "disabled";
pinctrl-names = "default";
pinctrl-0 = <0x36 0x37>;
cs-gpios = <0x38 0x08 0x01 0x38 0x07 0x01>;
phandle = <0x62>;
spidev@0 {
compatible = "spidev";
reg = <0x00>;
#address-cells = <0x01>;
#size-cells = <0x00>;
spi-max-frequency = <0x7735940>;
phandle = <0xb3>;
};
spidev@1 {
compatible = "spidev";
reg = <0x01>;
#address-cells = <0x01>;
#size-cells = <0x00>;
spi-max-frequency = <0x7735940>;
phandle = <0xb4>;
};
};
spi@54000 {
reg = <0xc0 0x40054000 0x00 0x130>;
compatible = "snps,dw-apb-ssi";
interrupts = <0x14 0x04>;
clocks = <0x33 0x0c>;
clock-names = "ssi_clk";
#address-cells = <0x00>;
#size-cells = <0x00>;
spi-slave;
num-cs = <0x02>;
dmas = <0x34 0x0f 0x34 0x0e>;
dma-names = "tx\0rx";
status = "disabled";
phandle = <0xb5>;
slave {
compatible = "spidev";
spi-max-frequency = <0xf4240>;
};
};
spi@58000 {
reg = <0xc0 0x40058000 0x00 0x130>;
compatible = "snps,dw-apb-ssi";
interrupts = <0x15 0x04>;
clocks = <0x33 0x0c>;
clock-names = "ssi_clk";
#address-cells = <0x01>;
#size-cells = <0x00>;
num-cs = <0x02>;
dmas = <0x34 0x11 0x34 0x10>;
dma-names = "tx\0rx";
status = "disabled";
phandle = <0xb6>;
};
spi@5c000 {
reg = <0xc0 0x4005c000 0x00 0x130>;
compatible = "snps,dw-apb-ssi";
interrupts = <0x16 0x04>;
clocks = <0x33 0x0c>;
clock-names = "ssi_clk";
#address-cells = <0x01>;
#size-cells = <0x00>;
num-cs = <0x02>;
dmas = <0x34 0x13 0x34 0x12>;
dma-names = "tx\0rx";
status = "disabled";
phandle = <0xb7>;
};
spi@60000 {
reg = <0xc0 0x40060000 0x00 0x130>;
compatible = "snps,dw-apb-ssi";
interrupts = <0x17 0x04>;
clocks = <0x33 0x0c>;
clock-names = "ssi_clk";
#address-cells = <0x00>;
#size-cells = <0x00>;
spi-slave;
dmas = <0x34 0x15 0x34 0x14>;
dma-names = "tx\0rx";
status = "disabled";
phandle = <0xb8>;
slave {
compatible = "spidev";
spi-max-frequency = <0xf4240>;
};
};
spi@64000 {
reg = <0xc0 0x40064000 0x00 0x130>;
compatible = "snps,dw-apb-qspi";
interrupts = <0x18 0x04>;
clocks = <0x33 0x0c>;
clock-names = "ssi_clk";
#address-cells = <0x01>;
#size-cells = <0x00>;
num-cs = <0x02>;
dmas = <0x34 0x17 0x34 0x16>;
dma-names = "tx\0rx";
status = "disabled";
phandle = <0xb9>;
};
spi@6c000 {
reg = <0xc0 0x4006c000 0x00 0x130>;
compatible = "snps,dw-apb-ssi";
interrupts = <0x37 0x04>;
clocks = <0x33 0x0c>;
clock-names = "ssi_clk";
#address-cells = <0x00>;
#size-cells = <0x00>;
num-cs = <0x01>;
dmas = <0x34 0x35 0x34 0x34>;
dma-names = "tx\0rx";
status = "disabled";
phandle = <0xba>;
};
i2c@70000 {
reg = <0xc0 0x40070000 0x00 0x1000>;
compatible = "snps,designware-i2c";
interrupts = <0x07 0x04>;
clocks = <0x33 0x0c>;
status = "disabled";
pinctrl-0 = <0x39>;
pinctrl-names = "default";
phandle = <0x5c>;
};
i2c@74000 {
reg = <0xc0 0x40074000 0x00 0x1000>;
compatible = "snps,designware-i2c";
interrupts = <0x08 0x04>;
clocks = <0x33 0x0c>;
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <0x3a>;
phandle = <0x5d>;
};
i2c@78000 {
reg = <0xc0 0x40078000 0x00 0x1000>;
compatible = "snps,designware-i2c";
interrupts = <0x09 0x04>;
clocks = <0x33 0x0c>;
status = "disabled";
phandle = <0xbb>;
};
i2c@7c000 {
reg = <0xc0 0x4007c000 0x00 0x1000>;
compatible = "snps,designware-i2c";
interrupts = <0x0a 0x04>;
clocks = <0x33 0x0c>;
status = "disabled";
phandle = <0xbc>;
};
i2c@80000 {
reg = <0xc0 0x40080000 0x00 0x1000>;
compatible = "snps,designware-i2c";
interrupts = <0x0b 0x04>;
clocks = <0x33 0x0c>;
status = "disabled";
pinctrl-0 = <0x3b>;
pinctrl-names = "default";
phandle = <0x5e>;
};
i2c@84000 {
reg = <0xc0 0x40084000 0x00 0x1000>;
compatible = "snps,designware-i2c";
interrupts = <0x0c 0x04>;
clocks = <0x33 0x0c>;
status = "disabled";
phandle = <0xbd>;
};
i2c@88000 {
reg = <0xc0 0x40088000 0x00 0x1000>;
compatible = "snps,designware-i2c";
interrupts = <0x0d 0x04>;
clocks = <0x33 0x0c>;
status = "disabled";
pinctrl-0 = <0x3c>;
pinctrl-names = "default";
phandle = <0x5f>;
};
pwm@98000 {
compatible = "raspberrypi,rp1-pwm";
reg = <0xc0 0x40098000 0x00 0x100>;
#pwm-cells = <0x03>;
clocks = <0x33 0x11>;
assigned-clocks = <0x33 0x11>;
assigned-clock-rates = <0x5dc000>;
status = "disabled";
phandle = <0xbe>;
};
pwm@9c000 {
compatible = "raspberrypi,rp1-pwm";
reg = <0xc0 0x4009c000 0x00 0x100>;
#pwm-cells = <0x03>;
clocks = <0x33 0x12>;
assigned-clocks = <0x33 0x12>;
assigned-clock-rates = <0x5dc000>;
status = "disabled";
pinctrl-0 = <0x3d>;
pinctrl-names = "default";
phandle = <0x59>;
};
i2s@a0000 {
reg = <0xc0 0x400a0000 0x00 0x1000>;
compatible = "snps,designware-i2s";
clocks = <0x33 0x15>;
clock-names = "i2sclk";
#sound-dai-cells = <0x00>;
dmas = <0x34 0x20 0x34 0x1f>;
dma-names = "tx\0rx";
status = "disabled";
pinctrl-names = "default";
pinctrl-0 = <0x3e>;
phandle = <0xbf>;
};
i2s@a4000 {
reg = <0xc0 0x400a4000 0x00 0x1000>;
compatible = "snps,designware-i2s";
clocks = <0x33 0x15>;
clock-names = "i2sclk";
#sound-dai-cells = <0x00>;
dmas = <0x34 0x22 0x34 0x21>;
dma-names = "tx\0rx";
status = "disabled";
pinctrl-names = "default";
pinctrl-0 = <0x3f>;
phandle = <0xc0>;
};
i2s@a8000 {
reg = <0xc0 0x400a8000 0x00 0x1000>;
compatible = "snps,designware-i2s";
clocks = <0x33 0x15>;
status = "disabled";
phandle = <0xc1>;
};
sdio_clk0@b0004 {
compatible = "raspberrypi,rp1-sdio-clk";
reg = <0xc0 0x400b0004 0x00 0x1c>;
clocks = <0x40 0x41>;
clock-names = "src\0base";
#clock-cells = <0x00>;
status = "disabled";
phandle = <0x47>;
};
sdio_clk1@b4004 {
compatible = "raspberrypi,rp1-sdio-clk";
reg = <0xc0 0x400b4004 0x00 0x1c>;
clocks = <0x40 0x41>;
clock-names = "src\0base";
#clock-cells = <0x00>;
status = "disabled";
phandle = <0x48>;
};
adc@c8000 {
compatible = "raspberrypi,rp1-adc";
reg = <0xc0 0x400c8000 0x00 0x4000>;
clocks = <0x33 0x1e>;
clock-names = "adcclk";
#clock-cells = <0x00>;
vref-supply = <0x42>;
status = "okay";
phandle = <0xc2>;
};
gpio@d0000 {
reg = <0xc0 0x400d0000 0x00 0xc000 0xc0 0x400e0000 0x00 0xc000 0xc0 0x400f0000 0x00 0xc000>;
compatible = "raspberrypi,rp1-gpio";
interrupts = <0x00 0x04 0x01 0x04 0x02 0x04>;
gpio-controller;
#gpio-cells = <0x02>;
interrupt-controller;
#interrupt-cells = <0x02>;
status = "okay";
gpio-line-names = "ID_SD\0ID_SC\0PIN3\0PIN5\0PIN7\0PIN29\0PIN31\0PIN26\0PIN24\0PIN21\0PIN19\0PIN23\0PIN32\0PIN33\0PIN8\0PIN10\0PIN36\0PIN11\0PIN12\0PIN35\0PIN38\0PIN40\0PIN15\0PIN16\0PIN18\0PIN22\0PIN37\0PIN13\0PCIE_RP1_WAKE\0FAN_TACH\0HOST_SDA\0HOST_SCL\0ETH_RST_N\0-\0CD0_IO0_MICCLK\0CD0_IO0_MICDAT0\0RP1_PCIE_CLKREQ_N\0-\0CD0_SDA\0CD0_SCL\0CD1_SDA\0CD1_SCL\0USB_VBUS_EN\0USB_OC_N\0RP1_STAT_LED\0FAN_PWM\0CD1_IO0_MICCLK\02712_WAKE\0CD1_IO1_MICDAT1\0EN_MAX_USB_CUR\0-\0-\0-\0-";
phandle = <0x38>;
rp1_uart0_14_15 {
phandle = <0x35>;
pin_txd {
function = "uart0";
pins = "gpio14";
bias-disable;
};
pin_rxd {
function = "uart0";
pins = "gpio15";
bias-pull-up;
};
};
rp1_uart0_ctsrts_16_17 {
phandle = <0xc3>;
pin_cts {
function = "uart0";
pins = "gpio16";
bias-pull-up;
};
pin_rts {
function = "uart0";
pins = "gpio17";
bias-disable;
};
};
rp1_uart1_0_1 {
phandle = <0xc4>;
pin_txd {
function = "uart1";
pins = "gpio0";
bias-disable;
};
pin_rxd {
function = "uart1";
pins = "gpio1";
bias-pull-up;
};
};
rp1_uart1_ctsrts_2_3 {
phandle = <0xc5>;
pin_cts {
function = "uart1";
pins = "gpio2";
bias-pull-up;
};
pin_rts {
function = "uart1";
pins = "gpio3";
bias-disable;
};
};
rp1_uart2_4_5 {
phandle = <0xc6>;
pin_txd {
function = "uart2";
pins = "gpio4";
bias-disable;
};
pin_rxd {
function = "uart2";
pins = "gpio5";
bias-pull-up;
};
};
rp1_uart2_ctsrts_6_7 {
phandle = <0xc7>;
pin_cts {
function = "uart2";
pins = "gpio6";
bias-pull-up;
};
pin_rts {
function = "uart2";
pins = "gpio7";
bias-disable;
};
};
rp1_uart3_8_9 {
phandle = <0xc8>;
pin_txd {
function = "uart3";
pins = "gpio8";
bias-disable;
};
pin_rxd {
function = "uart3";
pins = "gpio9";
bias-pull-up;
};
};
rp1_uart3_ctsrts_10_11 {
phandle = <0xc9>;
pin_cts {
function = "uart3";
pins = "gpio10";
bias-pull-up;
};
pin_rts {
function = "uart3";
pins = "gpio11";
bias-disable;
};
};
rp1_uart4_12_13 {
phandle = <0xca>;
pin_txd {
function = "uart4";
pins = "gpio12";
bias-disable;
};
pin_rxd {
function = "uart4";
pins = "gpio13";
bias-pull-up;
};
};
rp1_uart4_ctsrts_14_15 {
phandle = <0xcb>;
pin_cts {
function = "uart4";
pins = "gpio14";
bias-pull-up;
};
pin_rts {
function = "uart4";
pins = "gpio15";
bias-disable;
};
};
rp1_sdio0_22_27 {
phandle = <0xcc>;
pin_clk {
function = "sd0";
pins = "gpio22";
bias-disable;
drive-strength = <0x0c>;
slew-rate = <0x01>;
};
pin_cmd {
function = "sd0";
pins = "gpio23";
bias-pull-up;
drive-strength = <0x0c>;
slew-rate = <0x01>;
};
pins_dat {
function = "sd0";
pins = "gpio24\0gpio25\0gpio26\0gpio27";
bias-pull-up;
drive-strength = <0x0c>;
slew-rate = <0x01>;
};
};
rp1_sdio1_28_33 {
phandle = <0xcd>;
pin_clk {
function = "sd1";
pins = "gpio28";
bias-disable;
drive-strength = <0x0c>;
slew-rate = <0x01>;
};
pin_cmd {
function = "sd1";
pins = "gpio29";
bias-pull-up;
drive-strength = <0x0c>;
slew-rate = <0x01>;
};
pins_dat {
function = "sd1";
pins = "gpio30\0gpio31\0gpio32\0gpio33";
bias-pull-up;
drive-strength = <0x0c>;
slew-rate = <0x01>;
};
};
rp1_i2s0_18_21 {
function = "i2s0";
pins = "gpio18\0gpio19\0gpio20\0gpio21";
bias-disable;
phandle = <0x3e>;
};
rp1_i2s1_18_21 {
function = "i2s1";
pins = "gpio18\0gpio19\0gpio20\0gpio21";
bias-disable;
phandle = <0x3f>;
};
rp1_i2c4_34_35 {
function = "i2c4";
pins = "gpio34\0gpio35";
bias-pull-up;
phandle = <0xce>;
};
rp1_i2c6_38_39 {
function = "i2c6";
pins = "gpio38\0gpio39";
bias-pull-up;
phandle = <0x3c>;
};
rp1_i2c4_40_41 {
function = "i2c4";
pins = "gpio40\0gpio41";
bias-pull-up;
phandle = <0x3b>;
};
rp1_i2c5_44_45 {
function = "i2c5";
pins = "gpio44\0gpio45";
bias-pull-up;
phandle = <0xcf>;
};
rp1_i2c0_0_1 {
function = "i2c0";
pins = "gpio0\0gpio1";
bias-pull-up;
phandle = <0x39>;
};
rp1_i2c0_8_9 {
function = "i2c0";
pins = "gpio8\0gpio9";
bias-pull-up;
phandle = <0xd0>;
};
rp1_i2c1_2_3 {
function = "i2c1";
pins = "gpio2\0gpio3";
bias-pull-up;
phandle = <0x3a>;
};
rp1_i2c1_10_11 {
function = "i2c1";
pins = "gpio10\0gpio11";
bias-pull-up;
phandle = <0xd1>;
};
rp1_i2c2_4_5 {
function = "i2c2";
pins = "gpio4\0gpio5";
bias-pull-up;
phandle = <0xd2>;
};
rp1_i2c2_12_13 {
function = "i2c2";
pins = "gpio12\0gpio13";
bias-pull-up;
phandle = <0xd3>;
};
rp1_i2c3_6_7 {
function = "i2c3";
pins = "gpio6\0gpio7";
bias-pull-up;
phandle = <0xd4>;
};
rp1_i2c3_14_15 {
function = "i2c3";
pins = "gpio14\0gpio15";
bias-pull-up;
phandle = <0xd5>;
};
rp1_dpi_16bit_gpio2 {
function = "dpi";
pins = "gpio2\0gpio3\0gpio4\0gpio5\0gpio6\0gpio7\0gpio8\0gpio9\0gpio10\0gpio11\0gpio12\0gpio13\0gpio14\0gpio15\0gpio16\0gpio17\0gpio18\0gpio19";
bias-disable;
phandle = <0xd6>;
};
rp1_dpi_16bit_cpadhi_gpio2 {
function = "dpi";
pins = "gpio2\0gpio3\0gpio4\0gpio5\0gpio6\0gpio7\0gpio8\0gpio12\0gpio13\0gpio14\0gpio15\0gpio16\0gpio17\0gpio20\0gpio21\0gpio22\0gpio23\0gpio24";
bias-disable;
phandle = <0xd7>;
};
rp1_dpi_16bit_pad666_gpio2 {
function = "dpi";
pins = "gpio2\0gpio3\0gpio5\0gpio6\0gpio7\0gpio8\0gpio9\0gpio12\0gpio13\0gpio14\0gpio15\0gpio16\0gpio17\0gpio21\0gpio22\0gpio23\0gpio24\0gpio25";
bias-disable;
phandle = <0xd8>;
};
rp1_dpi_18bit_gpio2 {
function = "dpi";
pins = "gpio2\0gpio3\0gpio4\0gpio5\0gpio6\0gpio7\0gpio8\0gpio9\0gpio10\0gpio11\0gpio12\0gpio13\0gpio14\0gpio15\0gpio16\0gpio17\0gpio18\0gpio19\0gpio20\0gpio21";
bias-disable;
phandle = <0xd9>;
};
rp1_dpi_18bit_cpadhi_gpio2 {
function = "dpi";
pins = "gpio2\0gpio3\0gpio4\0gpio5\0gpio6\0gpio7\0gpio8\0gpio9\0gpio12\0gpio13\0gpio14\0gpio15\0gpio16\0gpio17\0gpio20\0gpio21\0gpio22\0gpio23\0gpio24\0gpio25";
bias-disable;
phandle = <0xda>;
};
rp1_dpi_24bit_gpio2 {
function = "dpi";
pins = "gpio2\0gpio3\0gpio4\0gpio5\0gpio6\0gpio7\0gpio8\0gpio9\0gpio10\0gpio11\0gpio12\0gpio13\0gpio14\0gpio15\0gpio16\0gpio17\0gpio18\0gpio19\0gpio20\0gpio21\0gpio22\0gpio23\0gpio24\0gpio25\0gpio26\0gpio27";
bias-disable;
phandle = <0xdb>;
};
rp1_dpi_hvsync {
function = "dpi";
pins = "gpio2\0gpio3";
bias-disable;
phandle = <0xdc>;
};
rp1_dpi_16bit_gpio0 {
function = "dpi";
pins = "gpio0\0gpio1\0gpio2\0gpio3\0gpio4\0gpio5\0gpio6\0gpio7\0gpio8\0gpio9\0gpio10\0gpio11\0gpio12\0gpio13\0gpio14\0gpio15\0gpio16\0gpio17\0gpio18\0gpio19";
bias-disable;
phandle = <0xdd>;
};
rp1_dpi_16bit_cpadhi_gpio0 {
function = "dpi";
pins = "gpio0\0gpio1\0gpio2\0gpio3\0gpio4\0gpio5\0gpio6\0gpio7\0gpio8\0gpio12\0gpio13\0gpio14\0gpio15\0gpio16\0gpio17\0gpio20\0gpio21\0gpio22\0gpio23\0gpio24";
bias-disable;
phandle = <0xde>;
};
rp1_dpi_16bit_pad666_gpio0 {
function = "dpi";
pins = "gpio0\0gpio1\0gpio2\0gpio3\0gpio5\0gpio6\0gpio7\0gpio8\0gpio9\0gpio12\0gpio13\0gpio14\0gpio15\0gpio16\0gpio17\0gpio21\0gpio22\0gpio23\0gpio24\0gpio25";
bias-disable;
phandle = <0xdf>;
};
rp1_dpi_18bit_gpio0 {
function = "dpi";
pins = "gpio0\0gpio1\0gpio2\0gpio3\0gpio4\0gpio5\0gpio6\0gpio7\0gpio8\0gpio9\0gpio10\0gpio11\0gpio12\0gpio13\0gpio14\0gpio15\0gpio16\0gpio17\0gpio18\0gpio19\0gpio20\0gpio21";
bias-disable;
phandle = <0xe0>;
};
rp1_dpi_18bit_cpadhi_gpio0 {
function = "dpi";
pins = "gpio0\0gpio1\0gpio2\0gpio3\0gpio4\0gpio5\0gpio6\0gpio7\0gpio8\0gpio9\0gpio12\0gpio13\0gpio14\0gpio15\0gpio16\0gpio17\0gpio20\0gpio21\0gpio22\0gpio23\0gpio24\0gpio25";
bias-disable;
phandle = <0xe1>;
};
rp1_dpi_24bit_gpio0 {
function = "dpi";
pins = "gpio0\0gpio1\0gpio2\0gpio3\0gpio4\0gpio5\0gpio6\0gpio7\0gpio8\0gpio9\0gpio10\0gpio11\0gpio12\0gpio13\0gpio14\0gpio15\0gpio16\0gpio17\0gpio18\0gpio19\0gpio20\0gpio21\0gpio22\0gpio23\0gpio24\0gpio25\0gpio26\0gpio27";
bias-disable;
phandle = <0xe2>;
};
rp1_pwm1_gpio45 {
function = "pwm1";
pins = "gpio45";
bias-pull-down;
phandle = <0x3d>;
};
rp1_spi0_gpio9 {
function = "spi0";
pins = "gpio9\0gpio10\0gpio11";
bias-disable;
drive-strength = <0x0c>;
slew-rate = <0x01>;
phandle = <0x36>;
};
rp1_spi0_cs_gpio7 {
function = "spi0";
pins = "gpio7\0gpio8";
bias-pull-up;
phandle = <0x37>;
};
rp1_spi8_gpio49 {
function = "spi8";
pins = "gpio49\0gpio50\0gpio51";
bias-disable;
drive-strength = <0x0c>;
slew-rate = <0x01>;
phandle = <0xe3>;
};
rp1_spi8_cs_gpio52 {
function = "spi0";
pins = "gpio52\0gpio53";
bias-pull-up;
phandle = <0xe4>;
};
usb_vbus_pins {
function = "vbus1";
pins = "gpio42\0gpio43";
phandle = <0x49>;
};
};
ethernet@100000 {
reg = <0xc0 0x40100000 0x00 0x4000>;
compatible = "cdns,macb";
#address-cells = <0x01>;
#size-cells = <0x00>;
interrupts = <0x06 0x04>;
clocks = <0x43 0x44 0x33 0x1d>;
clock-names = "pclk\0hclk\0tsu_clk";
phy-mode = "rgmii-id";
cdns,aw2w-max-pipe = [08];
cdns,ar2r-max-pipe = [08];
cdns,use-aw2b-fill;
local-mac-address = [d8 3a dd 79 fe f9];
status = "okay";
phy-handle = <0x45>;
phy-reset-gpios = <0x38 0x20 0x01>;
phy-reset-duration = <0x05>;
phandle = <0xe5>;
ethernet-phy@1 {
reg = <0x01>;
brcm,powerdown-enable;
phandle = <0x45>;
};
};
csi@110000 {
compatible = "raspberrypi,rp1-cfe";
reg = <0xc0 0x40110000 0x00 0x100 0xc0 0x40114000 0x00 0x100 0xc0 0x40120000 0x00 0x100 0xc0 0x40124000 0x00 0x1000>;
interrupts = <0x2f 0x04>;
clocks = <0x33 0x16>;
assigned-clocks = <0x33 0x16>;
assigned-clock-rates = <0x17d7840>;
#address-cells = <0x01>;
#size-cells = <0x00>;
status = "disabled";
iommus = <0x46>;
phandle = <0xe6>;
};
csi@128000 {
compatible = "raspberrypi,rp1-cfe";
reg = <0xc0 0x40128000 0x00 0x100 0xc0 0x4012c000 0x00 0x100 0xc0 0x40138000 0x00 0x100 0xc0 0x4013c000 0x00 0x1000>;
interrupts = <0x30 0x04>;
clocks = <0x33 0x17>;
assigned-clocks = <0x33 0x17>;
assigned-clock-rates = <0x17d7840>;
#address-cells = <0x01>;
#size-cells = <0x00>;
status = "disabled";
iommus = <0x46>;
phandle = <0xe7>;
};
mmc@180000 {
reg = <0xc0 0x40180000 0x00 0x100>;
compatible = "snps,dwcmshc-sdhci";
interrupts = <0x11 0x04>;
clocks = <0x33 0x0c 0x41 0x33 0x1f 0x47>;
clock-names = "bus\0core\0timeout\0sdio";
no-1-8-v;
bus-width = <0x04>;
vmmc-supply = <0x42>;
broken-cd;
status = "disabled";
phandle = <0xe8>;
};
mmc@184000 {
reg = <0xc0 0x40184000 0x00 0x100>;
compatible = "snps,dwcmshc-sdhci";
interrupts = <0x12 0x04>;
clocks = <0x33 0x0c 0x41 0x33 0x1f 0x48>;
clock-names = "bus\0core\0timeout\0sdio";
bus-width = <0x04>;
vmmc-supply = <0x42>;
sdhci-caps-mask = <0x03 0x00>;
broken-cd;
status = "disabled";
phandle = <0xe9>;
};
dma@188000 {
reg = <0xc0 0x40188000 0x00 0x1000>;
compatible = "snps,axi-dma-1.01a";
interrupts = <0x28 0x04>;
clocks = <0x41 0x33 0x0c>;
clock-names = "core-clk\0cfgr-clk";
#dma-cells = <0x01>;
dma-channels = <0x08>;
snps,dma-masters = <0x01>;
snps,dma-targets = <0x40>;
snps,data-width = <0x04>;
snps,block-size = <0x40000 0x40000 0x40000 0x40000 0x40000 0x40000 0x40000 0x40000>;
snps,priority = <0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07>;
snps,axi-max-burst-len = <0x08>;
status = "okay";
phandle = <0x34>;
};
usb@200000 {
reg = <0xc0 0x40200000 0x00 0x100000>;
compatible = "snps,dwc3";
dr_mode = "host";
usb3-lpm-capable;
snps,axi-pipe-limit = [08];
snps,dis_rxdet_inp3_quirk;
snps,tx-max-burst-prd = <0x08>;
snps,tx-thr-num-pkt-prd = <0x02>;
interrupts = <0x1f 0x01>;
status = "okay";
pinctrl-0 = <0x49>;
pinctrl-names = "default";
phandle = <0xea>;
};
usb@300000 {
reg = <0xc0 0x40300000 0x00 0x100000>;
compatible = "snps,dwc3";
dr_mode = "host";
usb3-lpm-capable;
snps,axi-pipe-limit = [08];
snps,dis_rxdet_inp3_quirk;
snps,tx-max-burst-prd = <0x08>;
snps,tx-thr-num-pkt-prd = <0x02>;
interrupts = <0x24 0x01>;
status = "okay";
phandle = <0xeb>;
};
dsi@110000 {
compatible = "raspberrypi,rp1dsi";
status = "disabled";
reg = <0xc0 0x40118000 0x00 0x1000 0xc0 0x4011c000 0x00 0x1000 0xc0 0x40120000 0x00 0x1000>;
interrupts = <0x2f 0x04>;
clocks = <0x33 0x16 0x33 0x29 0x4a 0x32>;
clock-names = "cfgclk\0dpiclk\0byteclk\0refclk";
assigned-clocks = <0x33 0x16 0x33 0x29>;
assigned-clock-rates = <0x17d7840>;
assigned-clock-parents = <0x00 0x4a>;
iommus = <0x46>;
phandle = <0xec>;
};
dsi@128000 {
compatible = "raspberrypi,rp1dsi";
status = "disabled";
reg = <0xc0 0x40130000 0x00 0x1000 0xc0 0x40134000 0x00 0x1000 0xc0 0x40138000 0x00 0x1000>;
interrupts = <0x30 0x04>;
clocks = <0x33 0x17 0x33 0x2a 0x4b 0x32>;
clock-names = "cfgclk\0dpiclk\0byteclk\0refclk";
assigned-clocks = <0x33 0x17 0x33 0x2a>;
assigned-clock-rates = <0x17d7840>;
assigned-clock-parents = <0x00 0x4b>;
iommus = <0x46>;
phandle = <0xed>;
};
vec@144000 {
compatible = "raspberrypi,rp1vec";
status = "disabled";
reg = <0xc0 0x40144000 0x00 0x1000 0xc0 0x40140000 0x00 0x1000>;
interrupts = <0x31 0x04>;
clocks = <0x33 0x27>;
assigned-clocks = <0x33 0x02 0x33 0x0b 0x33 0x27>;
assigned-clock-rates = <0x46cf7100 0x66ff300 0x66ff300>;
assigned-clock-parents = <0x00 0x33 0x02 0x33 0x0b>;
iommus = <0x46>;
phandle = <0xee>;
};
dpi@148000 {
compatible = "raspberrypi,rp1dpi";
status = "disabled";
reg = <0xc0 0x40148000 0x00 0x1000 0xc0 0x40140000 0x00 0x1000>;
interrupts = <0x31 0x04>;
clocks = <0x33 0x28 0x33 0x05 0x33 0x02>;
clock-names = "dpiclk\0plldiv\0pllcore";
assigned-clocks = <0x33 0x28>;
assigned-clock-parents = <0x33 0x05>;
iommus = <0x46>;
phandle = <0xef>;
};
gpiomem@d0000 {
compatible = "raspberrypi,gpiomem";
reg = <0xc0 0x400d0000 0x00 0x30000>;
chardev-name = "gpiomem0";
};
};
};
msi-controller@130000 {
compatible = "brcm,bcm2712-mip-intc";
reg = <0x10 0x130000 0x00 0xc0>;
msi-controller;
interrupt-controller;
#interrupt-cells = <0x02>;
brcm,msi-base-spi = <0x80>;
brcm,msi-num-spis = <0x40>;
brcm,msi-offset = <0x00>;
brcm,msi-pci-addr = <0xff 0xfffff000>;
phandle = <0x30>;
};
msi-controller@131000 {
compatible = "brcm,bcm2712-mip-intc";
reg = <0x10 0x131000 0x00 0xc0>;
msi-controller;
interrupt-controller;
#interrupt-cells = <0x02>;
brcm,msi-base-spi = <0xf7>;
brcm,msi-num-spis = <0x08>;
brcm,msi-offset = <0x08>;
brcm,msi-pci-addr = <0xff 0xffffe000>;
phandle = <0x2f>;
};
ethernet@1300000 {
compatible = "brcm,bcm2711-genet-v5";
reg = <0x10 0x1300000 0x00 0x20010>;
#address-cells = <0x01>;
#size-cells = <0x00>;
interrupts = <0x00 0x109 0x04 0x00 0x10a 0x04>;
status = "disabled";
phy-mode = "rgmii";
fixed-link = <0x00 0x01 0x3e8 0x00 0x00>;
phy-speed = <0x3e8>;
phy-id = <0x101>;
phy-type = <0x06>;
local-mac-address = [00 10 18 d8 45 de];
device_type = "network";
phandle = <0xf0>;
mdio@e14 {
compatible = "brcm,genet-mdio-v5";
reg = <0xe14 0x08>;
#address-cells = <0x01>;
#size-cells = <0x00>;
phandle = <0xf1>;
};
};
syscon@400018 {
compatible = "brcm,syscon-piarbctl\0syscon\0simple-mfd";
reg = <0x10 0x400018 0x00 0x18>;
phandle = <0xf2>;
};
codec@800000 {
compatible = "raspberrypi,rpivid-vid-decoder";
reg = <0x10 0x800000 0x00 0x10000 0x10 0x840000 0x00 0x1000>;
reg-names = "hevc\0intc";
interrupts = <0x00 0x62 0x04>;
clocks = <0x0a 0x0b>;
clock-names = "hevc";
status = "okay";
phandle = <0xf3>;
};
mmc@fff000 {
compatible = "brcm,bcm2712-sdhci";
reg = <0x10 0xfff000 0x00 0x260 0x10 0xfff400 0x00 0x200 0x10 0x15040b0 0x00 0x04 0x10 0x15200f0 0x00 0x24>;
reg-names = "host\0cfg\0busisol\0lcpll";
interrupts = <0x00 0x111 0x04>;
clocks = <0x4c>;
sdhci-caps-mask = <0xc000 0x00>;
sdhci-caps = <0x00 0x00>;
supports-cqe;
mmc-ddr-3_3v;
pinctrl-0 = <0x4d 0x4e>;
pinctrl-names = "default";
vqmmc-supply = <0x4f>;
vmmc-supply = <0x50>;
bus-width = <0x04>;
sd-uhs-sdr50;
sd-uhs-ddr50;
sd-uhs-sdr104;
status = "okay";
phandle = <0xf4>;
};
mmc@1100000 {
compatible = "brcm,bcm2712-sdhci";
reg = <0x10 0x1100000 0x00 0x260 0x10 0x1100400 0x00 0x200>;
reg-names = "host\0cfg";
interrupts = <0x00 0x112 0x04>;
clocks = <0x4c>;
sdhci-caps-mask = <0xc000 0x00>;
sdhci-caps = <0x00 0x00>;
supports-cqe;
mmc-ddr-3_3v;
status = "okay";
pinctrl-0 = <0x51>;
pinctrl-names = "default";
bus-width = <0x04>;
vmmc-supply = <0x52>;
sd-uhs-ddr50;
non-removable;
#address-cells = <0x01>;
#size-cells = <0x00>;
phandle = <0xf5>;
wifi@1 {
reg = <0x01>;
compatible = "brcm,bcm4329-fmac";
local-mac-address = [d8 3a dd 79 fe fa];
phandle = <0x63>;
};
};
mmc@1108000 {
compatible = "brcm,bcm2711-emmc2";
reg = <0x10 0x1108000 0x00 0x100>;
interrupts = <0x00 0x110 0x04>;
clocks = <0x4c>;
mmc-ddr-3_3v;
status = "disabled";
phandle = <0xf6>;
};
reset-controller@1504318 {
compatible = "brcm,brcmstb-reset";
reg = <0x10 0x1504318 0x00 0x30>;
#reset-cells = <0x01>;
phandle = <0x2c>;
};
v3d@2000000 {
compatible = "brcm,2712-v3d";
reg = <0x10 0x2000000 0x00 0x4000 0x10 0x2008000 0x00 0x6000>;
reg-names = "hub\0core0";
power-domains = <0x53 0x01>;
resets = <0x53 0x00>;
clocks = <0x0a 0x05>;
clocks-names = "v3d";
interrupts = <0x00 0xfa 0x04 0x00 0xf9 0x04>;
status = "okay";
phandle = <0xf7>;
};
interrupt-controller@7fff9000 {
interrupt-controller;
#interrupt-cells = <0x03>;
compatible = "arm,gic-400";
reg = <0x10 0x7fff9000 0x00 0x1000 0x10 0x7fffa000 0x00 0x2000 0x10 0x7fffc000 0x00 0x2000 0x10 0x7fffe000 0x00 0x2000>;
interrupts = <0x01 0x09 0xf04>;
phandle = <0x01>;
};
pisp_be@880000 {
compatible = "raspberrypi,pispbe";
reg = <0x10 0x880000 0x00 0x4000>;
interrupts = <0x00 0x48 0x04>;
clocks = <0x0a 0x07>;
clocks-names = "isp_be";
status = "okay";
iommus = <0x54>;
phandle = <0xf8>;
};
};
clocks {
phandle = <0xf9>;
clk-osc {
compatible = "fixed-clock";
#clock-cells = <0x00>;
clock-output-names = "osc";
clock-frequency = <0x337f980>;
phandle = <0x17>;
};
clk-usb {
compatible = "fixed-clock";
#clock-cells = <0x00>;
clock-output-names = "otg";
clock-frequency = <0x1c9c3800>;
phandle = <0x0d>;
};
clk_vpu {
#clock-cells = <0x00>;
compatible = "fixed-clock";
clock-frequency = <0x2cb41780>;
clock-output-names = "vpu-clock";
phandle = <0x12>;
};
clk_uart {
#clock-cells = <0x00>;
compatible = "fixed-clock";
clock-frequency = <0x2a30000>;
clock-output-names = "uart-clock";
phandle = <0x11>;
};
clk_emmc2 {
#clock-cells = <0x00>;
compatible = "fixed-clock";
clock-frequency = <0x337f980>;
clock-output-names = "emmc2-clock";
phandle = <0x4c>;
};
clk_xosc {
compatible = "fixed-clock";
#clock-cells = <0x00>;
clock-output-names = "xosc";
clock-frequency = <0x2faf080>;
phandle = <0x32>;
};
macb_pclk {
compatible = "fixed-clock";
#clock-cells = <0x00>;
clock-output-names = "pclk";
clock-frequency = <0xbebc200>;
phandle = <0x43>;
};
macb_hclk {
compatible = "fixed-clock";
#clock-cells = <0x00>;
clock-output-names = "hclk";
clock-frequency = <0xbebc200>;
phandle = <0x44>;
};
sdio_src {
compatible = "fixed-clock";
#clock-cells = <0x00>;
clock-output-names = "src";
clock-frequency = <0x3b9aca00>;
phandle = <0x40>;
};
sdhci_core {
compatible = "fixed-clock";
#clock-cells = <0x00>;
clock-output-names = "core";
clock-frequency = <0x2faf080>;
phandle = <0x41>;
};
clksrc_mipi0_dsi_byteclk {
compatible = "fixed-clock";
#clock-cells = <0x00>;
clock-output-names = "clksrc_mipi0_dsi_byteclk";
clock-frequency = <0x44aa200>;
phandle = <0x4a>;
};
clksrc_mipi1_dsi_byteclk {
compatible = "fixed-clock";
#clock-cells = <0x00>;
clock-output-names = "clksrc_mipi1_dsi_byteclk";
clock-frequency = <0x44aa200>;
phandle = <0x4b>;
};
};
phy {
compatible = "usb-nop-xceiv";
#phy-cells = <0x00>;
phandle = <0x0e>;
};
memory@0 {
device_type = "memory";
reg = <0x00 0x00 0x3f800000 0x00 0x40000000 0xc0000000 0x01 0x00 0x80000000 0x01 0x80000000 0x80000000>;
};
leds {
compatible = "gpio-leds";
phandle = <0xfa>;
led-pwr {
label = "PWR";
gpios = <0x38 0x2c 0x01>;
default-state = "off";
linux,default-trigger = "none";
phandle = <0x65>;
};
led-act {
label = "ACT";
gpios = <0x55 0x09 0x01>;
default-state = "off";
linux,default-trigger = "mmc0";
phandle = <0x64>;
};
};
sd_io_1v8_reg {
compatible = "regulator-gpio";
regulator-name = "vdd-sd-io";
regulator-min-microvolt = <0x1b7740>;
regulator-max-microvolt = <0x325aa0>;
regulator-boot-on;
regulator-always-on;
regulator-settling-time-us = <0x1388>;
gpios = <0x55 0x03 0x00>;
states = <0x1b7740 0x01 0x325aa0 0x00>;
status = "okay";
phandle = <0x4f>;
};
sd_vcc_reg {
compatible = "regulator-fixed";
regulator-name = "vcc-sd";
regulator-min-microvolt = <0x325aa0>;
regulator-max-microvolt = <0x325aa0>;
regulator-boot-on;
enable-active-high;
gpios = <0x55 0x04 0x00>;
status = "okay";
phandle = <0x50>;
};
wl_on_reg {
compatible = "regulator-fixed";
regulator-name = "wl-on-regulator";
regulator-min-microvolt = <0x325aa0>;
regulator-max-microvolt = <0x325aa0>;
pinctrl-0 = <0x56>;
pinctrl-names = "default";
gpio = <0x13 0x1c 0x00>;
startup-delay-us = <0x249f0>;
enable-active-high;
phandle = <0x52>;
};
cam1_clk {
compatible = "fixed-clock";
#clock-cells = <0x00>;
status = "disabled";
phandle = <0xfb>;
};
cam0_clk {
compatible = "fixed-clock";
#clock-cells = <0x00>;
status = "disabled";
phandle = <0xfc>;
};
cam0_reg {
compatible = "regulator-fixed";
regulator-name = "cam0_reg";
enable-active-high;
status = "okay";
gpio = <0x38 0x22 0x00>;
phandle = <0xfd>;
};
cam1_reg {
compatible = "regulator-fixed";
regulator-name = "cam1_reg";
enable-active-high;
status = "okay";
gpio = <0x38 0x2e 0x00>;
phandle = <0xfe>;
};
cam_dummy_reg {
compatible = "regulator-fixed";
regulator-name = "cam-dummy-reg";
status = "okay";
phandle = <0xff>;
};
dummy {
phandle = <0x100>;
};
rp1_vdd_3v3 {
compatible = "regulator-fixed";
regulator-name = "vdd-3v3";
regulator-min-microvolt = <0x325aa0>;
regulator-max-microvolt = <0x325aa0>;
regulator-always-on;
phandle = <0x42>;
};
__overrides__ {
arm_freq;
bdaddr = "\0\0\0Wlocal-bd-address[";
button_debounce = "\0\0\0Xdebounce-interval:0";
cooling_fan = [00 00 00 04 73 74 61 74 75 73 00 00 00 00 59 73 74 61 74 75 73 00];
uart0_console = "\0\0\0Zstatus\0\0\0\0[console=\0/axi/pcie@120000/rp1/serial@30000";
i2c0 = "\0\0\0\\status";
i2c1 = "\0\0\0]status";
i2c = "\0\0\0]status";
i2c_arm = "\0\0\0]status";
i2c_vc = "\0\0\0\\status";
i2c_csi_dsi = "\0\0\0^status";
i2c_csi_dsi0 = "\0\0\0_status";
i2c_csi_dsi1 = "\0\0\0^status";
i2c0_baudrate = "\0\0\0\\clock-frequency:0";
i2c1_baudrate = "\0\0\0]clock-frequency:0";
i2c_baudrate = "\0\0\0]clock-frequency:0";
i2c_arm_baudrate = "\0\0\0]clock-frequency:0";
i2c_vc_baudrate = "\0\0\0\\clock-frequency:0";
nvme = "\0\0\0`status";
pciex1 = "\0\0\0`status";
pciex1_gen = "\0\0\0`max-link-speed:0";
pciex1_no_l0s = "\0\0\0`aspm-no-l0s?";
random = "\0\0\0astatus";
spi = "\0\0\0bstatus";
suspend = "\0\0\0Xlinux,code:0=205";
uart0 = "\0\0\0Zstatus";
wifiaddr = "\0\0\0clocal-mac-address[";
act_led_activelow = "\0\0\0dactive-low?";
act_led_trigger = "\0\0\0dlinux,default-trigger";
pwr_led_activelow = "\0\0\0egpios:8";
pwr_led_trigger = "\0\0\0elinux,default-trigger";
};
chosen {
linux,initrd-end = <0x2efffe5f>;
linux,initrd-start = <0x2dfac000>;
ranges;
#size-cells = <0x01>;
#address-cells = <0x01>;
compatible = "simple_bus";
kaslr-seed = <0x00 0x00>;
rpi-duid = "0000911040936405";
os_prefix = [00];
overlay_prefix = "overlays/";
rpi-boardrev-ext = <0x00>;
log = <0x3ff16000 0x80000>;
bootargs = "coherent_pool=1M 8250.nr_uarts=1 snd_bcm2835.enable_compat_alsa=0 snd_bcm2835.enable_hdmi=1 smsc95xx.macaddr=D8:3A:DD:79:FE:F9 vc_mem.mem_base=0x3fc00000 vc_mem.mem_size=0x40000000 console=ttyAMA10,115200 console=tty1 root=PARTUUID=f3db7192-02 rootfstype=ext4 fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles cfg80211.ieee80211_regdom=GB";
stdout-path = "serial10:115200n8";
phandle = <0x101>;
framebuffer@3f800000 {
status = "okay";
compatible = "simple-framebuffer";
format = "r5g6b5";
stride = <0xf00>;
height = <0x438>;
width = <0x780>;
reg = <0x3f800000 0x3f4800>;
};
bootloader {
boot-mode = <0x01>;
version = "3094eda5aadf2c719edd2c68d1900884abc3dbca";
capabilities = <0x7f>;
update-timestamp = <0x650dab16>;
build-timestamp = <0x650c7643>;
tryboot = <0x00>;
rsts = <0x00>;
partition = <0x00>;
};
power {
usb_max_current_enable = <0x00>;
usb_over_current_detected = <0x00>;
usbpd_power_data_objects = <0x00 0x00 0x00 0x00 0x00 0x00 0x00>;
max_current = <0xbb8>;
power_reset = <0x00>;
};
};
cooling_fan {
status = "disabled";
compatible = "pwm-fan";
#cooling-cells = <0x02>;
cooling-min-state = <0x00>;
cooling-max-state = <0x03>;
cooling-levels = <0x00 0x4b 0x7d 0xaf 0xfa>;
pwms = <0x59 0x03 0xa25e 0x01>;
rpm-regmap = <0x59>;
rpm-offset = <0x3c>;
phandle = <0x04>;
};
pwr_button {
compatible = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <0x66>;
status = "okay";
pwr {
label = "pwr_button";
linux,code = <0x74>;
gpios = <0x13 0x14 0x01>;
debounce-interval = <0x32>;
phandle = <0x58>;
};
};
aliases {
display0 = "/chosen/framebuffer@3f800000";
blconfig = "/reserved-memory/nvram@0";
bluetooth = "/soc/serial@7d50c000/bluetooth";
console = "/soc/serial@7d001000";
ethernet0 = "/axi/pcie@120000/rp1/ethernet@100000";
wifi0 = "/axi/mmc@1100000/wifi@1";
fb = "/soc/fb";
mailbox = "/soc/mailbox@7c013880";
mmc0 = "/axi/mmc@fff000";
uart0 = "/axi/pcie@120000/rp1/serial@30000";
uart1 = "/axi/pcie@120000/rp1/serial@34000";
uart2 = "/axi/pcie@120000/rp1/serial@38000";
uart3 = "/axi/pcie@120000/rp1/serial@3c000";
uart4 = "/axi/pcie@120000/rp1/serial@40000";
uart10 = "/soc/serial@7d001000";
serial0 = "/axi/pcie@120000/rp1/serial@30000";
serial1 = "/axi/pcie@120000/rp1/serial@34000";
serial2 = "/axi/pcie@120000/rp1/serial@38000";
serial3 = "/axi/pcie@120000/rp1/serial@3c000";
serial4 = "/axi/pcie@120000/rp1/serial@40000";
serial10 = "/soc/serial@7d001000";
i2c = "/axi/pcie@120000/rp1/i2c@74000";
i2c0 = "/axi/pcie@120000/rp1/i2c@70000";
i2c1 = "/axi/pcie@120000/rp1/i2c@74000";
i2c2 = "/axi/pcie@120000/rp1/i2c@78000";
i2c3 = "/axi/pcie@120000/rp1/i2c@7c000";
i2c4 = "/axi/pcie@120000/rp1/i2c@80000";
i2c5 = "/axi/pcie@120000/rp1/i2c@84000";
i2c6 = "/axi/pcie@120000/rp1/i2c@88000";
i2c10 = "/soc/i2c@7d005600";
spi0 = "/axi/pcie@120000/rp1/spi@50000";
spi1 = "/axi/pcie@120000/rp1/spi@54000";
spi2 = "/axi/pcie@120000/rp1/spi@58000";
spi3 = "/axi/pcie@120000/rp1/spi@5c000";
spi4 = "/axi/pcie@120000/rp1/spi@60000";
spi5 = "/axi/pcie@120000/rp1/spi@64000";
spi10 = "/soc/spi@7d004000";
gpio0 = "/axi/pcie@120000/rp1/gpio@d0000";
gpio1 = "/soc/gpio@7d508500";
gpio2 = "/soc/gpio@7d517c00";
gpio3 = "/soc/pinctrl@7d504100";
gpio4 = "/soc/pinctrl@7d510700";
usb0 = "/axi/pcie@120000/rp1/usb@200000";
usb1 = "/axi/pcie@120000/rp1/usb@300000";
phandle = <0x5b>;
};
__symbols__ {
rmem = "/reserved-memory";
cma = "/reserved-memory/linux,cma";
blconfig = "/reserved-memory/nvram@0";
cpu_thermal = "/thermal-zones/cpu-thermal";
thermal_trips = "/thermal-zones/cpu-thermal/trips";
cpu_crit = "/thermal-zones/cpu-thermal/trips/cpu-crit";
cpu_tepid = "/thermal-zones/cpu-thermal/trips/cpu-tepid";
cpu_warm = "/thermal-zones/cpu-thermal/trips/cpu-warm";
cpu_hot = "/thermal-zones/cpu-thermal/trips/cpu-hot";
cpu_vhot = "/thermal-zones/cpu-thermal/trips/cpu-vhot";
cooling_maps = "/thermal-zones/cpu-thermal/cooling-maps";
clk_27MHz = "/clk-27M";
clk_108MHz = "/clk-108M";
hvs = "/hvs@107c580000";
soc = "/soc";
system_timer = "/soc/timer@7c003000";
firmwarekms = "/soc/firmwarekms@7d503000";
mailbox = "/soc/mailbox@7c013880";
pixelvalve0 = "/soc/pixelvalve@7c410000";
pixelvalve1 = "/soc/pixelvalve@7c411000";
usb = "/soc/usb@7c480000";
mop = "/soc/mop@7c500000";
moplet = "/soc/moplet@7c501000";
disp_intr = "/soc/interrupt-controller@7c502000";
dvp = "/soc/clock@7c700000";
local_intc = "/soc/local_intc@7cd00000";
uart10 = "/soc/serial@7d001000";
_uart0 = "/soc/serial@7d001000";
_uart2 = "/soc/serial@7d001400";
_uart3 = "/soc/serial@7d001600";
_uart4 = "/soc/serial@7d001800";
_uart5 = "/soc/serial@7d001a00";
sdhost = "/soc/mmc@7d002000";
_i2s = "/soc/_i2s@7d003000";
spi10 = "/soc/spi@7d004000";
_spi0 = "/soc/spi@7d004000";
spidev10 = "/soc/spi@7d004000/spidev@0";
_spi3 = "/soc/spi@7d004600";
_spi4 = "/soc/spi@7d004800";
_spi5 = "/soc/spi@7d004a00";
_spi6 = "/soc/spi@7d004c00";
_i2c0 = "/soc/i2c@7d005000";
i2c_rp1boot = "/soc/i2c@7d005600";
_i2c3 = "/soc/i2c@7d005600";
_i2c4 = "/soc/i2c@7d005800";
_i2c5 = "/soc/i2c@7d005a00";
_i2c6 = "/soc/i2c@7d005c00";
_i2c8 = "/soc/i2c@7d005e00";
_pwm0 = "/soc/pwm@7d00c000";
_pwm1 = "/soc/pwm@7d00c800";
pm = "/soc/watchdog@7d200000";
cprman = "/soc/cprman@7d202000";
random = "/soc/rng@7d208000";
cpu_l2_irq = "/soc/intc@7d503000";
pinctrl = "/soc/pinctrl@7d504100";
uarta_24_pins = "/soc/pinctrl@7d504100/uarta_24_pins";
sdio2_30_pins = "/soc/pinctrl@7d504100/sdio2_30_pins";
pwr_button_pins = "/soc/pinctrl@7d504100/pwr_button_pins";
wl_on_pins = "/soc/pinctrl@7d504100/wl_on_pins";
bt_shutdown_pins = "/soc/pinctrl@7d504100/bt_shutdown_pins";
emmc_sd_pulls = "/soc/pinctrl@7d504100/emmc_sd_pulls";
spi10_pins = "/soc/pinctrl@7d504100/spi10_gpio2";
spi10_gpio2 = "/soc/pinctrl@7d504100/spi10_gpio2";
spi10_cs_pins = "/soc/pinctrl@7d504100/spi10_cs_gpio1";
spi10_cs_gpio1 = "/soc/pinctrl@7d504100/spi10_cs_gpio1";
ddc0 = "/soc/i2c@7d508200";
ddc1 = "/soc/i2c@7d508280";
bscd = "/soc/i2c@7d508300";
bsc_irq = "/soc/intc@7d508380";
main_irq = "/soc/intc@7d508400";
gio = "/soc/gpio@7d508500";
uarta = "/soc/serial@7d50c000";
bluetooth = "/soc/serial@7d50c000/bluetooth";
uartb = "/soc/serial@7d50d000";
uartc = "/soc/serial@7d50e000";
aon_intr = "/soc/interrupt-controller@7d510600";
pinctrl_aon = "/soc/pinctrl@7d510700";
i2c3_m4_agpio0_pins = "/soc/pinctrl@7d510700/i2c3_m4_agpio0_pins";
bsc_m1_agpio13_pins = "/soc/pinctrl@7d510700/bsc_m1_agpio13_pins";
bsc_pmu_sgpio4_pins = "/soc/pinctrl@7d510700/bsc_pmu_sgpio4_pins";
bsc_m2_sgpio4_pins = "/soc/pinctrl@7d510700/bsc_m2_sgpio4_pins";
pwm_aon_agpio1_pins = "/soc/pinctrl@7d510700/pwm_aon_agpio1_pins";
pwm_aon_agpio4_pins = "/soc/pinctrl@7d510700/pwm_aon_agpio4_pins";
pwm_aon_agpio7_pins = "/soc/pinctrl@7d510700/pwm_aon_agpio7_pins";
emmc_aon_cd_pins = "/soc/pinctrl@7d510700/emmc_aon_cd_pins";
aon_pwm_1pin = "/soc/pinctrl@7d510700/aon_pwm_1pin";
bscc = "/soc/i2c@7d517a00";
pwm_aon = "/soc/pwm@7d517a80";
main_aon_irq = "/soc/intc@7d517ac0";
bsc_aon_irq = "/soc/intc@7d517b00";
gio_aon = "/soc/gpio@7d517c00";
avs_monitor = "/soc/avs-monitor@7d542000";
thermal = "/soc/avs-monitor@7d542000/thermal";
bsc_pmu = "/soc/i2c@7d544000";
hdmi0 = "/soc/hdmi@7ef00700";
hdmi1 = "/soc/hdmi@7ef05700";
sound = "/soc/sound";
firmware = "/soc/firmware";
firmware_clocks = "/soc/firmware/clocks";
reset = "/soc/firmware/reset";
vcio = "/soc/firmware/vcio";
power = "/soc/power";
fb = "/soc/fb";
rpi_rtc = "/soc/rpi_rtc";
vdd_3v3_reg = "/soc/fixedregulator_3v3";
vdd_5v0_reg = "/soc/fixedregulator_5v0";
cpus = "/cpus";
cpu0 = "/cpus/cpu@0";
cpu1 = "/cpus/cpu@1";
cpu2 = "/cpus/cpu@2";
cpu3 = "/cpus/cpu@3";
l2_cache = "/cpus/l2-cache";
l3_cache = "/cpus/l3-cache";
axi = "/axi";
vc4 = "/axi/gpu";
iommu2 = "/axi/iommu@5100";
iommu4 = "/axi/iommu@5200";
iommu5 = "/axi/iommu@5280";
iommuc = "/axi/iommuc@5b00";
dma32 = "/axi/dma@10000";
dma40 = "/axi/dma@10600";
pcie0 = "/axi/pcie@100000";
pciex1 = "/axi/pcie@110000";
pcie1 = "/axi/pcie@110000";
pcie_rescal = "/axi/reset-controller@119500";
pciex4 = "/axi/pcie@120000";
rp1_target = "/axi/pcie@120000";
pcie2 = "/axi/pcie@120000";
rp1 = "/axi/pcie@120000/rp1";
rp1_clocks = "/axi/pcie@120000/rp1/clocks@18000";
uart0 = "/axi/pcie@120000/rp1/serial@30000";
rp1_uart0 = "/axi/pcie@120000/rp1/serial@30000";
uart1 = "/axi/pcie@120000/rp1/serial@34000";
rp1_uart1 = "/axi/pcie@120000/rp1/serial@34000";
uart2 = "/axi/pcie@120000/rp1/serial@38000";
rp1_uart2 = "/axi/pcie@120000/rp1/serial@38000";
uart3 = "/axi/pcie@120000/rp1/serial@3c000";
rp1_uart3 = "/axi/pcie@120000/rp1/serial@3c000";
uart4 = "/axi/pcie@120000/rp1/serial@40000";
rp1_uart4 = "/axi/pcie@120000/rp1/serial@40000";
rp1_uart5 = "/axi/pcie@120000/rp1/serial@44000";
rp1_spi8 = "/axi/pcie@120000/rp1/spi@4c000";
spi0 = "/axi/pcie@120000/rp1/spi@50000";
rp1_spi0 = "/axi/pcie@120000/rp1/spi@50000";
spidev0 = "/axi/pcie@120000/rp1/spi@50000/spidev@0";
spidev1 = "/axi/pcie@120000/rp1/spi@50000/spidev@1";
spi1 = "/axi/pcie@120000/rp1/spi@54000";
rp1_spi1 = "/axi/pcie@120000/rp1/spi@54000";
spi2 = "/axi/pcie@120000/rp1/spi@58000";
rp1_spi2 = "/axi/pcie@120000/rp1/spi@58000";
spi3 = "/axi/pcie@120000/rp1/spi@5c000";
rp1_spi3 = "/axi/pcie@120000/rp1/spi@5c000";
spi4 = "/axi/pcie@120000/rp1/spi@60000";
rp1_spi4 = "/axi/pcie@120000/rp1/spi@60000";
spi5 = "/axi/pcie@120000/rp1/spi@64000";
rp1_spi5 = "/axi/pcie@120000/rp1/spi@64000";
rp1_spi7 = "/axi/pcie@120000/rp1/spi@6c000";
i2c_vc = "/axi/pcie@120000/rp1/i2c@70000";
i2c0 = "/axi/pcie@120000/rp1/i2c@70000";
rp1_i2c0 = "/axi/pcie@120000/rp1/i2c@70000";
i2c_arm = "/axi/pcie@120000/rp1/i2c@74000";
i2c1 = "/axi/pcie@120000/rp1/i2c@74000";
rp1_i2c1 = "/axi/pcie@120000/rp1/i2c@74000";
i2c2 = "/axi/pcie@120000/rp1/i2c@78000";
rp1_i2c2 = "/axi/pcie@120000/rp1/i2c@78000";
i2c3 = "/axi/pcie@120000/rp1/i2c@7c000";
rp1_i2c3 = "/axi/pcie@120000/rp1/i2c@7c000";
i2c_csi_dsi = "/axi/pcie@120000/rp1/i2c@80000";
i2c_csi_dsi1 = "/axi/pcie@120000/rp1/i2c@80000";
i2c4 = "/axi/pcie@120000/rp1/i2c@80000";
rp1_i2c4 = "/axi/pcie@120000/rp1/i2c@80000";
i2c5 = "/axi/pcie@120000/rp1/i2c@84000";
rp1_i2c5 = "/axi/pcie@120000/rp1/i2c@84000";
i2c_csi_dsi0 = "/axi/pcie@120000/rp1/i2c@88000";
i2c6 = "/axi/pcie@120000/rp1/i2c@88000";
rp1_i2c6 = "/axi/pcie@120000/rp1/i2c@88000";
pwm = "/axi/pcie@120000/rp1/pwm@98000";
pwm0 = "/axi/pcie@120000/rp1/pwm@98000";
rp1_pwm0 = "/axi/pcie@120000/rp1/pwm@98000";
pwm1 = "/axi/pcie@120000/rp1/pwm@9c000";
rp1_pwm1 = "/axi/pcie@120000/rp1/pwm@9c000";
i2s_clk_producer = "/axi/pcie@120000/rp1/i2s@a0000";
i2s = "/axi/pcie@120000/rp1/i2s@a0000";
rp1_i2s0 = "/axi/pcie@120000/rp1/i2s@a0000";
i2s_clk_consumer = "/axi/pcie@120000/rp1/i2s@a4000";
rp1_i2s1 = "/axi/pcie@120000/rp1/i2s@a4000";
rp1_i2s2 = "/axi/pcie@120000/rp1/i2s@a8000";
rp1_sdio_clk0 = "/axi/pcie@120000/rp1/sdio_clk0@b0004";
rp1_sdio_clk1 = "/axi/pcie@120000/rp1/sdio_clk1@b4004";
rp1_adc = "/axi/pcie@120000/rp1/adc@c8000";
i2c0mux = "/axi/pcie@120000/rp1/gpio@d0000";
i2c0if = "/axi/pcie@120000/rp1/gpio@d0000";
gpio = "/axi/pcie@120000/rp1/gpio@d0000";
rp1_gpio = "/axi/pcie@120000/rp1/gpio@d0000";
uart0_pins = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart0_14_15";
rp1_uart0_14_15 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart0_14_15";
uart0_ctsrts_pins = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart0_ctsrts_16_17";
rp1_uart0_ctsrts_16_17 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart0_ctsrts_16_17";
uart1_pins = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart1_0_1";
rp1_uart1_0_1 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart1_0_1";
uart1_ctsrts_pins = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart1_ctsrts_2_3";
rp1_uart1_ctsrts_2_3 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart1_ctsrts_2_3";
uart2_pins = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart2_4_5";
rp1_uart2_4_5 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart2_4_5";
uart2_ctsrts_pins = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart2_ctsrts_6_7";
rp1_uart2_ctsrts_6_7 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart2_ctsrts_6_7";
uart3_pins = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart3_8_9";
rp1_uart3_8_9 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart3_8_9";
uart3_ctsrts_pins = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart3_ctsrts_10_11";
rp1_uart3_ctsrts_10_11 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart3_ctsrts_10_11";
uart4_pins = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart4_12_13";
rp1_uart4_12_13 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart4_12_13";
uart4_ctsrts_pins = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart4_ctsrts_14_15";
rp1_uart4_ctsrts_14_15 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_uart4_ctsrts_14_15";
rp1_sdio0_22_27 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_sdio0_22_27";
rp1_sdio1_28_33 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_sdio1_28_33";
rp1_i2s0_18_21 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_i2s0_18_21";
rp1_i2s1_18_21 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_i2s1_18_21";
rp1_i2c4_34_35 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_i2c4_34_35";
rp1_i2c6_38_39 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_i2c6_38_39";
rp1_i2c4_40_41 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_i2c4_40_41";
rp1_i2c5_44_45 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_i2c5_44_45";
rp1_i2c0_0_1 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_i2c0_0_1";
rp1_i2c0_8_9 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_i2c0_8_9";
rp1_i2c1_2_3 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_i2c1_2_3";
rp1_i2c1_10_11 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_i2c1_10_11";
rp1_i2c2_4_5 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_i2c2_4_5";
rp1_i2c2_12_13 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_i2c2_12_13";
rp1_i2c3_6_7 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_i2c3_6_7";
rp1_i2c3_14_15 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_i2c3_14_15";
dpi_16bit_gpio2 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_16bit_gpio2";
rp1_dpi_16bit_gpio2 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_16bit_gpio2";
dpi_16bit_cpadhi_gpio2 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_16bit_cpadhi_gpio2";
rp1_dpi_16bit_cpadhi_gpio2 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_16bit_cpadhi_gpio2";
rp1_dpi_16bit_pad666_gpio2 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_16bit_pad666_gpio2";
dpi_18bit_gpio2 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_18bit_gpio2";
rp1_dpi_18bit_gpio2 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_18bit_gpio2";
dpi_18bit_cpadhi_gpio2 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_18bit_cpadhi_gpio2";
rp1_dpi_18bit_cpadhi_gpio2 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_18bit_cpadhi_gpio2";
dpi_gpio1 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_24bit_gpio2";
rp1_dpi_24bit_gpio2 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_24bit_gpio2";
rp1_dpi_hvsync = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_hvsync";
dpi_16bit_gpio0 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_16bit_gpio0";
rp1_dpi_16bit_gpio0 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_16bit_gpio0";
dpi_16bit_cpadhi_gpio0 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_16bit_cpadhi_gpio0";
rp1_dpi_16bit_cpadhi_gpio0 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_16bit_cpadhi_gpio0";
rp1_dpi_16bit_pad666_gpio0 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_16bit_pad666_gpio0";
dpi_18bit_gpio0 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_18bit_gpio0";
rp1_dpi_18bit_gpio0 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_18bit_gpio0";
dpi_18bit_cpadhi_gpio0 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_18bit_cpadhi_gpio0";
rp1_dpi_18bit_cpadhi_gpio0 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_18bit_cpadhi_gpio0";
dpi_gpio0 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_24bit_gpio0";
rp1_dpi_24bit_gpio0 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_dpi_24bit_gpio0";
rp1_pwm1_gpio45 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_pwm1_gpio45";
spi0_pins = "/axi/pcie@120000/rp1/gpio@d0000/rp1_spi0_gpio9";
rp1_spi0_gpio9 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_spi0_gpio9";
spi0_cs_pins = "/axi/pcie@120000/rp1/gpio@d0000/rp1_spi0_cs_gpio7";
rp1_spi0_cs_gpio7 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_spi0_cs_gpio7";
rp1_spi8_gpio49 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_spi8_gpio49";
rp1_spi8_cs_gpio52 = "/axi/pcie@120000/rp1/gpio@d0000/rp1_spi8_cs_gpio52";
usb_vbus_pins = "/axi/pcie@120000/rp1/gpio@d0000/usb_vbus_pins";
rp1_eth = "/axi/pcie@120000/rp1/ethernet@100000";
phy1 = "/axi/pcie@120000/rp1/ethernet@100000/ethernet-phy@1";
csi0 = "/axi/pcie@120000/rp1/csi@110000";
rp1_csi0 = "/axi/pcie@120000/rp1/csi@110000";
csi1 = "/axi/pcie@120000/rp1/csi@128000";
rp1_csi1 = "/axi/pcie@120000/rp1/csi@128000";
rp1_mmc0 = "/axi/pcie@120000/rp1/mmc@180000";
rp1_mmc1 = "/axi/pcie@120000/rp1/mmc@184000";
rp1_dma = "/axi/pcie@120000/rp1/dma@188000";
rp1_usb0 = "/axi/pcie@120000/rp1/usb@200000";
rp1_usb1 = "/axi/pcie@120000/rp1/usb@300000";
dsi0 = "/axi/pcie@120000/rp1/dsi@110000";
rp1_dsi0 = "/axi/pcie@120000/rp1/dsi@110000";
dsi1 = "/axi/pcie@120000/rp1/dsi@128000";
rp1_dsi1 = "/axi/pcie@120000/rp1/dsi@128000";
vec = "/axi/pcie@120000/rp1/vec@144000";
rp1_vec = "/axi/pcie@120000/rp1/vec@144000";
dpi = "/axi/pcie@120000/rp1/dpi@148000";
rp1_dpi = "/axi/pcie@120000/rp1/dpi@148000";
mip0 = "/axi/msi-controller@130000";
mip1 = "/axi/msi-controller@131000";
genet = "/axi/ethernet@1300000";
genet_mdio = "/axi/ethernet@1300000/mdio@e14";
syscon_piarbctl = "/axi/syscon@400018";
rpivid = "/axi/codec@800000";
sdio1 = "/axi/mmc@fff000";
sdio2 = "/axi/mmc@1100000";
wifi = "/axi/mmc@1100000/wifi@1";
sdio0 = "/axi/mmc@1108000";
bcm_reset = "/axi/reset-controller@1504318";
v3d = "/axi/v3d@2000000";
gicv2 = "/axi/interrupt-controller@7fff9000";
pisp_be = "/axi/pisp_be@880000";
clocks = "/clocks";
clk_osc = "/clocks/clk-osc";
clk_usb = "/clocks/clk-usb";
clk_vpu = "/clocks/clk_vpu";
clk_uart = "/clocks/clk_uart";
clk_emmc2 = "/clocks/clk_emmc2";
clk_xosc = "/clocks/clk_xosc";
macb_pclk = "/clocks/macb_pclk";
macb_hclk = "/clocks/macb_hclk";
sdio_src = "/clocks/sdio_src";
sdhci_core = "/clocks/sdhci_core";
clksrc_mipi0_dsi_byteclk = "/clocks/clksrc_mipi0_dsi_byteclk";
clksrc_mipi1_dsi_byteclk = "/clocks/clksrc_mipi1_dsi_byteclk";
usbphy = "/phy";
leds = "/leds";
pwr_led = "/leds/led-pwr";
act_led = "/leds/led-act";
sd_io_1v8_reg = "/sd_io_1v8_reg";
sd_vcc_reg = "/sd_vcc_reg";
wl_on_reg = "/wl_on_reg";
cam1_clk = "/cam1_clk";
cam0_clk = "/cam0_clk";
cam0_reg = "/cam0_reg";
cam1_reg = "/cam1_reg";
cam_dummy_reg = "/cam_dummy_reg";
aux = "/dummy";
dummy = "/dummy";
rp1_vdd_3v3 = "/rp1_vdd_3v3";
chosen = "/chosen";
fan = "/cooling_fan";
pwr_key = "/pwr_button/pwr";
aliases = "/aliases";
};
};
root@raspberrypi:/home/phil# cat /proc/iomem
00000000-0007ffff : reserved
00080000-3f7fffff : System RAM
00210000-0123ffff : Kernel code
01240000-0168ffff : reserved
01690000-019effff : Kernel data
18000000-2bffffff : reserved
2df98000-2dfabfff : reserved
2dfac000-2effffff : reserved
40000000-1ffffffff : System RAM
fbffc000-ffffbfff : reserved
17e000000-17fffffff : reserved
1feddc000-1ffb7bfff : reserved
1ffb84000-1ffb8bfff : reserved
1ffb8c000-1ffb8ffff : reserved
1ffb90000-1ffb97fff : reserved
1ffb98000-1ffffffff : reserved
1000005100-100000517f : 1000005100.iommu iommu@5100
1000005200-100000527f : 1000005200.iommu iommu@5200
1000005280-10000052ff : 1000005280.iommu iommu@5280
1000005b00-1000005b7f : 1000005b00.iommuc iommuc@5b00
1000010000-10000105ff : 1000010000.dma dma@10000
1000010600-1000010bff : 1000010600.dma dma@10600
1000119500-100011950f : 1000119500.reset-controller reset-controller@119500
1000120000-100012930f : 1000120000.pcie pcie@120000
1000880000-1000883fff : 1000880000.pisp_be pisp_be@880000
1000fff000-1000fff25f : 1000fff000.mmc host
1000fff400-1000fff5ff : 1000fff000.mmc cfg
1001100000-100110025f : 1001100000.mmc host
1001100400-10011005ff : 1001100000.mmc cfg
10015040b0-10015040b3 : 1000fff000.mmc busisol
1001504318-1001504347 : 1001504318.reset-controller reset-controller@1504318
10015200f0-1001520113 : 1000fff000.mmc lcpll
1002000000-1002003fff : 1002000000.v3d hub
1002008000-100200dfff : 1002000000.v3d core0
107c013880-107c0138bf : 107c013880.mailbox mailbox@7c013880
107c410000-107c4100ff : 107c410000.pixelvalve pixelvalve@7c410000
107c411000-107c4110ff : 107c411000.pixelvalve pixelvalve@7c411000
107c500000-107c50001f : 107c500000.mop mop@7c500000
107c501000-107c50101f : 107c501000.moplet moplet@7c501000
107c580000-107c599fff : 107c580000.hvs hvs@107c580000
107c700000-107c70000f : 107c700000.clock clock@7c700000
107d001000-107d0011ff : serial@7d001000
107d001000-107d0011ff : 107d001000.serial serial@7d001000
107d004000-107d0041ff : 107d004000.spi spi@7d004000
107d200000-107d200307 : 107d200000.watchdog pm
107d208000-107d208027 : 107d208000.rng rng@7d208000
107d504100-107d50412f : 107d504100.pinctrl pinctrl@7d504100
107d508200-107d508257 : 107d508200.i2c i2c@7d508200
107d508280-107d5082d7 : 107d508280.i2c i2c@7d508280
107d508500-107d50853f : 107d508500.gpio gpio@7d508500
107d50c000-107d50c01f : serial
107d510700-107d51071f : 107d510700.pinctrl pinctrl@7d510700
107d517a80-107d517aa7 : 107d517a80.pwm pwm@7d517a80
107d517c00-107d517c3f : 107d517c00.gpio gpio@7d517c00
1c00000000-1effffffff : pcie@120000
1f00000000-1ffffffffb : pcie@120000
1f00000000-1f005fffff : PCI Bus 0000:01
1f00000000-1f003fffff : 0000:01:00.0
1f00018000-1f00028037 : 1f00018000.clocks clocks@18000
1f00074000-1f00074fff : 1f00074000.i2c i2c@74000
1f000c8000-1f000cbfff : 1f000c8000.adc adc@c8000
1f000d0000-1f000dbfff : 1f000d0000.gpio gpio@d0000
1f000e0000-1f000ebfff : 1f000d0000.gpio gpio@d0000
1f000f0000-1f000fbfff : 1f000d0000.gpio gpio@d0000
1f00100000-1f00103fff : 1f00100000.ethernet ethernet@100000
1f00188000-1f00188fff : 1f00188000.dma dma@188000
1f00200000-1f00207fff : usb@200000
1f00200000-1f00207fff : xhci-hcd.0 usb@200000
1f0020c100-1f002fffff : 1f00200000.usb usb@200000
1f00300000-1f00307fff : usb@300000
1f00300000-1f00307fff : xhci-hcd.1 usb@300000
1f0030c100-1f003fffff : 1f00300000.usb usb@300000
1f00400000-1f0040ffff : 0000:01:00.0
1f00410000-1f00413fff : 0000:01:00.0
root@raspberrypi:/home/phil# lsmod
Module Size Used by
sg 81920 0
rfcomm 81920 4
snd_seq_dummy 65536 0
snd_hrtimer 65536 1
snd_seq 98304 7 snd_seq_dummy
snd_seq_device 65536 1 snd_seq
algif_hash 65536 1
algif_skcipher 65536 1
af_alg 65536 6 algif_hash,algif_skcipher
bnep 65536 2
aes_ce_blk 65536 4
aes_ce_cipher 65536 1 aes_ce_blk
ghash_ce 65536 0
gf128mul 65536 1 ghash_ce
binfmt_misc 65536 1
hci_uart 81920 0
btbcm 65536 1 hci_uart
sha2_ce 65536 0
bluetooth 606208 33 hci_uart,btbcm,bnep,rfcomm
sha256_arm64 65536 1 sha2_ce
sha1_ce 65536 0
brcmfmac 360448 0
brcmutil 65536 1 brcmfmac
raspberrypi_hwmon 65536 0
pisp_be 65536 0
rpivid_hevc 81920 0
cfg80211 966656 1 brcmfmac
ecdh_generic 65536 2 bluetooth
v4l2_mem2mem 81920 1 rpivid_hevc
ecc 81920 1 ecdh_generic
libaes 65536 4 aes_ce_cipher,bluetooth,ghash_ce,aes_ce_blk
videobuf2_dma_contig 65536 2 pisp_be,rpivid_hevc
videobuf2_memops 65536 1 videobuf2_dma_contig
rfkill 65536 6 bluetooth,cfg80211
videobuf2_v4l2 65536 3 pisp_be,rpivid_hevc,v4l2_mem2mem
videobuf2_common 114688 6 pisp_be,videobuf2_dma_contig,videobuf2_v4l2,rpivid_hevc,v4l2_mem2mem,videobuf2_memops
videodev 311296 5 pisp_be,videobuf2_v4l2,videobuf2_common,rpivid_hevc,v4l2_mem2mem
mc 98304 6 videodev,pisp_be,videobuf2_v4l2,videobuf2_common,rpivid_hevc,v4l2_mem2mem
rp1_adc 65536 0
nvmem_rmem 65536 0
uio_pdrv_genirq 65536 0
uio 65536 1 uio_pdrv_genirq
i2c_dev 65536 0
fuse 163840 5
dm_mod 180224 0
ip_tables 81920 0
x_tables 98304 1 ip_tables
ipv6 589824 132
spidev 65536 0
vc4 409600 31
snd_soc_hdmi_codec 65536 2
drm_display_helper 65536 1 vc4
cec 81920 1 vc4
i2c_brcmstb 65536 0
v3d 131072 9
drm_dma_helper 65536 1 vc4
spi_bcm2835 65536 0
drm_kms_helper 229376 4 drm_dma_helper,vc4
syscopyarea 65536 1 drm_kms_helper
sysfillrect 65536 1 drm_kms_helper
sysimgblt 65536 1 drm_kms_helper
fb_sys_fops 65536 1 drm_kms_helper
gpu_sched 98304 1 v3d
gpio_keys 65536 0
snd_soc_core 294912 2 vc4,snd_soc_hdmi_codec
snd_compress 65536 1 snd_soc_core
i2c_designware_platform 65536 0
drm_shmem_helper 65536 1 v3d
snd_pcm_dmaengine 65536 1 snd_soc_core
i2c_designware_core 65536 1 i2c_designware_platform
snd_pcm 163840 4 snd_soc_hdmi_codec,snd_compress,snd_soc_core,snd_pcm_dmaengine
snd_timer 81920 3 snd_seq,snd_hrtimer,snd_pcm
drm 622592 25 gpu_sched,drm_kms_helper,drm_dma_helper,v3d,vc4,drm_shmem_helper,drm_display_helper
snd 147456 11 snd_seq,snd_seq_device,snd_soc_hdmi_codec,snd_timer,snd_compress,snd_soc_core,snd_pcm
drm_panel_orientation_quirks 65536 1 drm
backlight 65536 1 drm
2mb W25Q16.V for boot flash
contains the same FS as pi4
2.4GHz quad-core 64-bit Arm Cortex-A76 CPU, with cryptography extensions, 512KB per-core L2 caches and a 2MB shared L3 cache
memory map, based on linux's PCI BAR assignments
1f_0000_0000 4mb rp1 BAR1
1f_0001_8000 clocks@18000
1f_0003_0000 PL011
1f_0003_4000 PL011
1f_0003_8000 PL011
1f_0003_c000 PL011
1f_0004_0000 PL011
1f_0004_4000 PL011
1f_0004_c000 SPI
1f_0005_0000 SPI
1f_0005_4000 SPI
1f_0005_8000 SPI
1f_0005_c000 SPI
1f_0006_0000 SPI
1f_0006_4000 SPI
1f_0006_c000 SPI
1f_0007_0000 I2C
1f_0007_4000 I2C
1f_0007_8000 I2C
1f_0007_c000 I2C
1f_0008_0000 I2C
1f_0008_4000 I2C
1f_0008_8000 I2C
1f_0009_8000 PWM
1f_0009_c000 PWM
1f_000a_0000 i2s
1f_000a_4000 i2s
1f_000a_8000 i2s
1f_000b_0004 sdio-clock
1f_000b_4004 sdio-clock
1f_000c_8000 adc
1f_000d_0000 raspberrypi,rp1-gpio
1f_0010_0000 ethernet
1f_0011_0000 csi
1f_0012_8000 csi
1f_0018_0000 mmc
1f_0018_4000 mmc
1f_0018_8000 dma
1f_0020_0000 usb snps,dwc3