Re: [PATCH v2] pci: loongson: Workaround MIPS firmware MRRS settings

From: Jiaxun Yang
Date: Wed Sep 06 2023 - 23:13:16 EST




在 2023/9/7 9:18, Manivannan Sadhasivam 写道:
[...]
Why do you need to walk through every single device instead of just bridges?
I'm not the maintainer, but my suggestion is to go for Huacai Chen's solution.
Hi Mani,

Thanks for your reply, unfortunately Huacai's solution is impractical in this case.

The problem we have, is firmware (or BIOS) setting improper MRRS for devices
attached under those bridges. So we have to fix up MRRS for every single device.
We can't iterate child device in bridge quirk because there is no guarantee that
bridge will be probed before  it's child device, partly due to hotplug.

This quirk has been in tree for a while, until Huacai refactored it and broke some
systems in 8b3517f88ff2 ("PCI: loongson: Prevent LS7A MRRS increases").

Also to note that ks_pcie_quirk in drivers/pci/controller/dwc/pci-keystone.c
uses similar approach.
This avoids iterating over bridges/devices two times.

Also, please rename firmware to BIOS, as firmware commonly represents the
software running on PCIe endpoint devices.
Ack, will fix in next reversion.

Thanks
- Jiaxun

- Mani
[...]