]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
platform/chrome: cros_ec_typec: Correct alt mode index
authorPrashant Malani <pmalani@chromium.org>
Fri, 19 Aug 2022 19:08:03 +0000 (19:08 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 21 Oct 2022 10:38:25 +0000 (12:38 +0200)
[ Upstream commit 4e477663e396f48c5cfc5f2d75d4b514f409516a ]

Alt mode indices used by USB PD (Power Delivery) start with 1, not 0.

Update the alt mdoe registration code to factor this in to the alt mode
descriptor.

Fixes: de0f49487db3 ("platform/chrome: cros_ec_typec: Register partner altmodes")
Signed-off-by: Prashant Malani <pmalani@chromium.org>
Acked-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Reviewed-by: Tzung-Bi Shih <tzungbi@kernel.org>
Link: https://lore.kernel.org/r/20220819190807.1275937-3-pmalani@chromium.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/platform/chrome/cros_ec_typec.c

index 4d81d8d45b73295bb21b5e39b69ae115966229b8..dc5722db206613aee1c9dc18fc0ebf3ad6149d2a 100644 (file)
@@ -698,7 +698,7 @@ static int cros_typec_register_altmodes(struct cros_typec_data *typec, int port_
                for (j = 0; j < sop_disc->svids[i].mode_count; j++) {
                        memset(&desc, 0, sizeof(desc));
                        desc.svid = sop_disc->svids[i].svid;
-                       desc.mode = j;
+                       desc.mode = j + 1;
                        desc.vdo = sop_disc->svids[i].mode_vdo[j];
 
                        if (is_partner)