On Sun, Nov 17, 2019 at 11:46 PM Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote: > > On Sun, 17 Nov 2019, Ikjoon Jang wrote: > > > This patchset enables hard wired hub device to use different bInterval > > from its descriptor when the hub has a combined device node. > > > > When we know the specific hard wired hub supports changing its polling > > interval, we can adjust hub's interval to reduce the time of waking up > > from autosuspend or connect detection of HIDs. > > In fact, _all_ hubs support changing the polling interval. The value > given in the USB spec is just an upper limit; any smaller value is > equally acceptable. > > So why are you doing this only for hard-wired hubs? Why not for all > hubs? Because we only want to apply it to a specific device instance under our control. We apply autosuspend to built-in touchpad device for power savings, Users can attach external hub devices with same VID:PID that we don't want to change the behavior. Maybe disabling autosuspend for external HIDs can be more reasonable for that case? > > And is 250 ms really too long to wait for remote wakeup or connect > detection? What's the real motivation behind this change? When a user starts to move the cursor while touchpad is in autosuspend state, It takes more than >250ms (worst case can be >500ms) to wake up and response. That makes the cursor stuck for a while and warp to another location suddenly. Thanks. > > Alan Stern >