On Thu, Jul 07, 2022 at 06:26:30AM -0500, Sanjay R Mehta wrote: > From: Sanjay R Mehta <sanju.mehta@xxxxxxx> > > If the boot firmware implements a connection manager of its > own it may create a DP tunnel and will be handed off to Linux > CM, but the DP out resource is not saved in the dp_resource > list. > > This patch adds tunnelled DP out port to the dp_resource list > once the DP tunnel is discovered. > > Signed-off-by: Sanjay R Mehta <sanju.mehta@xxxxxxx> > Signed-off-by: Basavaraj Natikar <Basavaraj.Natikar@xxxxxxx> > --- > drivers/thunderbolt/tb.c | 15 +++++++++++++++ > drivers/thunderbolt/tb.h | 1 + > drivers/thunderbolt/tunnel.c | 2 ++ > 3 files changed, 18 insertions(+) > > diff --git a/drivers/thunderbolt/tb.c b/drivers/thunderbolt/tb.c > index 9a3214f..dcd0c3e 100644 > --- a/drivers/thunderbolt/tb.c > +++ b/drivers/thunderbolt/tb.c > @@ -1006,6 +1006,21 @@ static void tb_dp_resource_unavailable(struct tb *tb, struct tb_port *port) > tb_tunnel_dp(tb); > } > > +void tb_dp_resource_available_discovered(struct tb *tb, struct tb_port *port) > +{ > + struct tb_cm *tcm = tb_priv(tb); > + struct tb_port *p; > + > + list_for_each_entry(p, &tcm->dp_resources, list) { > + if (p == port) > + return; > + } > + > + tb_port_dbg(port, "DP %s resource available discovered\n", > + tb_port_is_dpin(port) ? "IN" : "OUT"); > + list_add_tail(&port->list, &tcm->dp_resources); > +} > + > static void tb_dp_resource_available(struct tb *tb, struct tb_port *port) > { > struct tb_cm *tcm = tb_priv(tb); > diff --git a/drivers/thunderbolt/tb.h b/drivers/thunderbolt/tb.h > index 4602c69..a841844 100644 > --- a/drivers/thunderbolt/tb.h > +++ b/drivers/thunderbolt/tb.h > @@ -1051,6 +1051,7 @@ int tb_dp_port_set_hops(struct tb_port *port, unsigned int video, > unsigned int aux_tx, unsigned int aux_rx); > bool tb_dp_port_is_enabled(struct tb_port *port); > int tb_dp_port_enable(struct tb_port *port, bool enable); > +void tb_dp_resource_available_discovered(struct tb *tb, struct tb_port *port); > > struct tb_path *tb_path_discover(struct tb_port *src, int src_hopid, > struct tb_port *dst, int dst_hopid, > diff --git a/drivers/thunderbolt/tunnel.c b/drivers/thunderbolt/tunnel.c > index 2c3cf7f..1394ae9 100644 > --- a/drivers/thunderbolt/tunnel.c > +++ b/drivers/thunderbolt/tunnel.c > @@ -845,6 +845,8 @@ struct tb_tunnel *tb_tunnel_discover_dp(struct tb *tb, struct tb_port *in, > goto err_deactivate; > } > > + tb_dp_resource_available_discovered(tb, tunnel->dst_port); > + > tb_tunnel_dbg(tunnel, "discovered\n"); > return tunnel; > > -- > 2.7.4 > Hi, This is the friendly patch-bot of Greg Kroah-Hartman. You have sent him a patch that has triggered this response. He used to manually respond to these common problems, but in order to save his sanity (he kept writing the same thing over and over, yet to different people), I was created. Hopefully you will not take offence and will fix the problem in your patch and resubmit it so that it can be accepted into the Linux kernel tree. You are receiving this message because of the following common error(s) as indicated below: - This looks like a new version of a previously submitted patch, but you did not list below the --- line any changes from the previous version. Please read the section entitled "The canonical patch format" in the kernel file, Documentation/SubmittingPatches for what needs to be done here to properly describe this. If you wish to discuss this problem further, or you have questions about how to resolve this issue, please feel free to respond to this email and Greg will reply once he has dug out from the pending patches received from other developers. thanks, greg k-h's patch email bot