Changeset View
Changeset View
Standalone View
Standalone View
sys/gnu/dts/arm/bcm283x.dtsi
Context not available. | |||||
/ { | / { | ||||
compatible = "brcm,bcm2835"; | compatible = "brcm,bcm2835"; | ||||
model = "BCM2835"; | model = "BCM2835"; | ||||
interrupt-parent = <&intc>; | |||||
#address-cells = <1>; | #address-cells = <1>; | ||||
#size-cells = <1>; | #size-cells = <1>; | ||||
Context not available. | |||||
stdout-path = "serial0:115200n8"; | stdout-path = "serial0:115200n8"; | ||||
}; | }; | ||||
rmem: reserved-memory { | |||||
#address-cells = <1>; | |||||
#size-cells = <1>; | |||||
ranges; | |||||
cma: linux,cma { | |||||
compatible = "shared-dma-pool"; | |||||
size = <0x4000000>; /* 64MB */ | |||||
reusable; | |||||
linux,cma-default; | |||||
}; | |||||
}; | |||||
thermal-zones { | thermal-zones { | ||||
cpu_thermal: cpu-thermal { | cpu_thermal: cpu-thermal { | ||||
polling-delay-passive = <0>; | polling-delay-passive = <0>; | ||||
polling-delay = <1000>; | polling-delay = <1000>; | ||||
thermal-sensors = <&thermal>; | |||||
trips { | trips { | ||||
cpu-crit { | cpu-crit { | ||||
temperature = <80000>; | temperature = <90000>; | ||||
hysteresis = <0>; | hysteresis = <0>; | ||||
type = "critical"; | type = "critical"; | ||||
}; | }; | ||||
Context not available. | |||||
#address-cells = <1>; | #address-cells = <1>; | ||||
#size-cells = <1>; | #size-cells = <1>; | ||||
timer@7e003000 { | system_timer: timer@7e003000 { | ||||
compatible = "brcm,bcm2835-system-timer"; | compatible = "brcm,bcm2835-system-timer"; | ||||
reg = <0x7e003000 0x1000>; | reg = <0x7e003000 0x1000>; | ||||
interrupts = <1 0>, <1 1>, <1 2>, <1 3>; | interrupts = <1 0>, <1 1>, <1 2>, <1 3>; | ||||
Context not available. | |||||
clock-frequency = <1000000>; | clock-frequency = <1000000>; | ||||
}; | }; | ||||
txp@7e004000 { | txp: txp@7e004000 { | ||||
compatible = "brcm,bcm2835-txp"; | compatible = "brcm,bcm2835-txp"; | ||||
reg = <0x7e004000 0x20>; | reg = <0x7e004000 0x20>; | ||||
interrupts = <1 11>; | interrupts = <1 11>; | ||||
}; | }; | ||||
dma: dma@7e007000 { | |||||
compatible = "brcm,bcm2835-dma"; | |||||
reg = <0x7e007000 0xf00>; | |||||
interrupts = <1 16>, | |||||
<1 17>, | |||||
<1 18>, | |||||
<1 19>, | |||||
<1 20>, | |||||
<1 21>, | |||||
<1 22>, | |||||
<1 23>, | |||||
<1 24>, | |||||
<1 25>, | |||||
<1 26>, | |||||
/* dma channel 11-14 share one irq */ | |||||
<1 27>, | |||||
<1 27>, | |||||
<1 27>, | |||||
<1 27>, | |||||
/* unused shared irq for all channels */ | |||||
<1 28>; | |||||
interrupt-names = "dma0", | |||||
"dma1", | |||||
"dma2", | |||||
"dma3", | |||||
"dma4", | |||||
"dma5", | |||||
"dma6", | |||||
"dma7", | |||||
"dma8", | |||||
"dma9", | |||||
"dma10", | |||||
"dma11", | |||||
"dma12", | |||||
"dma13", | |||||
"dma14", | |||||
"dma-shared-all"; | |||||
#dma-cells = <1>; | |||||
brcm,dma-channel-mask = <0x7f35>; | |||||
}; | |||||
intc: interrupt-controller@7e00b200 { | |||||
compatible = "brcm,bcm2835-armctrl-ic"; | |||||
reg = <0x7e00b200 0x200>; | |||||
interrupt-controller; | |||||
#interrupt-cells = <2>; | |||||
}; | |||||
pm: watchdog@7e100000 { | |||||
compatible = "brcm,bcm2835-pm", "brcm,bcm2835-pm-wdt"; | |||||
#power-domain-cells = <1>; | |||||
#reset-cells = <1>; | |||||
reg = <0x7e100000 0x114>, | |||||
<0x7e00a000 0x24>; | |||||
clocks = <&clocks BCM2835_CLOCK_V3D>, | |||||
<&clocks BCM2835_CLOCK_PERI_IMAGE>, | |||||
<&clocks BCM2835_CLOCK_H264>, | |||||
<&clocks BCM2835_CLOCK_ISP>; | |||||
clock-names = "v3d", "peri_image", "h264", "isp"; | |||||
system-power-controller; | |||||
}; | |||||
clocks: cprman@7e101000 { | clocks: cprman@7e101000 { | ||||
compatible = "brcm,bcm2835-cprman"; | compatible = "brcm,bcm2835-cprman"; | ||||
#clock-cells = <1>; | #clock-cells = <1>; | ||||
Context not available. | |||||
<&dsi1 0>, <&dsi1 1>, <&dsi1 2>; | <&dsi1 0>, <&dsi1 1>, <&dsi1 2>; | ||||
}; | }; | ||||
rng@7e104000 { | |||||
compatible = "brcm,bcm2835-rng"; | |||||
reg = <0x7e104000 0x10>; | |||||
interrupts = <2 29>; | |||||
}; | |||||
mailbox: mailbox@7e00b880 { | mailbox: mailbox@7e00b880 { | ||||
compatible = "brcm,bcm2835-mbox"; | compatible = "brcm,bcm2835-mbox"; | ||||
reg = <0x7e00b880 0x40>; | reg = <0x7e00b880 0x40>; | ||||
Context not available. | |||||
interrupt-controller; | interrupt-controller; | ||||
#interrupt-cells = <2>; | #interrupt-cells = <2>; | ||||
/* Defines pin muxing groups according to | /* Defines common pin muxing groups | ||||
* BCM2835-ARM-Peripherals.pdf page 102. | |||||
* | * | ||||
* While each pin can have its mux selected | * While each pin can have its mux selected | ||||
* for various functions individually, some | * for various functions individually, some | ||||
Context not available. | |||||
brcm,pins = <44 45>; | brcm,pins = <44 45>; | ||||
brcm,function = <BCM2835_FSEL_ALT2>; | brcm,function = <BCM2835_FSEL_ALT2>; | ||||
}; | }; | ||||
i2c_slave_gpio18: i2c_slave_gpio18 { | |||||
brcm,pins = <18 19 20 21>; | |||||
brcm,function = <BCM2835_FSEL_ALT3>; | |||||
}; | |||||
jtag_gpio4: jtag_gpio4 { | |||||
brcm,pins = <4 5 6 12 13>; | |||||
brcm,function = <BCM2835_FSEL_ALT5>; | |||||
}; | |||||
jtag_gpio22: jtag_gpio22 { | jtag_gpio22: jtag_gpio22 { | ||||
brcm,pins = <22 23 24 25 26 27>; | brcm,pins = <22 23 24 25 26 27>; | ||||
brcm,function = <BCM2835_FSEL_ALT4>; | brcm,function = <BCM2835_FSEL_ALT4>; | ||||
Context not available. | |||||
brcm,function = <BCM2835_FSEL_ALT2>; | brcm,function = <BCM2835_FSEL_ALT2>; | ||||
}; | }; | ||||
pwm0_gpio12: pwm0_gpio12 { | |||||
brcm,pins = <12>; | |||||
brcm,function = <BCM2835_FSEL_ALT0>; | |||||
}; | |||||
pwm0_gpio18: pwm0_gpio18 { | |||||
brcm,pins = <18>; | |||||
brcm,function = <BCM2835_FSEL_ALT5>; | |||||
}; | |||||
pwm0_gpio40: pwm0_gpio40 { | |||||
brcm,pins = <40>; | |||||
brcm,function = <BCM2835_FSEL_ALT0>; | |||||
}; | |||||
pwm1_gpio13: pwm1_gpio13 { | |||||
brcm,pins = <13>; | |||||
brcm,function = <BCM2835_FSEL_ALT0>; | |||||
}; | |||||
pwm1_gpio19: pwm1_gpio19 { | |||||
brcm,pins = <19>; | |||||
brcm,function = <BCM2835_FSEL_ALT5>; | |||||
}; | |||||
pwm1_gpio41: pwm1_gpio41 { | |||||
brcm,pins = <41>; | |||||
brcm,function = <BCM2835_FSEL_ALT0>; | |||||
}; | |||||
pwm1_gpio45: pwm1_gpio45 { | |||||
brcm,pins = <45>; | |||||
brcm,function = <BCM2835_FSEL_ALT0>; | |||||
}; | |||||
sdhost_gpio48: sdhost_gpio48 { | sdhost_gpio48: sdhost_gpio48 { | ||||
brcm,pins = <48 49 50 51 52 53>; | brcm,pins = <48 49 50 51 52 53>; | ||||
brcm,function = <BCM2835_FSEL_ALT0>; | brcm,function = <BCM2835_FSEL_ALT0>; | ||||
Context not available. | |||||
}; | }; | ||||
uart0: serial@7e201000 { | uart0: serial@7e201000 { | ||||
compatible = "brcm,bcm2835-pl011", "arm,pl011", "arm,primecell"; | compatible = "arm,pl011", "arm,primecell"; | ||||
reg = <0x7e201000 0x200>; | reg = <0x7e201000 0x200>; | ||||
interrupts = <2 25>; | interrupts = <2 25>; | ||||
clocks = <&clocks BCM2835_CLOCK_UART>, | clocks = <&clocks BCM2835_CLOCK_UART>, | ||||
Context not available. | |||||
reg = <0x7e202000 0x100>; | reg = <0x7e202000 0x100>; | ||||
interrupts = <2 24>; | interrupts = <2 24>; | ||||
clocks = <&clocks BCM2835_CLOCK_VPU>; | clocks = <&clocks BCM2835_CLOCK_VPU>; | ||||
dmas = <&dma 13>; | |||||
dma-names = "rx-tx"; | |||||
status = "disabled"; | status = "disabled"; | ||||
}; | }; | ||||
Context not available. | |||||
compatible = "brcm,bcm2835-i2s"; | compatible = "brcm,bcm2835-i2s"; | ||||
reg = <0x7e203000 0x24>; | reg = <0x7e203000 0x24>; | ||||
clocks = <&clocks BCM2835_CLOCK_PCM>; | clocks = <&clocks BCM2835_CLOCK_PCM>; | ||||
dmas = <&dma 2>, | |||||
<&dma 3>; | |||||
dma-names = "tx", "rx"; | |||||
status = "disabled"; | status = "disabled"; | ||||
}; | }; | ||||
Context not available. | |||||
reg = <0x7e204000 0x200>; | reg = <0x7e204000 0x200>; | ||||
interrupts = <2 22>; | interrupts = <2 22>; | ||||
clocks = <&clocks BCM2835_CLOCK_VPU>; | clocks = <&clocks BCM2835_CLOCK_VPU>; | ||||
dmas = <&dma 6>, <&dma 7>; | |||||
dma-names = "tx", "rx"; | |||||
#address-cells = <1>; | #address-cells = <1>; | ||||
#size-cells = <0>; | #size-cells = <0>; | ||||
status = "disabled"; | status = "disabled"; | ||||
Context not available. | |||||
status = "disabled"; | status = "disabled"; | ||||
}; | }; | ||||
pixelvalve@7e206000 { | |||||
compatible = "brcm,bcm2835-pixelvalve0"; | |||||
reg = <0x7e206000 0x100>; | |||||
interrupts = <2 13>; /* pwa0 */ | |||||
}; | |||||
pixelvalve@7e207000 { | |||||
compatible = "brcm,bcm2835-pixelvalve1"; | |||||
reg = <0x7e207000 0x100>; | |||||
interrupts = <2 14>; /* pwa1 */ | |||||
}; | |||||
dpi: dpi@7e208000 { | dpi: dpi@7e208000 { | ||||
compatible = "brcm,bcm2835-dpi"; | compatible = "brcm,bcm2835-dpi"; | ||||
reg = <0x7e208000 0x8c>; | reg = <0x7e208000 0x8c>; | ||||
Context not available. | |||||
}; | }; | ||||
thermal: thermal@7e212000 { | |||||
compatible = "brcm,bcm2835-thermal"; | |||||
reg = <0x7e212000 0x8>; | |||||
clocks = <&clocks BCM2835_CLOCK_TSENS>; | |||||
#thermal-sensor-cells = <0>; | |||||
status = "disabled"; | |||||
}; | |||||
aux: aux@7e215000 { | aux: aux@7e215000 { | ||||
compatible = "brcm,bcm2835-aux"; | compatible = "brcm,bcm2835-aux"; | ||||
#clock-cells = <1>; | #clock-cells = <1>; | ||||
Context not available. | |||||
status = "disabled"; | status = "disabled"; | ||||
}; | }; | ||||
i2c2: i2c@7e805000 { | |||||
compatible = "brcm,bcm2835-i2c"; | |||||
reg = <0x7e805000 0x1000>; | |||||
interrupts = <2 21>; | |||||
clocks = <&clocks BCM2835_CLOCK_VPU>; | |||||
#address-cells = <1>; | |||||
#size-cells = <0>; | |||||
status = "disabled"; | |||||
}; | |||||
vec: vec@7e806000 { | vec: vec@7e806000 { | ||||
compatible = "brcm,bcm2835-vec"; | compatible = "brcm,bcm2835-vec"; | ||||
reg = <0x7e806000 0x1000>; | reg = <0x7e806000 0x1000>; | ||||
Context not available. | |||||
status = "disabled"; | status = "disabled"; | ||||
}; | }; | ||||
pixelvalve@7e807000 { | |||||
compatible = "brcm,bcm2835-pixelvalve2"; | |||||
reg = <0x7e807000 0x100>; | |||||
interrupts = <2 10>; /* pixelvalve */ | |||||
}; | |||||
hdmi: hdmi@7e902000 { | |||||
compatible = "brcm,bcm2835-hdmi"; | |||||
reg = <0x7e902000 0x600>, | |||||
<0x7e808000 0x100>; | |||||
interrupts = <2 8>, <2 9>; | |||||
ddc = <&i2c2>; | |||||
clocks = <&clocks BCM2835_PLLH_PIX>, | |||||
<&clocks BCM2835_CLOCK_HSM>; | |||||
clock-names = "pixel", "hdmi"; | |||||
dmas = <&dma 17>; | |||||
dma-names = "audio-rx"; | |||||
status = "disabled"; | |||||
}; | |||||
usb: usb@7e980000 { | usb: usb@7e980000 { | ||||
compatible = "brcm,bcm2835-usb"; | compatible = "brcm,bcm2835-usb"; | ||||
reg = <0x7e980000 0x10000>; | reg = <0x7e980000 0x10000>; | ||||
Context not available. | |||||
phys = <&usbphy>; | phys = <&usbphy>; | ||||
phy-names = "usb2-phy"; | phy-names = "usb2-phy"; | ||||
}; | }; | ||||
v3d: v3d@7ec00000 { | |||||
compatible = "brcm,bcm2835-v3d"; | |||||
reg = <0x7ec00000 0x1000>; | |||||
interrupts = <1 10>; | |||||
power-domains = <&pm BCM2835_POWER_DOMAIN_GRAFX_V3D>; | |||||
}; | |||||
vc4: gpu { | |||||
compatible = "brcm,bcm2835-vc4"; | |||||
}; | |||||
}; | }; | ||||
clocks { | clocks { | ||||
compatible = "simple-bus"; | |||||
#address-cells = <1>; | |||||
#size-cells = <0>; | |||||
/* The oscillator is the root of the clock tree. */ | /* The oscillator is the root of the clock tree. */ | ||||
clk_osc: clock@3 { | clk_osc: clk-osc { | ||||
compatible = "fixed-clock"; | compatible = "fixed-clock"; | ||||
reg = <3>; | |||||
#clock-cells = <0>; | #clock-cells = <0>; | ||||
clock-output-names = "osc"; | clock-output-names = "osc"; | ||||
clock-frequency = <19200000>; | clock-frequency = <19200000>; | ||||
}; | }; | ||||
clk_usb: clock@4 { | clk_usb: clk-usb { | ||||
compatible = "fixed-clock"; | compatible = "fixed-clock"; | ||||
reg = <4>; | |||||
#clock-cells = <0>; | #clock-cells = <0>; | ||||
clock-output-names = "otg"; | clock-output-names = "otg"; | ||||
clock-frequency = <480000000>; | clock-frequency = <480000000>; | ||||
Context not available. |