Re: [PATCH v3] mfd: syscon: Add Spreadtrum physical regmap bus support

From: Baolin Wang
Date: Tue May 19 2020 - 09:10:59 EST


On Tue, May 19, 2020 at 6:35 PM Lee Jones <lee.jones@xxxxxxxxxx> wrote:
>
> On Mon, 04 May 2020, Baolin Wang wrote:
>
> > Hi Arnd
> >
> > On Tue, Apr 28, 2020 at 4:41 PM Baolin Wang <baolin.wang7@xxxxxxxxx> wrote:
> > >
> > > On Tue, Apr 28, 2020 at 4:19 PM Lee Jones <lee.jones@xxxxxxxxxx> wrote:
> > > >
> > > > On Tue, 28 Apr 2020, Baolin Wang wrote:
> > > >
> > > > > On Tue, Apr 28, 2020 at 3:14 PM Lee Jones <lee.jones@xxxxxxxxxx> wrote:
> > > > > >
> > > > > > On Tue, 28 Apr 2020, Baolin Wang wrote:
> > > > > >
> > > > > > > On Mon, Apr 27, 2020 at 5:05 PM Lee Jones <lee.jones@xxxxxxxxxx> wrote:
> > > > > > > >
> > > > > > > > On Mon, 27 Apr 2020, Baolin Wang wrote:
> > > > > > > >
> > > > > > > > > Hi Arnd and Lee,
> > > > > > > > >
> > > > > > > > > On Tue, Apr 21, 2020 at 10:13 PM Baolin Wang <baolin.wang7@xxxxxxxxx> wrote:
> > > > > > > > > >
> > > > > > > > > > Some platforms such as Spreadtrum platform, define a special method to
> > > > > > > > > > update bits of the registers instead of read-modify-write, which means
> > > > > > > > > > we should use a physical regmap bus to define the reg_update_bits()
> > > > > > > > > > operation instead of the MMIO regmap bus. Thus we can register a new
> > > > > > > > > > physical regmap bus into syscon core to support this.
> > > > > > > > > >
> > > > > > > > > > Signed-off-by: Baolin Wang <baolin.wang7@xxxxxxxxx>
> > > > > > > > >
> > > > > > > > > Do you have any comments for this patch? Thanks.
> > > > > > > >
> > > > > > > > Yes. I'm not accepting it, sorry.
> > > > > > > >
> > > > > > > > I'd rather you duplicate the things you need from of_syscon_register()
> > > > > > > > in your own driver than taint this one.
> > > > > > >
> > > > > > > Thanks for your comments and I can understand your concern. But we
> > > > > > > still want to use the standard syscon APIs in syscon.c, which means we
> > > > > > > still need insert an callback or registration or other similar methods
> > > > > > > to support vendor specific regmap bus. Otherwise we should invent some
> > > > > > > similar syscon APIs in our vendor syscon driver, like
> > > > > > > sprd_syscon_regmap_lookup_by_phandle/sprd_syscon_regmap_lookup_by_compatible.
> > > > > >
> > > > > > So long as the generic driver stays generic. Providing a registration
> > > > > > function sounds cleaner than tainting the code with vendor specifics.
> > > > >
> > > > > So seems my V1 patch set [1] was on the direction as you suggested,
> > > > > but Arnd did not like that.
> > > > >
> > > > > [1]
> > > > > https://lore.kernel.org/patchwork/patch/1226161/
> > > > > https://lore.kernel.org/patchwork/patch/1226162/
> > > >
> > > > I don't often disagree with Arnd, but in this instance I think a
> > > > registration function which allows vendor spin-offs to use the generic
> > > > API is better than tainting the generic driver by adding vendor
> > > > specific #ifery/code to it.
> > > >
> > > > Your original idea seems more palatable to me.
> > >
> > > OK, thanks for sharing your opinion. Let's see what Arnd's opinion
> > > before I send out new version.
> >
> > Do yo have any comments about how to add new bits updating method? Can
> > I re-send my v1 patch set [1]? Thanks.
>
> Just resend and we'll review.

Yes, I already sent out the v4 patch set.
https://lore.kernel.org/patchwork/patch/1242814/
https://lore.kernel.org/patchwork/patch/1242815/

--
Baolin Wang