Hello Krzysztof,
On 05/05/2016 08:34 AM, Krzysztof Kozlowski wrote:
Parse usb-pwrseq property from Device Tree to get the phandle to pwrseq
device. The pwrseq device will be used by USB hub to cycle the power
before activating ports.
Signed-off-by: Krzysztof Kozlowski <redacted>
---
[snip]
quoted hunk ↗ jump to hunk
@@ -532,6 +534,14 @@ int usb_hub_create_port_device(struct usb_hub *hub, int port1)
return retval;
}
+ port_dev->dev.of_node = usb_of_get_child_node(hub->hdev->dev.of_node, port1);
+ port_dev->pwrseq = pwrseq_alloc(&port_dev->dev);
+ if (IS_ERR(port_dev->pwrseq)) {
+ device_unregister(&port_dev->dev);
+ /* TODO: what about EPROBE_DEFER? */
I think it's OK since the call chain is:
hub_probe()
hub_configure()
usb_hub_create_port_device()
so the hub_probe() will be deferred if the usb-pwrseq was not registered yet.
Unless I misunderstood your question :)
Anyway, patch looks good to me:
Reviewed-by: Javier Martinez Canillas <redacted>
Best regards,
--
Javier Martinez Canillas
Open Source Group
Samsung Research America