• Maxime Ripard's avatar
    usb: phy: Fix deferred probing · 9c9d8249
    Maxime Ripard authored
    Commit 1290a958 ("usb: phy: propagate __of_usb_find_phy()'s error on
    failure") actually broke the deferred probing mechanism, since it now returns
    EPROBE_DEFER only when the try_module_get call fails, but not when the phy
    lookup does.
    
    All the other similar functions seem to return ENODEV when try_module_get
    fails, and the error code of either __usb_find_phy or __of_usb_find_phy
    otherwise.
    
    In order to have a consistent behaviour, and a meaningful EPROBE_DEFER, always
    return EPROBE_DEFER when __(of_)usb_find_phy fails to look up the requested
    phy, that will be propagated by the caller, and ENODEV if try_module_get fails.
    Signed-off-by: default avatarMaxime Ripard <maxime.ripard@free-electrons.com>
    Tested-by: default avatarOlof Johansson <olof@lixom.net>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    9c9d8249
phy.c 10.9 KB