On 22-01-25 12:56 am, Alan Stern wrote: > On Tue, Jan 21, 2025 at 10:19:08PM +0530, Prashanth K wrote: >> >> >> On 21-01-25 08:36 pm, Alan Stern wrote: >>> On Tue, Jan 21, 2025 at 09:50:08AM +0530, Prashanth K wrote: >>>> >>>> >>>> On 20-01-25 08:17 pm, Alan Stern wrote: >>>>> On Mon, Jan 20, 2025 at 04:47:02PM +0530, Prashanth K wrote: >>>>>> Currently CONFIG_USB_GADGET_VBUS_DRAW limits the maximum current >>>>>> drawn from Vbus to be up to 500mA. However USB gadget operating >>>>>> in SuperSpeed or higher can draw up to 900mA. Also, MaxPower in >>>>>> ConfigFS takes its default value from this config. Hence increase >>>>>> the allowed range of CONFIG_USB_GADGET_VBUS_DRAW to 900mA. >>>>> >>>>> Is this the sort of thing that really needs to be a Kconfig option? Why >>>>> not make the decision at runtime, based on the needs of the gadget or >>>>> function drivers and the connection speed? >>>>> >>>>> Alan Stern >>>>> >>>> >>>> Right, set_config() in composite.c does this in runtime based on the >>>> values of MaxPower (from configFS), VBUS_DRAW defconfig and speed. >>>> If we don't set MaxPower from configFS, this config helps to set it >>>> during compile time. In fact MaxPower in configFS takes its default >>>> value from CONFIG_USB_GADGET_VBUS_DRAW . Sent this patch because Kconfig >>>> has this limitation where it's only allowing values upto 500mA. >>> >>> Why does MaxPower need to be set at compile time? Why not set it at >>> runtime instead? >>> >>> If MaxPower gets set at runtime then it can take its default value to be >>> 500 mA or 900 mA depending on the connection speed. There will be no >>> need for CONFIG_USB_GAGDGET_VBUS_DRAW. >>> >> >> Yes, agreed. Can we mark CONFIG_USB_GAGDGET_VBUS_DRAW as legacy and >> maybe also avoid configfs/composite from using it? > > Indeed, the whole idea is to avoid using CONFIG_USB_GADGET_VBUS_DRAW in > configfs and composite. > > If nothing will still be using it, just remove it entirely. No need to > mark it as legacy. > > Alan Stern Sure, let me work on that and send a v2 (or another patch). Thanks for the feedback. Regards, Prashanth K