[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5052FA2E.20406@stericsson.com>
Date: Fri, 14 Sep 2012 15:04:38 +0530
From: Rajanikanth HV <rajanikanth.hv@...ricsson.com>
To: Arnd Bergmann <arnd@...db.de>
Cc: Anton Vorontsov <anton.vorontsov@...aro.org>,
Rajanikanth HV <rajanikanth.hv@...aro.org>,
Lee Jones <lee.jones@...aro.org>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Linus WALLEIJ <linus.walleij@...ricsson.com>,
STEricsson_nomadik_linux <STEricsson_nomadik_linux@...t.st.com>,
"linaro-dev@...ts.linaro.org" <linaro-dev@...ts.linaro.org>,
Patch Tracking <patches@...aro.org>,
Mathieu Poirier <mathieu.poirier@...aro.org>
Subject: Re: Implement devicetree support for AB8500 Btemp
On Friday 14 September 2012 01:39 PM, Arnd Bergmann wrote:
> On Friday 14 September 2012, Anton Vorontsov wrote:
>> Power supply subsystem's supplied_to describes not just how driver
>> should notify other devices, supplied_to is more generic stuff, in terms
>> that it describes power supply hierarchy. It's like a directed graph,
>> e.g.:
>>
>> <AC power> supplied_to <main battery> and <backup battery>
>> <USB power> supplied_to <main battery> and <backup battery>
>> <main battery> supplied_to <system>
>> <backup battery> supplied_to <system>
>> <cmos battery> supplied_to <southbridge pci device>
>> <mice battery> supplied_to <mice wireless hid>
>>
>> How things interact in linux are just implementations details.
>> So, device tree is surely a perfect place to describe these things.
>>
>> Although, in current bindings I see this:
>>
>> + ab8500-fg {
>> + /* Other enery management module */
>> + supplied_to = "ab8500_chargalg", "ab8500_usb";
>> + num_supplicants = <2>;
>> + };
>>
>> Instead of addressing supplicants by name, it's better to address
>> via phandles. And, of course, num_supplicants is not needed, it can
>> be derived.
>
> Right. that's what I thought. The other comment I made initially is
> that it would be more in the spirit of the existing bindings to have
> the supply property in the opposite directory, if we need it, like
> (picking up your above example):
>
>
> / {
> /* power supply property in the root node is used by default */
> power-supply = <&main-battery>, <&backup-battery>;
>
> ac-power: power@... {
> ...
> };
>
> usb-power: power@... {
> ...
> };
>
> main-battery: battery@... {
> power-supply = <&ac-power>, <&usb-power};
> ;
>
> ...
> };
>
> It's the same information and absolutely equivalent as far as I can tell,
> but it feel more logical in the way we tend to describe things.
>
> Arnd
>
phandle'd supplied-to will looks like:
usb: ab8500-usb {
};
battery : ab8500-bat-type {
battery-name = "unknown|NiMH|LION|LIPO|LiFe|NiCd|LiMn";
thermistor_on_batctrl = <1>;
};
chargalg: ab8500-chargalg {
compatible = "stericsson,ab8500-chargalg";
interface-name = "ab8500_chargalg";
battery-info = <&ab8500-bat-type>
supplied-to = <&ab8500_fg>;
...
};
fuelguage: ab8500-fg {
compatible = "stericsson,ab8500-fg";
interface-name = "ab8500_fg";
battery-info = <&ab8500-bat-type>
supplied-to = <&ab8500_chargalg &ab8500_usb>;
...
};
btemp: ab8500-btemp {
compatible = "stericsson,ab8500-fg";
interface-name = "ab8500_btemp";
battery-info = <&ab8500-bat-type>
supplied-to = <&ab8500_chargalg &ab8500_fg>;
...
};
charger: ab8500-charger {
compatible = "stericsson,ab8500-charger";
interface-name = "ab8500_charger";
battery-info = <&ab8500-bat-type>
supplied-to = <&ab8500_chargalg &ab8500_fg &ab8500_btemp>;
...
};
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists