]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
usb: typec: ucsi: glink: fix off-by-one in connector_status
authorDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Sat, 9 Nov 2024 00:04:14 +0000 (02:04 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 5 Dec 2024 12:54:07 +0000 (13:54 +0100)
commit 4a22918810980897393fa1776ea3877e4baf8cca upstream.

UCSI connector's indices start from 1 up to 3, PMIC_GLINK_MAX_PORTS.
Correct the condition in the pmic_glink_ucsi_connector_status()
callback, fixing Type-C orientation reporting for the third USB-C
connector.

Fixes: 76716fd5bf09 ("usb: typec: ucsi: glink: move GPIO reading into connector_status callback")
Cc: stable@vger.kernel.org
Reported-by: Abel Vesa <abel.vesa@linaro.org>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Reviewed-by: Johan Hovold <johan+linaro@kernel.org>
Tested-by: Johan Hovold <johan+linaro@kernel.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20241109-ucsi-glue-fixes-v2-1-8b21ff4f9fbe@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/typec/ucsi/ucsi_glink.c

index 6aace19d595bcd0d6647215a384fc34932d7bb0e..69549b172186a73166d2a62d8deff9e67a0a95b8 100644 (file)
@@ -185,7 +185,7 @@ static void pmic_glink_ucsi_connector_status(struct ucsi_connector *con)
        struct pmic_glink_ucsi *ucsi = ucsi_get_drvdata(con->ucsi);
        int orientation;
 
-       if (con->num >= PMIC_GLINK_MAX_PORTS ||
+       if (con->num > PMIC_GLINK_MAX_PORTS ||
            !ucsi->port_orientation[con->num - 1])
                return;