On Tue, Jul 17, 2018 at 03:36:19PM +0100, Adam Thomson wrote: > There is a bug in the sink PDO search code when trying to select > a PPS APDO. The current code actually sets the starting index for > searching to whatever value 'i' is, rather than choosing index 1 > to avoid the first PDO (always 5V fixed). As a result, for sources > which support PPS but whose PPS APDO index does not match with the > supporting sink PPS APDO index for the platform, no valid PPS APDO > will be found so this feature will not be permitted. > > Sadly in testing, both Source and Sink capabilities matched up and > this was missed. Code is now updated to correctly set the start > index to 1, and testing with additional PPS capable sources show > this to work as expected. > > Signed-off-by: Adam Thomson <Adam.Thomson.Opensource@xxxxxxxxxxx> Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx> > --- > drivers/usb/typec/tcpm.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/usb/typec/tcpm.c b/drivers/usb/typec/tcpm.c > index 74e0cda..4f1f421 100644 > --- a/drivers/usb/typec/tcpm.c > +++ b/drivers/usb/typec/tcpm.c > @@ -2238,7 +2238,7 @@ static unsigned int tcpm_pd_select_pps_apdo(struct tcpm_port *port) > * PPS APDO. Again skip the first sink PDO as this will > * always be 5V 3A. > */ > - for (j = i; j < port->nr_snk_pdo; j++) { > + for (j = 1; j < port->nr_snk_pdo; j++) { > pdo = port->snk_pdo[j]; > > switch (pdo_type(pdo)) { > -- > 1.9.1 > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html