diff options
| author | Dmitry Rokosov <ddrokosov@salutedevices.com> | 2026-03-04 18:34:37 +0300 |
|---|---|---|
| committer | Dmitry Rokosov <rockosov@rulkc.org> | 2026-08-13 14:41:35 +0300 |
| commit | 7cc03702245965fda6d41aaa8fd13bd9b5e6f4f5 (patch) | |
| tree | 5b6e788325721d4efd4581e343dabf0cd22df898 | |
| parent | 18d6749cd5879a80554f27fcb9530e9efce43752 (diff) | |
| download | linux-7cc03702245965fda6d41aaa8fd13bd9b5e6f4f5.tar.gz linux-7cc03702245965fda6d41aaa8fd13bd9b5e6f4f5.zip | |
clk: meson: a1: audio: use meson common reset auxiliary driver
Remove the implementation of the reset driver in a1 audio clock driver
and migrate to the one provided by reset framework on the auxiliary bus.
Signed-off-by: Dmitry Rokosov <rockosov@rulkc.org>
| -rw-r--r-- | drivers/clk/meson/Kconfig | 1 | ||||
| -rw-r--r-- | drivers/clk/meson/a1-audio.c | 14 |
2 files changed, 9 insertions, 6 deletions
diff --git a/drivers/clk/meson/Kconfig b/drivers/clk/meson/Kconfig index 753bb13ca404..8e5e92bb88c0 100644 --- a/drivers/clk/meson/Kconfig +++ b/drivers/clk/meson/Kconfig @@ -149,7 +149,6 @@ config COMMON_CLK_A1_AUDIO select COMMON_CLK_MESON_CLKC_UTILS select COMMON_CLK_MESON_PHASE select COMMON_CLK_MESON_SCLK_DIV - select COMMON_CLK_MESON_AUDIO_RSTC help Support for the Audio clock controller on Amlogic A113L based device, A1 SoC Family. Say Y if you want A1 Audio clock controller diff --git a/drivers/clk/meson/a1-audio.c b/drivers/clk/meson/a1-audio.c index 9f00a3adb83c..f45737f0458e 100644 --- a/drivers/clk/meson/a1-audio.c +++ b/drivers/clk/meson/a1-audio.c @@ -5,6 +5,7 @@ * Author: Jan Dakinevich <jan.dakinevich@salutedevices.com> */ +#include <linux/auxiliary_bus.h> #include <linux/clk.h> #include <linux/clk-provider.h> #include <linux/init.h> @@ -17,7 +18,6 @@ #include <linux/slab.h> #include "meson-clkc-utils.h" -#include "meson-audio-rstc.h" #include "clk-regmap.h" #include "clk-phase.h" #include "sclk-div.h" @@ -485,6 +485,7 @@ static int a1_register_clk(struct platform_device *pdev, static int a1_audio_clkc_probe(struct platform_device *pdev) { struct device *dev = &pdev->dev; + struct auxiliary_device *auxdev; struct regmap *map0, *map1; struct clk *clk; unsigned int i; @@ -530,10 +531,13 @@ static int a1_audio_clkc_probe(struct platform_device *pdev) if (ret) return ret; - BUILD_BUG_ON((unsigned long)AUDIO_REG_MAP(AUDIO_SW_RESET0) != - AUDIO_RANGE_0); - return meson_audio_rstc_register(&pdev->dev, map0, - AUDIO_REG_OFFSET(AUDIO_SW_RESET0), 32); + /* Register auxiliary reset driver */ + auxdev = __devm_auxiliary_device_create(dev, dev->driver->name, + "rst-a1", NULL, 0); + if (!auxdev) + return -ENODEV; + + return 0; } static const struct of_device_id a1_audio_clkc_match_table[] = { |
