Commit b51c1e8d authored by Benson Leung's avatar Benson Leung Committed by Greg Kroah-Hartman
Browse files

usb: typec: thunderbolt: Fix loops that iterate TYPEC_PLUG_SOP_P and TYPEC_PLUG_SOP_PP



Fixes these Smatch static checker warnings:
drivers/usb/typec/altmodes/thunderbolt.c:116 tbt_altmode_work() warn: why is zero skipped 'i'
drivers/usb/typec/altmodes/thunderbolt.c:147 tbt_enter_modes_ordered() warn: why is zero skipped 'i'
drivers/usb/typec/altmodes/thunderbolt.c:328 tbt_altmode_remove() warn: why is zero skipped 'i'

Fixes: 100e2573 ("usb: typec: Add driver for Thunderbolt 3 Alternate Mode")
Signed-off-by: default avatarBenson Leung <bleung@chromium.org>
Reported-by: default avatarDan Carpenter <dan.carpenter@linaro.org>
Reviewed-by: default avatarHeikki Krogerus <heikki.krogerus@linux.intel.com>
Link: https://lore.kernel.org/r/Z5Psp615abaaId6J@google.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 51333bfb
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -112,7 +112,7 @@ static void tbt_altmode_work(struct work_struct *work)
	return;

disable_plugs:
	for (int i = TYPEC_PLUG_SOP_PP; i > 0; --i) {
	for (int i = TYPEC_PLUG_SOP_PP; i >= 0; --i) {
		if (tbt->plug[i])
			typec_altmode_put_plug(tbt->plug[i]);

@@ -143,7 +143,7 @@ static int tbt_enter_modes_ordered(struct typec_altmode *alt)
	if (tbt->plug[TYPEC_PLUG_SOP_P]) {
		ret = typec_cable_altmode_enter(alt, TYPEC_PLUG_SOP_P, NULL);
		if (ret < 0) {
			for (int i = TYPEC_PLUG_SOP_PP; i > 0; --i) {
			for (int i = TYPEC_PLUG_SOP_PP; i >= 0; --i) {
				if (tbt->plug[i])
					typec_altmode_put_plug(tbt->plug[i]);

@@ -324,7 +324,7 @@ static void tbt_altmode_remove(struct typec_altmode *alt)
{
	struct tbt_altmode *tbt = typec_altmode_get_drvdata(alt);

	for (int i = TYPEC_PLUG_SOP_PP; i > 0; --i) {
	for (int i = TYPEC_PLUG_SOP_PP; i >= 0; --i) {
		if (tbt->plug[i])
			typec_altmode_put_plug(tbt->plug[i]);
	}