diff options
| author | Tom Rini <[email protected]> | 2026-06-11 08:01:22 -0600 |
|---|---|---|
| committer | Tom Rini <[email protected]> | 2026-06-11 08:01:22 -0600 |
| commit | a566d32693600bbbe405ca5a7f4ab07f71f45e86 (patch) | |
| tree | fb15ac93913aafd6c7720d81405fb366eed08ed5 /drivers | |
| parent | 69491eb60a86e68fac304a7f1f9ff9fcd05f0d39 (diff) | |
Revert "clk: enhance clk-gpio to also handle gated-fixed-clock"
I had missed the review comments from Jonas Karlman when applying this,
it's not yet ready for inclusion.
This reverts commit 4e249b94af928aca29972fc22ef2b5ed0016eab9.
Signed-off-by: Tom Rini <[email protected]>
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/clk/clk-gpio.c | 29 |
1 files changed, 7 insertions, 22 deletions
diff --git a/drivers/clk/clk-gpio.c b/drivers/clk/clk-gpio.c index b7abc891ed2..4ed14306575 100644 --- a/drivers/clk/clk-gpio.c +++ b/drivers/clk/clk-gpio.c @@ -6,7 +6,6 @@ #include <clk.h> #include <clk-uclass.h> #include <dm.h> -#include <power/regulator.h> #include <linux/clk-provider.h> #include <asm/gpio.h> @@ -14,18 +13,14 @@ struct clk_gpio_priv { struct gpio_desc enable; /* GPIO, controlling the gate */ struct clk *clk; /* Gated clock */ - struct udevice *vdd_supply; }; static int clk_gpio_enable(struct clk *clk) { struct clk_gpio_priv *priv = dev_get_priv(clk->dev); - if (priv->clk) - clk_enable(priv->clk); - - if (priv->enable.dev) - dm_gpio_set_value(&priv->enable, 1); + clk_enable(priv->clk); + dm_gpio_set_value(&priv->enable, 1); return 0; } @@ -34,11 +29,8 @@ static int clk_gpio_disable(struct clk *clk) { struct clk_gpio_priv *priv = dev_get_priv(clk->dev); - if (priv->enable.dev) - dm_gpio_set_value(&priv->enable, 0); - - if (priv->clk) - clk_disable(priv->clk); + dm_gpio_set_value(&priv->enable, 0); + clk_disable(priv->clk); return 0; } @@ -47,7 +39,7 @@ static ulong clk_gpio_get_rate(struct clk *clk) { struct clk_gpio_priv *priv = dev_get_priv(clk->dev); - return (priv->clk) ? clk_get_rate(priv->clk) : -1; + return clk_get_rate(priv->clk); } const struct clk_ops clk_gpio_ops = { @@ -65,7 +57,7 @@ static int clk_gpio_probe(struct udevice *dev) if (IS_ERR(priv->clk)) { log_debug("%s: Could not get gated clock: %ld\n", __func__, PTR_ERR(priv->clk)); - priv->clk = 0; + return PTR_ERR(priv->clk); } ret = gpio_request_by_name(dev, "enable-gpios", 0, @@ -73,15 +65,9 @@ static int clk_gpio_probe(struct udevice *dev) if (ret) { log_debug("%s: Could not decode enable-gpios (%d)\n", __func__, ret); + return ret; } - ret = device_get_supply_regulator(dev, "vdd-supply", - &priv->vdd_supply); - if (ret == 0) - ret = regulator_set_enable(priv->vdd_supply, true); - - log_debug("%s: %s regulator = %d\n", __func__, dev->name, ret); - return 0; } @@ -94,7 +80,6 @@ static int clk_gpio_probe(struct udevice *dev) */ static const struct udevice_id clk_gpio_match[] = { { .compatible = "gpio-gate-clock" }, - { .compatible = "gated-fixed-clock" }, { /* sentinel */ } }; |
