[PATCH v2 01/10] PCI: pciehp: Enable Command Completed Interrupt only if supported
Bjorn Helgaas
helgaas at kernel.org
Wed Dec 7 06:29:35 PST 2022
On Tue, Sep 27, 2022 at 04:19:17PM +0200, Marek Behún wrote:
> From: Pali Rohár <pali at kernel.org>
>
> The No Command Completed Support bit in the Slot Capabilities register
> indicates whether Command Completed Interrupt Enable is unsupported.
>
> We already check whether No Command Completed Support bit is set in
> pcie_wait_cmd(), and do not wait in this case.
>
> Let's not enable this Command Completed Interrupt at all if NCCS is set,
> so that when users dump configuration space from userspace, the dump
> does not confuse them by saying that Command Completed Interrupt is not
> supported, but it is enabled.
>
> Signed-off-by: Pali Rohár <pali at kernel.org>
> Signed-off-by: Marek Behún <kabel at kernel.org>
> Reviewed-by: Lukas Wunner <lukas at wunner.de>
Since this isn't directly related to aardvark or the rest of the
series, I applied this to pci/hotplug for v6.2, thanks!
> ---
> drivers/pci/hotplug/pciehp_hpc.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/pci/hotplug/pciehp_hpc.c b/drivers/pci/hotplug/pciehp_hpc.c
> index 040ae076ec0e..10e9670eea0b 100644
> --- a/drivers/pci/hotplug/pciehp_hpc.c
> +++ b/drivers/pci/hotplug/pciehp_hpc.c
> @@ -811,7 +811,9 @@ static void pcie_enable_notification(struct controller *ctrl)
> else
> cmd |= PCI_EXP_SLTCTL_PDCE;
> if (!pciehp_poll_mode)
> - cmd |= PCI_EXP_SLTCTL_HPIE | PCI_EXP_SLTCTL_CCIE;
> + cmd |= PCI_EXP_SLTCTL_HPIE;
> + if (!pciehp_poll_mode && !NO_CMD_CMPL(ctrl))
> + cmd |= PCI_EXP_SLTCTL_CCIE;
>
> mask = (PCI_EXP_SLTCTL_PDCE | PCI_EXP_SLTCTL_ABPE |
> PCI_EXP_SLTCTL_PFDE |
> --
> 2.35.1
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
More information about the linux-arm-kernel
mailing list