Unverified Commit 59922976 authored by Prashant Malani's avatar Prashant Malani Committed by Benson Leung
Browse files

platform/chrome: cros_ec_typec: Set partner num_altmodes



Set the number of altmodes available for a registered partner using the
Type C connector class framework routine.

Cc: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: default avatarPrashant Malani <pmalani@chromium.org>
Reviewed-by: default avatarHeikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: default avatarBenson Leung <bleung@chromium.org>
Link: https://lore.kernel.org/r/20201116201150.2919178-10-pmalani@chromium.org
parent 72d6e32b
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -640,6 +640,7 @@ static int cros_typec_register_altmodes(struct cros_typec_data *typec, int port_
	struct cros_typec_altmode_node *node;
	struct typec_altmode_desc desc;
	struct typec_altmode *amode;
	int num_altmodes = 0;
	int ret = 0;
	int i, j;

@@ -666,9 +667,16 @@ static int cros_typec_register_altmodes(struct cros_typec_data *typec, int port_

			node->amode = amode;
			list_add_tail(&node->list, &port->partner_mode_list);
			num_altmodes++;
		}
	}

	ret = typec_partner_set_num_altmodes(port->partner, num_altmodes);
	if (ret < 0) {
		dev_err(typec->dev, "Unable to set partner num_altmodes for port: %d\n", port_num);
		goto err_cleanup;
	}

	return 0;

err_cleanup: