• Andreas Werner's avatar
    can: flexcan: Deferred on Regulator return EPROBE_DEFER · 555828ef
    Andreas Werner authored
    Return EPROBE_DEFER if Regulator returns EPROBE_DEFER
    
    If the Flexcan driver is built into kernel and a regulator is used to
    enable the CAN transceiver, the Flexcan driver may not use the regulator.
    
    When initializing the Flexcan device with a regulator defined in the device
    tree, but not initialized, the regulator subsystem returns EPROBE_DEFER, hence
    the Flexcan init fails.
    
    The solution for this is to return EPROBE_DEFER if regulator is not initialized
    and wait until the regulator is initialized.
    Signed-off-by: default avatarAndreas Werner <kernel@andy89.org>
    Cc: linux-stable <stable@vger.kernel.org>
    Signed-off-by: default avatarMarc Kleine-Budde <mkl@pengutronix.de>
    555828ef
flexcan.c 34.7 KB