All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Vaittinen, Matti" <Matti.Vaittinen@fi.rohmeurope.com>
To: "broonie@kernel.org" <broonie@kernel.org>
Cc: "mazziesaccount@gmail.com" <mazziesaccount@gmail.com>,
	"mark.rutland@arm.com" <mark.rutland@arm.com>,
	"linus.walleij@linaro.org" <linus.walleij@linaro.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"Mutanen, Mikko" <Mikko.Mutanen@fi.rohmeurope.com>,
	"sre@kernel.org" <sre@kernel.org>,
	"Laine, Markus" <Markus.Laine@fi.rohmeurope.com>,
	"linux-pm@vger.kernel.org" <linux-pm@vger.kernel.org>,
	"robh+dt@kernel.org" <robh+dt@kernel.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>
Subject: Re: [RFC PATCH 2/3] power: (regmap:) Add linear_range helper
Date: Fri, 14 Feb 2020 12:32:10 +0000	[thread overview]
Message-ID: <375c7756fca56de4f2f85d1a1a4e0b01dadc290b.camel@fi.rohmeurope.com> (raw)
In-Reply-To: <20200214114749.GB4827@sirena.org.uk>


On Fri, 2020-02-14 at 11:47 +0000, Mark Brown wrote:
> On Wed, Feb 12, 2020 at 06:56:37AM +0000, Vaittinen, Matti wrote:
> > On Tue, 2020-02-11 at 19:06 +0000, Mark Brown wrote:
> > > Note also that we already have quite extensive helpers for this
> > > sort
> > > of
> > > stuff in the regulator API which I sense may have been involved
> > > in
> > > this
> > > implementation
> > You sense well xD
> 
> If you're factoring stuff out of an existing implementation it'd be
> good
> to explicitly do that - this both shows where things came from and
> also
> means that you can show that the existing user works with the new
> code
> which is good.

True. But I didn't refactor the regulator code - I stole the idea and
wrote this thing in BD70528 power-supply driver. I didn't think of
creating generic helper until Linus W mentioned we should create one.

So now when I did the BD99954 driver and noticed I needed same helper
in power-supply area again I decided to get the implementation I did in
BD70528 driver and make it available for all. That was a low-hanging
fruit for me as I authored the BD70528 and know the linear-range code
was easy to pull out of the BD70528. Changing the regulator system was
not as easy for me - although it is doable.

> > But another option - which I thought only now - would be to see if
> > current regulator implementation could be re-named to more generic
> > and
> > placed under some more generic component (I thought of regmap but
> > as
> > you pointed out this is equally usefull for devices connected to
> > memory
> > mapped buses - so maybe under lib - if static inline functions in a
> > header are not a good option). I just have a feeling that the
> > linear-
> > ranges is currently kind of embedded in the code which is internal
> > to
> > regulator framework so it is probably not easily extracted from
> > regulator code?
> 
> It is a bit but I think that's solvable with some refactoring in
> place
> (eg, pushing things into a smaller struct embedded in the main
> regulator
> one and then moving them out).  I might look at it myself if nobody
> else
> gets to it first...

I need something like this in order to convert BD99954 current and
voltage values to register values. I will happily use what-ever you do
pull together - but if you don't feel like doing it now I might look at
the regulator part while I am working with BD99954 anyways. Please just
let me know if you want me to see if I can pull the range stuff out of
regulator area.

> > So if we do not start pulling the range code out of regulator
> > framework
> > (for now at least) - and if we do not place this under regmap -
> > then I
> > can drop you out of the recipient list for this charger driver in
> > order
> > to not pollute your inbox ;) How do you feel Mark, do you want to
> > be
> > following this series?
> 
> Well, if there's a refactoring out of the regulator code going on
> I'll
> need to look at that anyway.

My first idea was not to change the regulators now - hence I asked if I
should drop you. But I definitely need your support if we decide to
refactor the regulator code in this series and create these common
helpers out of it.

Br,
	Matti Vaittinen

  reply	other threads:[~2020-02-14 12:32 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-10 12:11 [RFC PATCH 0/3] Support ROHM BD99954 charger IC Matti Vaittinen
2020-02-10 12:11 ` [RFC PATCH 1/3] dt_bindings: ROHM BD99954 Charger Matti Vaittinen
2020-02-10 13:00   ` Vaittinen, Matti
2020-02-10 12:13 ` [RFC PATCH 2/3] power: (regmap:) Add linear_range helper Matti Vaittinen
2020-02-11 19:06   ` Mark Brown
2020-02-12  6:56     ` Vaittinen, Matti
2020-02-14 11:47       ` Mark Brown
2020-02-14 12:32         ` Vaittinen, Matti [this message]
2020-02-18  7:23           ` Vaittinen, Matti
2020-02-18 13:49             ` Mark Brown
2020-02-19  8:14               ` Vaittinen, Matti
2020-02-10 12:13 ` [RFC PATCH 3/3] power: supply: Support ROHM bd99954 charger Matti Vaittinen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=375c7756fca56de4f2f85d1a1a4e0b01dadc290b.camel@fi.rohmeurope.com \
    --to=matti.vaittinen@fi.rohmeurope.com \
    --cc=Markus.Laine@fi.rohmeurope.com \
    --cc=Mikko.Mutanen@fi.rohmeurope.com \
    --cc=broonie@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=mazziesaccount@gmail.com \
    --cc=robh+dt@kernel.org \
    --cc=sre@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.