Re: [PATCH v2 0/2] PCI: device link quirk for NVIDIA GPU
From: Abhishek Sahu
Date: Mon Jun 17 2019 - 07:39:44 EST
On 6/14/2019 2:27 AM, Bjorn Helgaas wrote:
> On Thu, Jun 06, 2019 at 02:52:23PM +0530, Abhishek Sahu wrote:
>> * v2:
>> 1. Make the pci device link helper function generic which can be
>> used for other multi-function PCI devices also.
>> 2. Minor changes in comments and commit logs.
>> * v1:
>> NVIDIA Turing GPU  has hardware support for USB Type-C and
>> VirtualLink . The Turing GPU is a multi-function PCI device
>> which has the following four functions:
>> - VGA display controller (Function 0)
>> - Audio controller (Function 1)
>> - USB xHCI Host controller (Function 2)
>> - USB Type-C USCI controller (Function 3)
>> Currently NVIDIA and Nouveau GPU drivers only manage function 0.
>> Rest of the functions are managed by other drivers. These functions
>> internally in the hardware are tightly coupled. When function 0 goes
>> in runtime suspended state, then it will do power gating for most of
>> the hardware blocks. Some of these hardware blocks are used by
>> the other PCI functions, which leads to functional failure. In the
>> mainline kernel, the device link is present between
>> function 0 and function 1. This patch series deals with creating
>> a similar kind of device link between function 0 and
>> functions 2 and 3.
>>  https://www.nvidia.com/content/dam/en-zz/Solutions/design-visualization/technologies/turing-architecture/NVIDIA-Turing-Architecture-Whitepaper.pdf
>>  https://en.wikipedia.org/wiki/VirtualLink
>> Abhishek Sahu (2):
>> PCI: Code reorganization for creating device link
>> PCI: Create device link for NVIDIA GPU
> Applied to pci/misc for v5.3, thanks!
Thanks Bjorn for your review and support!
The runtime PM changes in USB Type-C USCI driver is also
applied for v5.3
It will help in achieving run-time PM for Turing GPUs