Re: [PPC] Boot problems after the pci-v6.18-changes
- To: Manivannan Sadhasivam <mani@kernel.org>
- Cc: Lukas Wunner <lukas@wunner.de>, Manivannan Sadhasivam <manivannan.sadhasivam@oss.qualcomm.com>, Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>, Bjorn Helgaas <helgaas@kernel.org>, linux-pci@vger.kernel.org, mad skateman <madskateman@gmail.com>, "R.T.Dickinson" <rtd2@xtra.co.nz>, Christian Zigotzky <info@xenosoft.de>, linuxppc-dev <linuxppc-dev@lists.ozlabs.org>, hypexed@yahoo.com.au, Darren Stevens <darren@stevens-zone.net>, debian-powerpc@lists.debian.org
- Subject: Re: [PPC] Boot problems after the pci-v6.18-changes
- From: Christian Zigotzky <chzigotzky@xenosoft.de>
- Date: Mon, 13 Oct 2025 07:02:19 +0200
- Message-id: <[🔎] 2E40B1CD-5EDA-4208-8914-D1FC02FE8185@xenosoft.de>
- In-reply-to: <[🔎] 0BE6C5AD-8DFD-4126-9B18-C012B522B442@xenosoft.de>
- References: <[🔎] 0BE6C5AD-8DFD-4126-9B18-C012B522B442@xenosoft.de>
> On 13 October 2025 at 06:47 am, Christian Zigotzky <chzigotzky@xenosoft.de> wrote:
>
>
>> On 11 October 2025 at 07:36 pm, Manivannan Sadhasivam <mani@kernel.org> wrote:
>>
>> Hi Lukas,
>>
>> Thanks for looping me in. The referenced commit forcefully enables ASPM on all
>> DT platforms as we decided to bite the bullet finally.
>>
>> Looks like the device (0000:01:00.0) doesn't play nice with ASPM even though it
>> advertises ASPM capability.
>>
>> Christian, could you please test the below change and see if it fixes the issue?
>>
>> diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
>> index 214ed060ca1b..e006b0560b39 100644
>> --- a/drivers/pci/quirks.c
>> +++ b/drivers/pci/quirks.c
>> @@ -2525,6 +2525,15 @@ static void quirk_disable_aspm_l0s_l1(struct pci_dev *dev)
>> */
>> DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ASMEDIA, 0x1080, quirk_disable_aspm_l0s_l1);
>>
>> +
>> +static void quirk_disable_aspm_all(struct pci_dev *dev)
>> +{
>> + pci_info(dev, "Disabling ASPM\n");
>> + pci_disable_link_state(dev, PCIE_LINK_STATE_ALL);
>> +}
>> +
>> +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x6738, quirk_disable_aspm_all);
>> +
>> /*
>> * Some Pericom PCIe-to-PCI bridges in reverse mode need the PCIe Retrain
>> * Link bit cleared after starting the link retrain process to allow this
>>
>>
>> Going forward, we should be quirking the devices if they behave erratically.
>>
>> - Mani
>>
>> --
>> மணிவண்ணன் சதாசிவம்
>
> Hello Mani,
>
>> DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x6738, quirk_disable_aspm_all);
>
> Is this only for my AMD Radeon HD6870?
>
> My AMD Radeon HD5870 is also affected.
>
> And I tested it with my AMD Radeon HD5870.
>
> What would the line be for all AMD graphics cards?
>
> Thanks,
> Christian
I see. 0x6738 is for the AMD Radeon HD 6800 series.
It could be, that your patch works because I tested it with an AMD Radeon HD5870 instead of an AMD Radeon HD6870. Sorry
This could be the correct line for the HD5870:
>> DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x6898, quirk_disable_aspm_all);
There are some more id numbers for the HD5870.
Correct:
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
index 214ed060ca1b..e006b0560b39 100644
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -2525,6 +2525,15 @@ static void quirk_disable_aspm_l0s_l1(struct pci_dev *dev)
*/
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ASMEDIA, 0x1080, quirk_disable_aspm_l0s_l1);
+
+static void quirk_disable_aspm_all(struct pci_dev *dev)
+{
+ pci_info(dev, "Disabling ASPM\n");
+ pci_disable_link_state(dev, PCIE_LINK_STATE_ALL);
+}
+
+DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x6738, quirk_disable_aspm_all);
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x6898, quirk_disable_aspm_all);
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x6899, quirk_disable_aspm_all);
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x689E, quirk_disable_aspm_all);
+
/*
* Some Pericom PCIe-to-PCI bridges in reverse mode need the PCIe Retrain
* Link bit cleared after starting the link retrain process to allow this
Reply to: