Hi Felipe, On 19 October 2016 at 10:37, Baolin Wang <baolin.wang@xxxxxxxxxx> wrote: > Currently the Linux kernel does not provide any standard integration of this > feature that integrates the USB subsystem with the system power regulation > provided by PMICs meaning that either vendors must add this in their kernels > or USB gadget devices based on Linux (such as mobile phones) may not behave > as they should. Thus provide a standard framework for doing this in kernel. > > Now introduce one user with wm831x_power to support and test the usb charger, > which is pending testing. Moreover there may be other potential users will use > it in future. > > Changes since v17: > - Remove goto section in usb_charger_register() function. > - Remove 'extern' in charger.h file. > - Move the kfree() to usb_charger_exit() function. > > Changes since v16: > - Modify the charger current range with introducing the maximum and minimum > current. > - Remove the getting charger type method from power supply. > - Add the getting charger type method from extcon system. > - Introduce new usb_charger_get_current() API for users to get the maximum and > minimum current. > - Rename some APIs and other optimization. > > Changes since v15: > - Add charger state checking to avoid sending out duplicate notifies to users. > - Add one work to notify power users the current has been changed. > > Changes since v14: > - Add kernel documentation for struct usb_cahrger. > - Remove some redundant WARN() functions. > > Changes since v13: > - Remove the charger checking in usb_gadget_vbus_draw() function. > - Rename some functions in charger.c file. > - Rebase on git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git tags/usb-for-v4.8 > > Changes since v12: > - Remove the class and device things. > - Link usb charger to udc-core.ko. > - Create one "charger" subdirectory which holds all charger-related attributes. > > Changes since v11: > - Reviewed and tested by Li Jun. > > Changes since v10: > - Introduce usb_charger_get_state() function to check charger state. > - Remove the mutex lock in usb_charger_set_cur_limit_by_type() function > in case will be issued in atomic context. Could you apply this patchset into your branch if there are no other comments? Thanks. > > Baolin Wang (4): > usb: gadget: Introduce the usb charger framework > usb: gadget: Support for the usb charger framework > usb: gadget: Integrate with the usb gadget supporting for usb charger > power: wm831x_power: Support USB charger current limit management > > drivers/power/wm831x_power.c | 75 ++++ > drivers/usb/gadget/Kconfig | 8 + > drivers/usb/gadget/udc/Makefile | 1 + > drivers/usb/gadget/udc/charger.c | 877 ++++++++++++++++++++++++++++++++++++++ > drivers/usb/gadget/udc/core.c | 19 +- > include/linux/mfd/wm831x/pdata.h | 3 + > include/linux/usb/charger.h | 185 ++++++++ > include/linux/usb/gadget.h | 3 + > include/uapi/linux/usb/charger.h | 31 ++ > 9 files changed, 1201 insertions(+), 1 deletion(-) > create mode 100644 drivers/usb/gadget/udc/charger.c > create mode 100644 include/linux/usb/charger.h > create mode 100644 include/uapi/linux/usb/charger.h > > -- > 1.7.9.5 > -- Baolin.wang Best Regards -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html