From: Mark Brown <broonie-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
To: Stefan Wahren <stefan.wahren-eS4NqCHxEME@public.gmane.org>
Cc: lgirdwood-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org,
robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org,
pawel.moll-5wv7dgnIgG8@public.gmane.org,
mark.rutland-5wv7dgnIgG8@public.gmane.org,
ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org,
galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org,
festevam-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
kernel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org
Subject: Re: [PATCH 2/2] regulator: add mxs regulator driver
Date: Mon, 29 Sep 2014 18:13:14 +0100 [thread overview]
Message-ID: <20140929171314.GW16977@sirena.org.uk> (raw)
In-Reply-To: <5428FE7B.8060700-eS4NqCHxEME@public.gmane.org>
[-- Attachment #1: Type: text/plain, Size: 2452 bytes --]
On Mon, Sep 29, 2014 at 08:38:51AM +0200, Stefan Wahren wrote:
> I'm searching for a good regulator implementation example.
> Does it apply to ti-abb-regulator.c and twl-regulator.c?
Possibly. But bear in mind that it's important to understand the
hardware you're trying to support.
> > This really needs a comment to explain what on earth is going on here -
> > the whole thing with writing the same thing twice with two delays is
> > more than a little odd. It looks like the driver is trying to busy wait
> > in cases where the change happens quickly but the comments about "fast"
> > and "normal" mode make this unclear.
> The regulator driver polls for the DC_OK bit in the power status register.
> Quote for reference manual (p. 935): "High when switching DC-DC
> converter control loop has stabilized after a voltage target change."
> The two loops comes from the different regulator modes
> (REGULATOR_MODE_FAST, REGULATOR_MODE_NORMAL).
> In REGULATOR_MODE_FAST the voltage steping is disabled and changing
> voltage should be fast. In REGULATOR_MODE_NORMAL voltage steping is
> enabled and it's take a while for reaching the target voltage.
I don't think you've fully understood what the different modes mean
here, that's not normally how a buck convertor works. The different
modes would typically control the ability of the regulator to respond
quickly to changes in load without drifting off regulation, fast mode
makes the regulator less efficient but more responsive to load changes
(probably marginally with modern regulators). It should have relatively
little to do with the ability to ramp the voltage and certainly not on
the scale there.
> Do you see more a problem with the two different loops or the redundant
> register write?
Both. The code right now just looks really obscure.
> if (readl(sreg->base_addr) & sreg->mode_mask)
> return REGULATOR_MODE_FAST;
> return REGULATOR_MODE_NORMAL;
> Better?
Yes.
> > Why is this not looked up from the data structure like the rest of the
> > data?
> I was a little bit confused why there wasn't a mode_mask in the struct
> regulator_desc. I will do it like the ti-abb-regulator in the matching
> table.
There's no helpers for setting modes.
> >> + regulator_unregister(rdev);
> >> + iounmap(power_addr);
> >> + iounmap(base_addr);
> > Use devm_ versions of functions.
> As a result the remove function for the drivers becomes unnecessary. Am
> i right?
Yes.
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 473 bytes --]
next prev parent reply other threads:[~2014-09-29 17:13 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-27 0:59 [PATCH 0/2] regulator: add support for mxs regulator Stefan Wahren
2014-09-27 0:59 ` [PATCH 1/2] DT: add binding " Stefan Wahren
[not found] ` <1411779588-22031-2-git-send-email-stefan.wahren-eS4NqCHxEME@public.gmane.org>
2014-09-28 10:22 ` Mark Brown
[not found] ` <20140928102202.GM27755-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2014-09-29 6:00 ` Stefan Wahren
[not found] ` <5428F592.3020809-eS4NqCHxEME@public.gmane.org>
2014-09-29 10:23 ` Mark Brown
2014-09-29 11:09 ` Mark Rutland
2014-09-29 11:53 ` Stefan Wahren
[not found] ` <54294832.8000702-eS4NqCHxEME@public.gmane.org>
2014-09-29 12:41 ` Mark Rutland
2014-09-29 13:10 ` Stefan Wahren
2014-09-29 13:23 ` Mark Rutland
2014-10-03 11:46 ` Stefan Wahren
2014-09-27 0:59 ` [PATCH 2/2] regulator: add mxs regulator driver Stefan Wahren
2014-09-28 10:16 ` Mark Brown
2014-09-29 6:38 ` Stefan Wahren
[not found] ` <5428FE7B.8060700-eS4NqCHxEME@public.gmane.org>
2014-09-29 17:13 ` Mark Brown [this message]
[not found] ` <20140929171314.GW16977-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2014-09-30 6:40 ` Stefan Wahren
2014-10-01 13:23 ` Stefan Wahren
2014-10-01 15:57 ` Mark Brown
2014-10-02 16:18 ` Fabio Estevam
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=20140929171314.GW16977@sirena.org.uk \
--to=broonie-dgejt+ai2ygdnm+yrofe0a@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=festevam-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
--cc=ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org \
--cc=kernel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org \
--cc=lgirdwood-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=mark.rutland-5wv7dgnIgG8@public.gmane.org \
--cc=pawel.moll-5wv7dgnIgG8@public.gmane.org \
--cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=stefan.wahren-eS4NqCHxEME@public.gmane.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).