aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/patches-5.4/950-0510-clk-bcm-rpi-Allow-the-driver-to-be-probed-by-DT.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/bcm27xx/patches-5.4/950-0510-clk-bcm-rpi-Allow-the-driver-to-be-probed-by-DT.patch')
-rw-r--r--target/linux/bcm27xx/patches-5.4/950-0510-clk-bcm-rpi-Allow-the-driver-to-be-probed-by-DT.patch60
1 files changed, 0 insertions, 60 deletions
diff --git a/target/linux/bcm27xx/patches-5.4/950-0510-clk-bcm-rpi-Allow-the-driver-to-be-probed-by-DT.patch b/target/linux/bcm27xx/patches-5.4/950-0510-clk-bcm-rpi-Allow-the-driver-to-be-probed-by-DT.patch
deleted file mode 100644
index d622d9ded5..0000000000
--- a/target/linux/bcm27xx/patches-5.4/950-0510-clk-bcm-rpi-Allow-the-driver-to-be-probed-by-DT.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From faeea753ba262e2a781570f9db23c5773c5d20e7 Mon Sep 17 00:00:00 2001
-From: Maxime Ripard <maxime@cerno.tech>
-Date: Mon, 23 Dec 2019 19:58:08 +0100
-Subject: [PATCH] clk: bcm: rpi: Allow the driver to be probed by DT
-
-The current firmware clock driver for the RaspberryPi can only be probed by
-manually registering an associated platform_device.
-
-While this works fine for cpufreq where the device gets attached a clkdev
-lookup, it would be tedious to maintain a table of all the devices using
-one of the clocks exposed by the firmware.
-
-Since the DT on the other hand is the perfect place to store those
-associations, make the firmware clocks driver probe-able through the device
-tree so that we can represent it as a node.
-
-Cc: Michael Turquette <mturquette@baylibre.com>
-Cc: Stephen Boyd <sboyd@kernel.org>
-Cc: linux-clk@vger.kernel.org
-Signed-off-by: Maxime Ripard <maxime@cerno.tech>
----
- drivers/clk/bcm/clk-raspberrypi.c | 11 ++++++++---
- 1 file changed, 8 insertions(+), 3 deletions(-)
-
---- a/drivers/clk/bcm/clk-raspberrypi.c
-+++ b/drivers/clk/bcm/clk-raspberrypi.c
-@@ -255,15 +255,13 @@ static int raspberrypi_clk_probe(struct
- struct raspberrypi_clk *rpi;
- int ret;
-
-- firmware_node = of_find_compatible_node(NULL, NULL,
-- "raspberrypi,bcm2835-firmware");
-+ firmware_node = of_parse_phandle(dev->of_node, "raspberrypi,firmware", 0);
- if (!firmware_node) {
- dev_err(dev, "Missing firmware node\n");
- return -ENOENT;
- }
-
- firmware = rpi_firmware_get(firmware_node);
-- of_node_put(firmware_node);
- if (!firmware)
- return -EPROBE_DEFER;
-
-@@ -300,9 +298,16 @@ static int raspberrypi_clk_remove(struct
- return 0;
- }
-
-+static const struct of_device_id raspberrypi_clk_match[] = {
-+ { .compatible = "raspberrypi,firmware-clocks" },
-+ { },
-+};
-+MODULE_DEVICE_TABLE(of, raspberrypi_clk_match);
-+
- static struct platform_driver raspberrypi_clk_driver = {
- .driver = {
- .name = "raspberrypi-clk",
-+ .of_match_table = raspberrypi_clk_match,
- },
- .probe = raspberrypi_clk_probe,
- .remove = raspberrypi_clk_remove,