1 // SPDX-License-Identifier: GPL-2.0
3 /* This include file covers the common peripherals and configuration between
4 * bcm2835, bcm2836 and bcm2837 implementations.
8 interrupt-parent = <&intc>;
12 compatible = "brcm,bcm2835-dma";
13 reg = <0x7e007000 0xf00>;
25 /* dma channel 11-14 share one irq */
30 /* unused shared irq for all channels */
32 interrupt-names = "dma0",
49 brcm,dma-channel-mask = <0x7f35>;
52 intc: interrupt-controller@7e00b200 {
53 compatible = "brcm,bcm2835-armctrl-ic";
54 reg = <0x7e00b200 0x200>;
56 #interrupt-cells = <2>;
59 pm: watchdog@7e100000 {
60 compatible = "brcm,bcm2835-pm", "brcm,bcm2835-pm-wdt";
61 #power-domain-cells = <1>;
63 reg = <0x7e100000 0x114>,
65 reg-names = "pm", "asb";
66 clocks = <&clocks BCM2835_CLOCK_V3D>,
67 <&clocks BCM2835_CLOCK_PERI_IMAGE>,
68 <&clocks BCM2835_CLOCK_H264>,
69 <&clocks BCM2835_CLOCK_ISP>;
70 clock-names = "v3d", "peri_image", "h264", "isp";
71 system-power-controller;
75 compatible = "brcm,bcm2835-rng";
76 reg = <0x7e104000 0x10>;
81 compatible = "brcm,bcm2835-pixelvalve0";
82 reg = <0x7e206000 0x100>;
83 interrupts = <2 13>; /* pwa0 */
87 compatible = "brcm,bcm2835-pixelvalve1";
88 reg = <0x7e207000 0x100>;
89 interrupts = <2 14>; /* pwa1 */
92 thermal: thermal@7e212000 {
93 compatible = "brcm,bcm2835-thermal";
94 reg = <0x7e212000 0x8>;
95 clocks = <&clocks BCM2835_CLOCK_TSENS>;
96 #thermal-sensor-cells = <0>;
101 compatible = "brcm,bcm2835-i2c";
102 reg = <0x7e805000 0x1000>;
104 clocks = <&clocks BCM2835_CLOCK_VPU>;
105 #address-cells = <1>;
111 compatible = "brcm,bcm2835-vec";
112 reg = <0x7e806000 0x1000>;
113 clocks = <&clocks BCM2835_CLOCK_VEC>;
118 pixelvalve@7e807000 {
119 compatible = "brcm,bcm2835-pixelvalve2";
120 reg = <0x7e807000 0x100>;
121 interrupts = <2 10>; /* pixelvalve */
124 hdmi: hdmi@7e902000 {
125 compatible = "brcm,bcm2835-hdmi";
126 reg = <0x7e902000 0x600>,
128 interrupts = <2 8>, <2 9>;
130 clocks = <&clocks BCM2835_PLLH_PIX>,
131 <&clocks BCM2835_CLOCK_HSM>;
132 clock-names = "pixel", "hdmi";
134 dma-names = "audio-rx";
139 compatible = "brcm,bcm2835-v3d";
140 reg = <0x7ec00000 0x1000>;
145 compatible = "brcm,bcm2835-vc4";
151 thermal-sensors = <&thermal>;
155 i2c_slave_gpio18: i2c_slave_gpio18 {
156 brcm,pins = <18 19 20 21>;
157 brcm,function = <BCM2835_FSEL_ALT3>;
160 jtag_gpio4: jtag_gpio4 {
161 brcm,pins = <4 5 6 12 13>;
162 brcm,function = <BCM2835_FSEL_ALT5>;
165 pwm0_gpio12: pwm0_gpio12 {
167 brcm,function = <BCM2835_FSEL_ALT0>;
169 pwm0_gpio18: pwm0_gpio18 {
171 brcm,function = <BCM2835_FSEL_ALT5>;
173 pwm0_gpio40: pwm0_gpio40 {
175 brcm,function = <BCM2835_FSEL_ALT0>;
177 pwm1_gpio13: pwm1_gpio13 {
179 brcm,function = <BCM2835_FSEL_ALT0>;
181 pwm1_gpio19: pwm1_gpio19 {
183 brcm,function = <BCM2835_FSEL_ALT5>;
185 pwm1_gpio41: pwm1_gpio41 {
187 brcm,function = <BCM2835_FSEL_ALT0>;
189 pwm1_gpio45: pwm1_gpio45 {
191 brcm,function = <BCM2835_FSEL_ALT0>;
196 dmas = <&dma 2>, <&dma 3>;
197 dma-names = "tx", "rx";
206 dmas = <&dma 6>, <&dma 7>;
207 dma-names = "tx", "rx";