• Linus Walleij's avatar
    ARM: pxa2xx: Fix GPIO descriptor tables · c5cdb928
    Linus Walleij authored
    Laurence reports:
    
    "Kernel >5.18 on Zaurus has a bug where the power management code can't
    talk to devices, emitting the following errors:
    
    sharpsl-pm sharpsl-pm: Error: AC check failed: voltage -22.
    sharpsl-pm sharpsl-pm: Charging Error!
    sharpsl-pm sharpsl-pm: Warning: Cannot read main battery!
    
    Looking at the recent changes, I found that commit 31455bbd ("spi:
    pxa2xx_spi: Convert to use GPIO descriptors") replaced the deprecated
    SPI chip select platform device code with a gpiod lookup table. However,
    this didn't seem to work until I changed the `dev_id` member from the
    device name to the bus id. I'm not entirely sure why this is necessary,
    but I suspect it is related to the fact that in sysfs SPI devices are
    attached under /sys/devices/.../dev_name/spi_master/spiB/spiB.C, rather
    than directly to the device."
    
    After reviewing the change I conclude that the same fix is needed
    for all affected boards.
    
    Fixes: 31455bbd ("spi: pxa2xx_spi: Convert to use GPIO descriptors")
    Reported-by: default avatarLaurence de Bruxelles <lfdebrux@gmail.com>
    Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    Cc: stable@vger.kernel.org
    Link: https://lore.kernel.org/r/20220722114611.1517414-1-linus.walleij@linaro.org'
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    c5cdb928
z2.c 17.6 KB