• Sascha Hauer's avatar
    gpio: mvebu: Fix probing for chips without PWM · 19c26d90
    Sascha Hauer authored
    The PWM iomem resource is optional and its presence indicates whether
    the GPIO chip has a PWM or not, which is why mvebu_pwm_probe() returned
    successfully when the PWM resource was not present. With f51b18d9
    the driver switched to devm_platform_ioremap_resource_byname() and
    its error return is propagated to the caller, so now a missing PWM resource
    leads to a probe error in the driver.
    
    To fix this explicitly test for the presence of the PWM resource and
    return successfully when it's not there. Do this check before the check
    for the clock is done (which GPIO chips without a PWM do not have). Also
    move the existing comment why the PWM resource is optional up to the
    actual check.
    
    Fixes: f51b18d9 ("gpio: mvebu: use devm_platform_ioremap_resource_byname()")
    Signed-off-by: default avatarSascha Hauer <s.hauer@pengutronix.de>
    Signed-off-by: default avatarBartosz Golaszewski <bgolaszewski@baylibre.com>
    19c26d90
gpio-mvebu.c 33.2 KB