[PATCH v4 0/2] PCI: Init RCB from pci_configure_device and fix program_hpx_type2

Håkon Bugge posted 2 patches 1 week, 1 day ago
drivers/pci/pci-acpi.c | 65 ++++++++++++++++++------------------------
drivers/pci/pci.h      |  3 ++
drivers/pci/pcie/aer.c |  3 --
drivers/pci/probe.c    | 33 +++++++++++++++++++++
4 files changed, 63 insertions(+), 41 deletions(-)
[PATCH v4 0/2] PCI: Init RCB from pci_configure_device and fix program_hpx_type2
Posted by Håkon Bugge 1 week, 1 day ago
This series add the initialization of the Link Control register's RCB
to pci_configure_rcb() called from pci_configure_device() and also
cleans up the incorrect program_hpx_type2():

1. It should only be called when we own the PCIe native hotplug and
   not the AER ownership
2. It should only manipulate the AER-bits

In addition, the second commit adds a warning if the _HPX type2
record attempts to modify the Link Control register.

The programming of the device's RCB is constrained to the device types
where it is applicable and also skips VFs. If the Root Port's RCB
cannot be determined, we also skip the programming of the device's
RCB.

Then, we program the device's RCB according to the Root Port's setting.

Håkon Bugge (2):
  PCI: Initialize RCB from pci_configure_device()
  PCI/ACPI: Restrict program_hpx_type2() to AER bits

 drivers/pci/pci-acpi.c | 65 ++++++++++++++++++------------------------
 drivers/pci/pci.h      |  3 ++
 drivers/pci/pcie/aer.c |  3 --
 drivers/pci/probe.c    | 33 +++++++++++++++++++++
 4 files changed, 63 insertions(+), 41 deletions(-)

--
2.43.5

Re: [PATCH v4 0/2] PCI: Init RCB from pci_configure_device and fix program_hpx_type2
Posted by Bjorn Helgaas 1 week, 1 day ago
On Thu, Jan 29, 2026 at 06:52:31PM +0100, Håkon Bugge wrote:
> This series add the initialization of the Link Control register's RCB
> to pci_configure_rcb() called from pci_configure_device() and also
> cleans up the incorrect program_hpx_type2():
> 
> 1. It should only be called when we own the PCIe native hotplug and
>    not the AER ownership
> 2. It should only manipulate the AER-bits
> 
> In addition, the second commit adds a warning if the _HPX type2
> record attempts to modify the Link Control register.
> 
> The programming of the device's RCB is constrained to the device types
> where it is applicable and also skips VFs. If the Root Port's RCB
> cannot be determined, we also skip the programming of the device's
> RCB.
> 
> Then, we program the device's RCB according to the Root Port's setting.
> 
> Håkon Bugge (2):
>   PCI: Initialize RCB from pci_configure_device()
>   PCI/ACPI: Restrict program_hpx_type2() to AER bits
> 
>  drivers/pci/pci-acpi.c | 65 ++++++++++++++++++------------------------
>  drivers/pci/pci.h      |  3 ++
>  drivers/pci/pcie/aer.c |  3 --
>  drivers/pci/probe.c    | 33 +++++++++++++++++++++
>  4 files changed, 63 insertions(+), 41 deletions(-)

Applied to pci/enumeration for v6.20.

Thanks for your patience and persistence, I think this all looks great!
Re: [PATCH v4 0/2] PCI: Init RCB from pci_configure_device and fix program_hpx_type2
Posted by Haakon Bugge 1 week ago

> On 29 Jan 2026, at 19:50, Bjorn Helgaas <helgaas@kernel.org> wrote:
> 
> On Thu, Jan 29, 2026 at 06:52:31PM +0100, Håkon Bugge wrote:
>> This series add the initialization of the Link Control register's RCB
>> to pci_configure_rcb() called from pci_configure_device() and also
>> cleans up the incorrect program_hpx_type2():
>> 
>> 1. It should only be called when we own the PCIe native hotplug and
>>   not the AER ownership
>> 2. It should only manipulate the AER-bits
>> 
>> In addition, the second commit adds a warning if the _HPX type2
>> record attempts to modify the Link Control register.
>> 
>> The programming of the device's RCB is constrained to the device types
>> where it is applicable and also skips VFs. If the Root Port's RCB
>> cannot be determined, we also skip the programming of the device's
>> RCB.
>> 
>> Then, we program the device's RCB according to the Root Port's setting.
>> 
>> Håkon Bugge (2):
>>  PCI: Initialize RCB from pci_configure_device()
>>  PCI/ACPI: Restrict program_hpx_type2() to AER bits
>> 
>> drivers/pci/pci-acpi.c | 65 ++++++++++++++++++------------------------
>> drivers/pci/pci.h      |  3 ++
>> drivers/pci/pcie/aer.c |  3 --
>> drivers/pci/probe.c    | 33 +++++++++++++++++++++
>> 4 files changed, 63 insertions(+), 41 deletions(-)
> 
> Applied to pci/enumeration for v6.20.
> 
> Thanks for your patience and persistence, I think this all looks great!

Thank you for your kind words! I must say, that your thorough reviews and excellent suggestions for improvements made it easy for me:-)


Thxs, Håkon