Skip to content

Commit 4adc20b

Browse files
lategoodbyeffainelli
authored andcommitted
ARM: dts: broadcom: rpi: Switch to V3D firmware clock
Until commit 919d692 ("clk: bcm: rpi: Turn firmware clock on/off when preparing/unpreparing") the clk-raspberrypi driver wasn't able to change the state of the V3D clock. Only the clk-bcm2835 was able to do this before. After this commit both drivers were able to work against each other, which could result in a system freeze. One step to avoid this conflict is to switch all V3D consumer to the firmware clock. Reported-by: Marek Szyprowski <[email protected]> Closes: https://lore.kernel.org/linux-arm-kernel/[email protected]/ Fixes: 919d692 ("clk: bcm: rpi: Turn firmware clock on/off when preparing/unpreparing") Signed-off-by: Stefan Wahren <[email protected]> Co-developed-by: Melissa Wen <[email protected]> Signed-off-by: Melissa Wen <[email protected]> Tested-by: Marek Szyprowski <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Florian Fainelli <[email protected]>
1 parent 3a86608 commit 4adc20b

2 files changed

Lines changed: 17 additions & 0 deletions

File tree

arch/arm/boot/dts/broadcom/bcm2711-rpi.dtsi

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,14 @@
7777
/delete-property/ pinctrl-0;
7878
};
7979

80+
&pm {
81+
clocks = <&firmware_clocks 5>,
82+
<&clocks BCM2835_CLOCK_PERI_IMAGE>,
83+
<&clocks BCM2835_CLOCK_H264>,
84+
<&clocks BCM2835_CLOCK_ISP>;
85+
clock-names = "v3d", "peri_image", "h264", "isp";
86+
};
87+
8088
&rmem {
8189
/*
8290
* RPi4's co-processor will copy the board's bootloader configuration

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

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,16 @@
1313
clock-names = "pixel", "hdmi";
1414
};
1515

16+
&pm {
17+
clocks = <&firmware_clocks 5>,
18+
<&clocks BCM2835_CLOCK_PERI_IMAGE>,
19+
<&clocks BCM2835_CLOCK_H264>,
20+
<&clocks BCM2835_CLOCK_ISP>;
21+
clock-names = "v3d", "peri_image", "h264", "isp";
22+
};
23+
1624
&v3d {
25+
clocks = <&firmware_clocks 5>;
1726
power-domains = <&power RPI_POWER_DOMAIN_V3D>;
1827
};
1928

0 commit comments

Comments
 (0)