Skip to content

Commit 4aba4cf

Browse files
committed
ARM: dts: bcm2835: Add the DSI module nodes and clocks.
The modules stay disabled by default, and if you want to enable DSI you'll need an overlay that connects a panel to it. Signed-off-by: Eric Anholt <eric@anholt.net>
1 parent c1ae3cf commit 4aba4cf

File tree

2 files changed

+53
-3
lines changed

2 files changed

+53
-3
lines changed

arch/arm/boot/dts/bcm2835-rpi.dtsi

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,3 +92,11 @@
9292
power-domains = <&power RPI_POWER_DOMAIN_VEC>;
9393
status = "okay";
9494
};
95+
96+
&dsi0 {
97+
power-domains = <&power RPI_POWER_DOMAIN_DSI0>;
98+
};
99+
100+
&dsi1 {
101+
power-domains = <&power RPI_POWER_DOMAIN_DSI1>;
102+
};

arch/arm/boot/dts/bcm283x.dtsi

Lines changed: 45 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -93,10 +93,13 @@
9393
#clock-cells = <1>;
9494
reg = <0x7e101000 0x2000>;
9595

96-
/* CPRMAN derives everything from the platform's
97-
* oscillator.
96+
/* CPRMAN derives almost everything from the
97+
* platform's oscillator. However, the DSI
98+
* pixel clocks come from the DSI analog PHY.
9899
*/
99-
clocks = <&clk_osc>;
100+
clocks = <&clk_osc>,
101+
<&dsi0 0>, <&dsi0 1>, <&dsi0 2>,
102+
<&dsi1 0>, <&dsi1 1>, <&dsi1 2>;
100103
};
101104

102105
rng@7e104000 {
@@ -390,6 +393,25 @@
390393
interrupts = <2 14>; /* pwa1 */
391394
};
392395

396+
dsi0: dsi@7e209000 {
397+
compatible = "brcm,bcm2835-dsi0";
398+
reg = <0x7e209000 0x78>;
399+
interrupts = <2 4>;
400+
#address-cells = <1>;
401+
#size-cells = <0>;
402+
#clock-cells = <1>;
403+
404+
clocks = <&clocks BCM2835_PLLA_DSI0>,
405+
<&clocks BCM2835_CLOCK_DSI0E>,
406+
<&clocks BCM2835_CLOCK_DSI0P>;
407+
clock-names = "phy", "escape", "pixel";
408+
409+
clock-output-names = "dsi0_byte",
410+
"dsi0_ddr2",
411+
"dsi0_ddr";
412+
413+
};
414+
393415
thermal: thermal@7e212000 {
394416
compatible = "brcm,bcm2835-thermal";
395417
reg = <0x7e212000 0x8>;
@@ -456,6 +478,26 @@
456478
interrupts = <2 1>;
457479
};
458480

481+
dsi1: dsi@7e700000 {
482+
compatible = "brcm,bcm2835-dsi1";
483+
reg = <0x7e700000 0x8c>;
484+
interrupts = <2 12>;
485+
#address-cells = <1>;
486+
#size-cells = <0>;
487+
#clock-cells = <1>;
488+
489+
clocks = <&clocks BCM2835_PLLD_DSI1>,
490+
<&clocks BCM2835_CLOCK_DSI1E>,
491+
<&clocks BCM2835_CLOCK_DSI1P>;
492+
clock-names = "phy", "escape", "pixel";
493+
494+
clock-output-names = "dsi1_byte",
495+
"dsi1_ddr2",
496+
"dsi1_ddr";
497+
498+
status = "disabled";
499+
};
500+
459501
i2c1: i2c@7e804000 {
460502
compatible = "brcm,bcm2835-i2c";
461503
reg = <0x7e804000 0x1000>;

0 commit comments

Comments
 (0)