mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-01-11 17:10:13 +00:00
Until commit 919d6924ae9b ("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 <m.szyprowski@samsung.com>
Closes: https://lore.kernel.org/linux-arm-kernel/727aa0c8-2981-4662-adf3-69cac2da956d@samsung.com/
Fixes: 919d6924ae9b ("clk: bcm: rpi: Turn firmware clock on/off when preparing/unpreparing")
Signed-off-by: Stefan Wahren <wahrenst@gmx.net>
Co-developed-by: Melissa Wen <mwen@igalia.com>
Signed-off-by: Melissa Wen <mwen@igalia.com>
Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
Link: https://lore.kernel.org/r/20251005113816.6721-1-wahrenst@gmx.net
Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
32 lines
700 B
Plaintext
32 lines
700 B
Plaintext
// SPDX-License-Identifier: GPL-2.0
|
|
/*
|
|
* This include file covers the common peripherals and configuration between
|
|
* bcm2835, bcm2836 and bcm2837 implementations that interact with RPi's
|
|
* firmware interface.
|
|
*/
|
|
|
|
#include <dt-bindings/power/raspberrypi-power.h>
|
|
|
|
&hdmi {
|
|
clocks = <&firmware_clocks 9>,
|
|
<&firmware_clocks 13>;
|
|
clock-names = "pixel", "hdmi";
|
|
};
|
|
|
|
&pm {
|
|
clocks = <&firmware_clocks 5>,
|
|
<&clocks BCM2835_CLOCK_PERI_IMAGE>,
|
|
<&clocks BCM2835_CLOCK_H264>,
|
|
<&clocks BCM2835_CLOCK_ISP>;
|
|
clock-names = "v3d", "peri_image", "h264", "isp";
|
|
};
|
|
|
|
&v3d {
|
|
clocks = <&firmware_clocks 5>;
|
|
power-domains = <&power RPI_POWER_DOMAIN_V3D>;
|
|
};
|
|
|
|
&vec {
|
|
clocks = <&firmware_clocks 15>;
|
|
};
|