From: Michael Haas <haas@computerlinguist.org>
To: u-boot@lists.denx.de
Subject: [U-Boot] Linux hangs due to commit v2015.10-15-g02cc27c on loading i2c-mv64xx
Date: Fri, 25 Mar 2016 08:59:29 +0100 [thread overview]
Message-ID: <56F4EFE1.3070009@computerlinguist.org> (raw)
In-Reply-To: <56EEF6CA.7070907@redhat.com>
On 03/20/2016 08:15 PM, Hans de Goede wrote:
> > I'm running Debian Jessie with Linux 4.3.0-0.bpo.1-armmp-lpae on my
> > a20-olinuxino-lime2.
> > I have noticed that my board hangs with my recent u-boot versions
> when I
> > load the i2c module.
> >
> > git-bisect narrowed the problem down to the following commit:
> >
> > 02cc27c74f9b884b538bcd1b93342a4c05b5d608 is the first bad commit
> > commit 02cc27c74f9b884b538bcd1b93342a4c05b5d608
> > Author: Hans de Goede <hdegoede@redhat.com>
> > Date: Sat Oct 3 15:29:24 2015 +0200
> >
> > sunxi: power: Change axp209 LDO3 and LDO4 default to disabled
>
> <Snip>
>
> > The axp209 is attached to the i2c bus, so that is likely the real
> > culprit. In my setup, the axp209 drivers are loaded before I insert
> > i2c-mv64xxx.
> >
> > What would be the best course of action here?
> >
> > * Revert the commit
> > * Enable LDO3 and LDO4 for the a20-olinuxino-lime2 only?
> > * Fix linux
>
> I would go for option 3: "Fix linux", looking at the lime2 dts I see:
>
> vcc_csi0: ldo3 {
> regulator-min-microvolt = <700000>;
> regulator-max-microvolt = <3500000>;
> regulator-always-on;
> };
>
> vcc_csi1: ldo4 {
> regulator-min-microvolt = <1250000>;
> regulator-max-microvolt = <3300000>;
> regulator-always-on;
> };
>
> The regulator-always-on will cause both regulators to get turned on,
> but the min / max constraints match the datasheet constrains / the
> absolute min / max values these ldo-s can deliver, not the constraints
> which the board design puts on these.
>
> So now these ldo-s end up getting turned on at whatever voltage
> is the default (which according to the datasheet is unknown),
> where as the schematic says that if these get turned on (which
> is not necessary) they should be run at 2.8V.
>
> This dts file is the only axp209 using dts file which:
>
> 1) Does not have proper constraints for LDO3 / LDO4
> 2) Uses regulator-always-on; for these
>
> I would suggest fixing both, first you can try making min = max =
> 2800000. And if that fixes things, which I expect it will, I would
> also drop the regulator-always-on from the dts, since we really
> only need to turn these on when using the csi interface in which
> case it would be up to the csi driver to explicitly turn them on.
>
Setting the voltage to 2.8V does not seem to fix things. Dropping the
'regulator-always-on' stance does allow me to
load and use i2c-mv64xx and axp20x-i2c.
Is that something I should submit upstream or is there further
investigation needed why simply setting a proper voltage
does not work?
Thanks!
Michael
next prev parent reply other threads:[~2016-03-25 7:59 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-20 19:15 [U-Boot] Linux hangs due to commit v2015.10-15-g02cc27c on loading i2c-mv64xx Hans de Goede
2016-03-25 7:59 ` Michael Haas [this message]
2016-03-28 13:02 ` Hans de Goede
-- strict thread matches above, loose matches on Subject: below --
2016-03-20 15:56 Michael Haas
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=56F4EFE1.3070009@computerlinguist.org \
--to=haas@computerlinguist.org \
--cc=u-boot@lists.denx.de \
/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