>> >
>> >> >> +
>> >> >> + desc = &charger->desc;
>> >> >> + desc->name = "usb-charger";
>> >> >> + desc->properties = usb_charger_properties;
>> >> >> + desc->num_properties =
ARRAY_SIZE(usb_charger_properties);
>> >> >> + desc->get_property = usb_charger_get_property;
>> >> >> + desc->type = POWER_SUPPLY_TYPE_USB;
>> >> >
>> >> > What's your further plan for this generic USB charger?
>> >> > To support BC1.2, we need to know charger type, and how we
>> could >> get > it?
>> >> >
>> >> > Peter
>> >>
>> >> Well I don't really know. The USB role framework does not
give
>> any >> info about what's plugged.
>> >>
>> >
>> > What's the use case for this patch set? How it be used?
>>
>> My devicetree:
>>
>> usb_otg: usb@13440000 {
>> compatible = "ingenic,jz4770-musb", "simple-mfd";
>> reg = <0x13440000 0x10000>;
>> [...]
>>
>> usb-role-switch;
>>
>> connector {
>> compatible = "gpio-usb-b-connector", "usb-b-connector";
>> label = "mini-USB";
>> type = "mini";
>>
>> id-gpios = <&gpf 18 GPIO_ACTIVE_HIGH>;
>> vbus-gpios = <&gpb 5 GPIO_ACTIVE_HIGH>;
>> [...]
>> };
>>
>> usb_charger: usb-charger {
>> compatible = "usb-charger";
>> };
>> };
>>
>> The new gpio-usb-connector driver uses the ID/VBUS GPIOs to
detect
>> in which state (device, host, unconnected) a OTG connector is.
>> However, that means I cannot use the standard gpio-charger
driver to
>> detect the presence of a charger based on the state of the VBUS
>> gpio, since it's already requested here. So the point of this
>> patchset is to provide an alternative to gpio-charger that works
>> with OTG controllers compatible with 'usb-role-switch'.
>>
>
> Thanks for explaining it.
>
> What's the user for this USB charger, PMIC or what else? How the
user
> uses this USB charger interface?
It's exported as a standard charger, so it can be passed to client
drivers through
devicetree, and its online status can be retrieved from sysfs.