Re: [RESEND PATCH 1/3] power: charger-manager: Replace deprecatd API of extcon

From: Chanwoo Choi
Date: Mon Apr 18 2016 - 01:42:22 EST


Hi Sebastian,

On 2016ë 04ì 15ì 23:13, Sebastian Reichel wrote:
> Hi,
>
> On Fri, Apr 15, 2016 at 09:43:34AM +0900, Chanwoo Choi wrote:
>> This patch removes the deprecated notifier API of extcon framework and then use
>> the new extcon API[2] with the unique id[1] to indicate the each external
>> connector. Alter deprecated API as following:
>> - extcon_register_interest() -> extcon_register_notifier()
>> - extcon_unregister_interest() -> extcon_unregister_notifier()
>>
>> And, extcon alters the name of USB charger connector in patch[3] as following:
>> - EXTCON_CHG_USB_SDP /* Standard Downstream Port */
>> - EXTCON_CHG_USB_DCP /* Dedicated Charging Port */
>> - EXTCON_CHG_USB_CDP /* Charging Downstream Port */
>> - EXTCON_CHG_USB_ACA /* Accessory Charger Adapter */
>>
>> So, the name of external charger connector are changed as following:
>> - "USB" -> "SDP"
>> - "TA" -> "DCP"
>>
>> [1] Commit 2a9de9c0f08d61
>> - ("extcon: Use the unique id for external connector instead of string)
>> [2] Commit 046050f6e623e4
>> - ("extcon: Update the prototype of extcon_register_notifier() with enum extcon
>> [3] Commit 11eecf910bd81d
>> - ("extcon: Modify the id and name of external connector")
>>
>> Signed-off-by: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>
>> ---
>> .../bindings/power_supply/charger-manager.txt | 4 +--
>> drivers/power/charger-manager.c | 31 ++++++++++++++--------
>> include/linux/power/charger-manager.h | 4 +--
>> 3 files changed, 24 insertions(+), 15 deletions(-)
>>
>> diff --git a/Documentation/devicetree/bindings/power_supply/charger-manager.txt b/Documentation/devicetree/bindings/power_supply/charger-manager.txt
>> index ec4fe9de3137..73193e380dc2 100644
>> --- a/Documentation/devicetree/bindings/power_supply/charger-manager.txt
>> +++ b/Documentation/devicetree/bindings/power_supply/charger-manager.txt
>> @@ -65,13 +65,13 @@ Example :
>> regulator@0 {
>> cm-regulator-name = "chg-reg";
>> cable@0 {
>> - cm-cable-name = "USB";
>> + cm-cable-id = 5; /* EXTCON_CHG_USB_SDP */
>> cm-cable-extcon = "extcon-dev.0";
>> cm-cable-min = <475000>;
>> cm-cable-max = <500000>;
>> };
>> cable@1 {
>> - cm-cable-name = "TA";
>> + cm-cable-id = 6; /* EXTCON_CHG_USB_DCP */
>> cm-cable-extcon = "extcon-dev.0";
>> cm-cable-min = <650000>;
>> cm-cable-max = <675000>;
>
> This breaks DT ABI. Looks like charger-manager is not used in
> mainline,but I guess ther should be an explicit Acked-By from
> a DT binding maintainer.

As I mentioned on other mail to Rob, the purpose of this patch
removes the deprecated the EXTCON APIs. So, I touched the DT binding.

About DT ABI about charger-manager, we should handle it on separate patches.

Also I think the defines should be in
> some header includable from DTS, so that something like this
> can be done:
>
> cm-cable-id = <CHARGER_USB_DCP>;


I agree to use some definition for the kind of charger cable.
But, Not yet. I'm preparing the EXTCON update to use the definitions
on Device Tree file. I'll send some separate patches in the near future.
>
> Apart from that:
>
> Acked-By: Sebastian Reichel <sre@xxxxxxxxxx>

Thanks for review.

Best Regards,
Chanwoo Choi