[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <01aff9c0f129f8c1cf41c7ae53dac38048aa34a8.camel@pengutronix.de>
Date: Mon, 30 Sep 2024 18:56:05 +0200
From: Philipp Zabel <p.zabel@...gutronix.de>
To: Jerome Brunet <jbrunet@...libre.com>
Cc: Stephen Boyd <sboyd@...nel.org>, Neil Armstrong
<neil.armstrong@...aro.org>, Kevin Hilman <khilman@...libre.com>, Martin
Blumenstingl <martin.blumenstingl@...glemail.com>, Jiucheng Xu
<jiucheng.xu@...ogic.com>, linux-arm-kernel@...ts.infradead.org,
linux-amlogic@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v5 8/9] reset: amlogic: split the device core and
platform probe
On Fr, 2024-09-13 at 08:53 +0200, Jerome Brunet wrote:
> On Thu 12 Sep 2024 at 10:12, Philipp Zabel <p.zabel@...gutronix.de> wrote:
>
> > On Di, 2024-09-10 at 18:32 +0200, Jerome Brunet wrote:
> > > To prepare the addition of the auxiliary device support, split
> > > out the device coomon functions from the probe of the platform device.
> > >
> > > The device core function will be common to both the platform and auxiliary
> > > driver.
> > >
> > > Signed-off-by: Jerome Brunet <jbrunet@...libre.com>
> > > ---
> > > drivers/reset/amlogic/Kconfig | 7 +-
> > > drivers/reset/amlogic/Makefile | 1 +
> > > drivers/reset/amlogic/reset-meson-common.c | 121 ++++++++++++++++++++++++++++
> > > drivers/reset/amlogic/reset-meson.c | 122 ++++-------------------------
> > > drivers/reset/amlogic/reset-meson.h | 24 ++++++
> > > 5 files changed, 167 insertions(+), 108 deletions(-)
> > >
> > > diff --git a/drivers/reset/amlogic/Kconfig b/drivers/reset/amlogic/Kconfig
> > > index 532e6a4f7865..1d77987088f4 100644
> > > --- a/drivers/reset/amlogic/Kconfig
> > > +++ b/drivers/reset/amlogic/Kconfig
> > > @@ -1,10 +1,15 @@
> > > +config RESET_MESON_COMMON
> > > + tristate
> > > + select REGMAP
> > > +
> > > config RESET_MESON
> > > tristate "Meson Reset Driver"
> > > depends on ARCH_MESON || COMPILE_TEST
> > > default ARCH_MESON
> > > select REGMAP_MMIO
> > > + select RESET_MESON_COMMON
> > > help
> > > - This enables the reset driver for Amlogic Meson SoCs.
> > > + This enables the reset driver for Amlogic SoCs.
> > >
> > > config RESET_MESON_AUDIO_ARB
> > > tristate "Meson Audio Memory Arbiter Reset Driver"
> > > diff --git a/drivers/reset/amlogic/Makefile b/drivers/reset/amlogic/Makefile
> > > index 55509fc78513..74aaa2fb5e13 100644
> > > --- a/drivers/reset/amlogic/Makefile
> > > +++ b/drivers/reset/amlogic/Makefile
> > > @@ -1,2 +1,3 @@
> > > obj-$(CONFIG_RESET_MESON) += reset-meson.o
> > > +obj-$(CONFIG_RESET_MESON_COMMON) += reset-meson-common.o
> > > obj-$(CONFIG_RESET_MESON_AUDIO_ARB) += reset-meson-audio-arb.o
> > > diff --git a/drivers/reset/amlogic/reset-meson-common.c b/drivers/reset/amlogic/reset-meson-common.c
> > > new file mode 100644
> > > index 000000000000..d57544801ae9
> > > --- /dev/null
> > > +++ b/drivers/reset/amlogic/reset-meson-common.c
> > > @@ -0,0 +1,121 @@
> > > +// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
> > > +/*
> > > + * Amlogic Meson Reset core functions
> > > + *
> > > + * Copyright (c) 2016-2024 BayLibre, SAS.
> > > + * Authors: Neil Armstrong <narmstrong@...libre.com>
> > > + * Jerome Brunet <jbrunet@...libre.com>
> > > + */
> > > +
> > > +#include <linux/device.h>
> > > +#include <linux/module.h>
> > > +#include <linux/regmap.h>
> > > +#include <linux/reset-controller.h>
> > > +
> > > +#include "reset-meson.h"
> > > +
> > > +struct meson_reset {
> > > + const struct meson_reset_param *param;
> > > + struct reset_controller_dev rcdev;
> > > + struct regmap *map;
> > > +};
> > > +
> > > +static void meson_reset_offset_and_bit(struct meson_reset *data,
> > > + unsigned long id,
> > > + unsigned int *offset,
> > > + unsigned int *bit)
> > > +{
> > > + unsigned int stride = regmap_get_reg_stride(data->map);
> > > +
> > > + *offset = (id / (stride * BITS_PER_BYTE)) * stride;
> > > + *bit = id % (stride * BITS_PER_BYTE);
> > > +}
> > > +
> > > +static int meson_reset_reset(struct reset_controller_dev *rcdev,
> > > + unsigned long id)
> >
> > checkpatch --strict complains about the alignment here.
> > I'll fix this up when applying, no need to resend.
>
> Thanks Philipp.
>
> FYI, those mis-alignement were already present in the original code and
> there has been comments when I re-indented code while moving it
> around so I did not touch it.
Oh, ok.
I've applied them to reset/next them unchanged, at:
https://git.pengutronix.de/cgit/pza/linux/commit/?id=5b93105afcdc
and sent a follow-up patch to fix the alignment.
regards
Philipp
Powered by blists - more mailing lists