[U-Boot] [PATCH 3/7] sunxi: power: Unify axp pmic function names

Chen-Yu Tsai wens at csie.org
Fri Oct 9 16:49:31 CEST 2015


Hi,

On Fri, Oct 9, 2015 at 8:41 PM, Ian Campbell <ijc+uboot at hellion.org.uk> wrote:
> On Fri, 2015-10-09 at 13:24 +0200, Hans de Goede wrote:
>> Hi,
>>
>> On 09-10-15 10:31, Ian Campbell wrote:
>> > On Sat, 2015-10-03 at 22:16 +0200, Hans de Goede wrote:
>> > > Hi,
>> > >
>> > > On 03-10-15 16:32, Chen-Yu Tsai wrote:
>> > > > On Sat, Oct 3, 2015 at 10:26 PM, Hans de Goede <hdegoede at redhat.com
>> > > > >
>> > > > wrote:
>> > > > > Stop prefixing the axp functions for setting voltages, etc. with
>> > > > > the
>> > > > > model number, there ever is only one pmic driver built into u
>> > > > > -boot,
>> > > > > this allows simplifying the callers.
>> > > >
>> > > > Hmm... What's going to happen with the A80, which has 2 PMICs? IIRC
>> > > > a subset of their LDOs share the same name, which would be a
>> > > > problem.
>> > >
>> > > My plan for that is to use a different function name for the ldo-s
>> > > on the secondary pmic, e.g. something like axp2_set_xldo1(...), or
>> > > somesuch. Actually this patch should help adding support for the
>> > > other pmics since it will make it less of an #ifdef fest.
>> >
>> > Is it going to be (or very likely to be) the case that a given AXPxxx
>> > device will only ever be a primary or a secondary,  but never used as
>> > both
>> > (perhaps on different boards)?
>>
>> AFAIK that is correct, there are different axp models for primary / secondary
>> pmics.
>
> OK, that makes sense, but then this:
>
>>  Some a80 / a83 boards may only use the primary pmic, but using only
>> the secondary is not really expected.
>
> ... makes me want to clarify, since I understand that having a secondary
> but not a primary would be rather strange and wasn't what I was getting at.
>
> What I meant was for a given AXPxxx is that model only ever either used as
> a primary _or_ used as a secondary (with some other AXPabc as the primary).
> I think your answer further above is telling me that yes, a given AXPxxx is
> either designed (and used) as a primary or a secondary.

Only the AXP806 is multi-role, i.e. can be primary or secondary. All the
others that we know of, excluding the AXP818 for which we have no docs,
are standalone PMICs.

And a system can also have multiple AXP806s, even on the same bus. This
is supported by some address extension register.

Having said the above, I really don't expect to see these kinds of designs
in the wild.

> From the patch #1 discussion (since it is predicated on the above and
> splitting the conversation in two will probably just get confusing):
>
>> > ... these three ought to be inside a choice?
>>
>> I was thinking the same, but on A80 boards there are 2
>> different axp chips, so if we make this a choice now we
>> just end up needing to revert this when we get full A80 support.
>
> But one of those would be a primary and the other a secondary, and as
> discussed above (as I currently understand it at least) each
> CONFIG_AXPxxx_POWER can be a primary XOR a secondary.
>
> In which case what we would want is a set of choice options for primary and
> a separate set choice options for secondary (with a none option too in this
> case) and there would be no duplication of any specific AXPxxx option
> between both the primary and secondary sets.

AFAIK, all the AXPs except AXP806 belong in the primary list. The secondary
set should only have AXP806, at least until Allwinner delivers some Cortex-A57
or Cortex-A72 design that needs the extra power of a secondary PMIC.

Regards
ChenYu


More information about the U-Boot mailing list