linux-usb.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Greg KH <gregkh@linuxfoundation.org>
To: Sanjay R Mehta <sanmehta@amd.com>
Cc: Sanjay R Mehta <Sanju.Mehta@amd.com>,
	mika.westerberg@linux.intel.com, andreas.noever@gmail.com,
	michael.jamet@intel.com, YehezkelShB@gmail.com,
	Basavaraj.Natikar@amd.com, mario.limonciello@amd.com,
	linux-usb@vger.kernel.org
Subject: Re: [PATCH] thunderbolt: Add DP out resource when DP tunnel is discovered.
Date: Thu, 7 Jul 2022 13:14:55 +0200	[thread overview]
Message-ID: <YsbAL5HS9yEXJXh3@kroah.com> (raw)
In-Reply-To: <0b9f2b04-7734-4d05-f027-cd3d7f49064e@amd.com>

On Thu, Jul 07, 2022 at 04:01:12PM +0530, Sanjay R Mehta wrote:
> 
> 
> On 7/6/2022 5:30 PM, Sanjay R Mehta wrote:
> > 
> > 
> > On 7/6/2022 11:55 AM, Greg KH wrote:
> >> On Wed, Jul 06, 2022 at 12:39:38AM -0500, Sanjay R Mehta wrote:
> >>> From: Sanjay R Mehta <sanju.mehta@amd.com>
> >>>
> >>> 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@amd.com>
> >>> Signed-off-by: Basavaraj Natikar <Basavaraj.Natikar@amd.com>
> >>> ---
> >>>  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..cef2fe3 100644
> >>> --- a/drivers/thunderbolt/tb.h
> >>> +++ b/drivers/thunderbolt/tb.h
> >>> @@ -1222,6 +1222,7 @@ struct usb4_port *usb4_port_device_add(struct tb_port *port);
> >>>  void usb4_port_device_remove(struct usb4_port *usb4);
> >>>  int usb4_port_device_resume(struct usb4_port *usb4);
> >>>  
> >>> +void tb_dp_resource_available_discovered(struct tb *tb, struct tb_port *port);
> >>
> >> Why not put this in the .h file next to the other tb_* calls?
> >>
> > 
> Hi Greg,
> 
> I forgot to explain that in this function, I have used a structure
> "struct tb_cm" which is defined and used only in tb.c file. Hence have
> to keep this function in tb.c file.

To be more specific, I mean why not put it below the line:
	int tb_dp_port_enable(struct tb_port *port, bool enable);
in this .h file in an attempt to keep things orderly.

thanks,

greg k-h

  parent reply	other threads:[~2022-07-07 11:15 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-06  5:39 [PATCH] thunderbolt: Add DP out resource when DP tunnel is discovered Sanjay R Mehta
2022-07-06  6:25 ` Greg KH
2022-07-06 12:00   ` Sanjay R Mehta
2022-07-07 10:31     ` Sanjay R Mehta
2022-07-07 11:12       ` Greg KH
2022-07-07 11:14       ` Greg KH [this message]
2022-07-07 11:18         ` Sanjay R Mehta

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=YsbAL5HS9yEXJXh3@kroah.com \
    --to=gregkh@linuxfoundation.org \
    --cc=Basavaraj.Natikar@amd.com \
    --cc=Sanju.Mehta@amd.com \
    --cc=YehezkelShB@gmail.com \
    --cc=andreas.noever@gmail.com \
    --cc=linux-usb@vger.kernel.org \
    --cc=mario.limonciello@amd.com \
    --cc=michael.jamet@intel.com \
    --cc=mika.westerberg@linux.intel.com \
    --cc=sanmehta@amd.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).