linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Bjorn Helgaas <helgaas@kernel.org>
To: Evan Quan <evan.quan@amd.com>
Cc: linux-pci@vger.kernel.org, bhelgaas@google.com,
	Alexander.Deucher@amd.com, stable@vger.kernel.org
Subject: Re: [PATCH] PCI: Create device links for AMD integrated USB xHCI and UCSI controllers
Date: Fri, 3 Sep 2021 14:55:25 -0500	[thread overview]
Message-ID: <20210903195525.GA485189@bjorn-Precision-5520> (raw)
In-Reply-To: <20210903063311.3606226-1-evan.quan@amd.com>

On Fri, Sep 03, 2021 at 02:33:11PM +0800, Evan Quan wrote:
> Latest AMD GPUs have built-in USB xHCI and UCSI controllers. Add device
> link support for them.

Please comment on https://git.kernel.org/linus/6d2e369f0d4c .

Is there something the PCI core is missing here?  Or is there
something that needs to be added to ACPI or the PCI firmware spec?

We want a generic way to discover dependencies like this.

A quirk should not be necessary for spec-compliant devices.  Quirks
are an ongoing maintenance burden, and they mean that new hardware
won't work correctly until the OS is patched to know about it.  That's
not what we want.

I expect we'll still need *this* quirk, but first I'd like to know
whether there's a plan to handle this more generically in the future.

When you repost this, please follow the subject line style of
6d2e369f0d4c ("PCI: Add NVIDIA GPU multi-function power
dependencies") so similar patches look similar.

> Cc: stable@vger.kernel.org
> Signed-off-by: Evan Quan <evan.quan@amd.com>
> ---
>  drivers/pci/quirks.c | 9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
> index dea10d62d5b9..f0c5dd3406a1 100644
> --- a/drivers/pci/quirks.c
> +++ b/drivers/pci/quirks.c
> @@ -5338,7 +5338,7 @@ DECLARE_PCI_FIXUP_CLASS_FINAL(PCI_VENDOR_ID_NVIDIA, PCI_ANY_ID,
>  			      PCI_CLASS_MULTIMEDIA_HD_AUDIO, 8, quirk_gpu_hda);
>  
>  /*
> - * Create device link for NVIDIA GPU with integrated USB xHCI Host
> + * Create device link for GPUs with integrated USB xHCI Host
>   * controller to VGA.
>   */
>  static void quirk_gpu_usb(struct pci_dev *usb)
> @@ -5347,9 +5347,11 @@ static void quirk_gpu_usb(struct pci_dev *usb)
>  }
>  DECLARE_PCI_FIXUP_CLASS_FINAL(PCI_VENDOR_ID_NVIDIA, PCI_ANY_ID,
>  			      PCI_CLASS_SERIAL_USB, 8, quirk_gpu_usb);
> +DECLARE_PCI_FIXUP_CLASS_FINAL(PCI_VENDOR_ID_ATI, PCI_ANY_ID,
> +			      PCI_CLASS_SERIAL_USB, 8, quirk_gpu_usb);
>  
>  /*
> - * Create device link for NVIDIA GPU with integrated Type-C UCSI controller
> + * Create device link for GPUs with integrated Type-C UCSI controller
>   * to VGA. Currently there is no class code defined for UCSI device over PCI
>   * so using UNKNOWN class for now and it will be updated when UCSI
>   * over PCI gets a class code.
> @@ -5362,6 +5364,9 @@ static void quirk_gpu_usb_typec_ucsi(struct pci_dev *ucsi)
>  DECLARE_PCI_FIXUP_CLASS_FINAL(PCI_VENDOR_ID_NVIDIA, PCI_ANY_ID,
>  			      PCI_CLASS_SERIAL_UNKNOWN, 8,
>  			      quirk_gpu_usb_typec_ucsi);
> +DECLARE_PCI_FIXUP_CLASS_FINAL(PCI_VENDOR_ID_ATI, PCI_ANY_ID,
> +			      PCI_CLASS_SERIAL_UNKNOWN, 8,
> +			      quirk_gpu_usb_typec_ucsi);
>  
>  /*
>   * Enable the NVIDIA GPU integrated HDA controller if the BIOS left it
> -- 
> 2.29.0
> 

  reply	other threads:[~2021-09-03 19:55 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-03  6:33 [PATCH] PCI: Create device links for AMD integrated USB xHCI and UCSI controllers Evan Quan
2021-09-03 19:55 ` Bjorn Helgaas [this message]
2021-09-07 16:09   ` Deucher, Alexander
2021-09-07 17:35     ` Bjorn Helgaas
2021-09-14 12:59       ` Deucher, Alexander
2021-09-14 13:48         ` Bjorn Helgaas
2021-09-14 15:28 ` Bjorn Helgaas
2021-09-15 16:39   ` Deucher, Alexander
2021-09-15 21:45     ` Bjorn Helgaas

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=20210903195525.GA485189@bjorn-Precision-5520 \
    --to=helgaas@kernel.org \
    --cc=Alexander.Deucher@amd.com \
    --cc=bhelgaas@google.com \
    --cc=evan.quan@amd.com \
    --cc=linux-pci@vger.kernel.org \
    --cc=stable@vger.kernel.org \
    /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).