2024-04-19 13:01:07

by Jan Dakinevich

[permalink] [raw]
Subject: [RFC PATCH v3 3/6] clk: meson: axg: introduce AUD_MUX_TABLE() helper macro

This macro takes into account ->table property of
'struct clk_regmap_mux_data'.

Signed-off-by: Jan Dakinevich <[email protected]>
---
drivers/clk/meson/meson-audio.h | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/clk/meson/meson-audio.h b/drivers/clk/meson/meson-audio.h
index cbcdbd487d4a..1947c6cbf233 100644
--- a/drivers/clk/meson/meson-audio.h
+++ b/drivers/clk/meson/meson-audio.h
@@ -17,9 +17,11 @@
}, \
}

-#define AUD_MUX(_name, _reg, _mask, _shift, _dflags, _pdata, _iflags) { \
+#define AUD_MUX_TABLE(_name, _reg, _table, _mask, _shift, _dflags, \
+ _pdata, _iflags) { \
.data = &(struct clk_regmap_mux_data){ \
.offset = (_reg), \
+ .table = (_table), \
.mask = (_mask), \
.shift = (_shift), \
.flags = (_dflags), \
@@ -33,6 +35,10 @@
}, \
}

+#define AUD_MUX(_name, _reg, _mask, _shift, _dflags, _pdata, _iflags) \
+ AUD_MUX_TABLE(_name, (_reg), NULL, (_mask), (_shift), \
+ (_dflags), (_pdata), (_iflags))
+
#define AUD_DIV(_name, _reg, _shift, _width, _dflags, _pname, _iflags) { \
.data = &(struct clk_regmap_div_data){ \
.offset = (_reg), \
--
2.34.1



2024-04-22 08:10:53

by Jerome Brunet

[permalink] [raw]
Subject: Re: [RFC PATCH v3 3/6] clk: meson: axg: introduce AUD_MUX_TABLE() helper macro


On Fri 19 Apr 2024 at 15:58, Jan Dakinevich <[email protected]> wrote:

> This macro takes into account ->table property of
> 'struct clk_regmap_mux_data'.

Useless if the interface of controller is fixed.

>
> Signed-off-by: Jan Dakinevich <[email protected]>
> ---
> drivers/clk/meson/meson-audio.h | 8 +++++++-
> 1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/clk/meson/meson-audio.h b/drivers/clk/meson/meson-audio.h
> index cbcdbd487d4a..1947c6cbf233 100644
> --- a/drivers/clk/meson/meson-audio.h
> +++ b/drivers/clk/meson/meson-audio.h
> @@ -17,9 +17,11 @@
> }, \
> }
>
> -#define AUD_MUX(_name, _reg, _mask, _shift, _dflags, _pdata, _iflags) { \
> +#define AUD_MUX_TABLE(_name, _reg, _table, _mask, _shift, _dflags, \
> + _pdata, _iflags) { \
> .data = &(struct clk_regmap_mux_data){ \
> .offset = (_reg), \
> + .table = (_table), \
> .mask = (_mask), \
> .shift = (_shift), \
> .flags = (_dflags), \
> @@ -33,6 +35,10 @@
> }, \
> }
>
> +#define AUD_MUX(_name, _reg, _mask, _shift, _dflags, _pdata, _iflags) \
> + AUD_MUX_TABLE(_name, (_reg), NULL, (_mask), (_shift), \
> + (_dflags), (_pdata), (_iflags))
> +
> #define AUD_DIV(_name, _reg, _shift, _width, _dflags, _pname, _iflags) { \
> .data = &(struct clk_regmap_div_data){ \
> .offset = (_reg), \


--
Jerome