Can somebody please help me to find the test-case/use-case of
following snippet of code in drivers/usb/core/hub.c:hub_port_connect()
:-

                /* maybe switch power back on (e.g. root hub was reset) */
                if (hub_is_port_power_switchable(hub)
                                && !port_is_power_on(hub, portstatus))
                        set_port_feature(hdev, port1, USB_PORT_FEAT_POWER);

Our use case is to switch the power off on any hub port if hub
supports per port power control but currently port is turned back ON
due to above code snippet.

we are turning the power off by using following libusb control
transfer function :-

libusb_control_transfer( handle,
                        (tU8)LIBUSB_ENDPOINT_OUT | USB_RT_PORT,
                        (tU8)LIBUSB_REQUEST_CLEAR_FEATURE,
                        USB_PORT_FEAT_POWER,
                        PortID,
                        NULL,
                        0,
                        USB_TIMEOUT );


In which way root hub can be reset or was reset and code flow will
reach above statement in hub_port_connect() and turn PORT_POWER back
ON the port?

I tried to search for the use-case through git log and google but
failed to understand.

with warm regards,
Deepak Das
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to