Re: [PATCH] PCI: quirks: Add warm reset quirk for IBM Spyre accelerator

Shivaprasad G Bhat <[email protected]>
Newsgroups org.ozlabs.lists.linuxppc-dev,org.kernel.vger.linux-kernel,org.kernel.vger.linux-pci
Message-ID <[email protected]>
Hi Bjorn,

Thanks for taking a look.

On 8/5/26 10:48 PM, Bjorn Helgaas wrote:
> On Wed, Aug 05, 2026 at 06:21:32PM +0530, Avinash Roy wrote:
>> From: Shivaprasad G Bhat <[email protected]>
>>
>> The IBM Spyre accelerator (PCI ID 1014:06a7) requires a dedicated warm
>> reset method for reliable EEH recovery on pSeries/ppc64 platforms.
>>
>> FLR alone is insufficient because it does not re-initialize the Spyre
>> firmware state machine. On ppc64 with EEH enabled,
>> pcibios_set_pcie_reset_state() is overridden in
>> arch/powerpc/kernel/eeh.c to drive the platform-level PERST# signal via
>> EEH PE operations, which is the correct mechanism for full device
>> recovery after an EEH event.
> 
> This makes it sound like this mechanism is needed for EEH recovery for
> *all* devices, not just Spyre.  If that's the case it sounds like we
> need more than just a Spyre-specific quirk.

Now I re-read it, The second statement needs to be re-worded. It does 
sound like its true for all devices. Quirk is only for the Spyre card.

Will post a v2 fixing the same.

Thanks and Regards,
Shivaprasad

> 
>> The reset function is placed in arch/powerpc/platforms/pseries/pci.c
>> where the EEH infrastructure is already present, declared in
>> pseries.h, and registered in the generic pci_dev_reset_methods[] table
>> in drivers/pci/quirks.c under a CONFIG_PPC_PSERIES guard.
>>
>> This reset method is only registered when CONFIG_PPC_PSERIES is enabled,
>> so it is not available on other platforms.
>>
>> Reset sequence:
>>    - Assert PERST# via pcie_warm_reset, hold 250 ms
>>    - Deassert PERST# via pcie_deassert_reset
>>    - Wait 250 ms for PCIe link retrain and device recovery
>>
>> Signed-off-by: Avinash Roy <[email protected]>
>> Signed-off-by: Shivaprasad G Bhat <[email protected]>
>> ---
</snip>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.