• Gregory CLEMENT's avatar
    pinctrl: armada-37xx: Fix the pin 23 on south bridge · 9ac6e7cc
    Gregory CLEMENT authored
    Pin 23 on South bridge does not belong to the rgmii group. It belongs to
    a separate group which can have 3 functions.
    
    Due to this the fix also have to update the way the functions are
    managed. Until now each groups used NB_FUNCS(which was 2) functions. For
    the mpp23, 3 functions are available but it is the only group which needs
    it, so on the loop involving NB_FUNCS an extra test was added to handle
    only the functions added.
    
    The bug was visible with the merge of the commit 07d065ab "arm64:
    dts: marvell: armada-3720-db: Add vqmmc regulator for SD slot", the gpio
    regulator used the gpio 23, due to this the whole rgmii group was setup
    to gpio which broke the Ethernet support on the Armada 3720 DB
    board. Thanks to this patch, the UHS SD cards (which need the vqmmc)
    _and_ the Ethernet work again.
    
    Cc: stable@vger.kernel.org
    Fixes: 87466ccd ("pinctrl: armada-37xx: Add pin controller support
    for Armada 37xx")
    Signed-off-by: default avatarGregory CLEMENT <gregory.clement@free-electrons.com>
    Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    9ac6e7cc
pinctrl-armada-37xx.c 25.6 KB