mbox series

[RESEND,V3,0/6] PCI: Enable 10-Bit tag support for PCIe devices

Message ID 1623576555-40338-1-git-send-email-liudongdong3@huawei.com
Headers show
Series PCI: Enable 10-Bit tag support for PCIe devices | expand

Message

Dongdong Liu June 13, 2021, 9:29 a.m. UTC
10-Bit Tag capability, introduced in PCIe-4.0 increases the total Tag
field size from 8 bits to 10 bits.

This patchset is to enable 10-Bit tag for PCIe EP devices (include VF) and
RP devices.

V2->V3:
- Use cached Device Capabilities Register suggested by Christoph.
- Fix code style to avoid > 80 char lines.
- Renamve devcap2 to pcie_devcap2.

V1->V2: Fix some comments by Christoph.
- Store the devcap2 value in the pci_dev instead of reading it multiple
  times.
  - Change pci_info to pci_dbg to avoid the noisy log.
  - Rename ext_10bit_tag_comp_path to ext_10bit_tag.
  - Fix the compile error.
  - Rebased on v5.13-rc1.

Dongdong Liu (6):
  PCI: Use cached Device Capabilities Register
  PCI: Use cached Device Capabilities 2 Register
  PCI: Add 10-Bit Tag register definitions
  PCI: Enable 10-Bit tag support for PCIe Endpoint devices
  PCI/IOV: Enable 10-Bit tag support for PCIe VF devices
  PCI: Enable 10-Bit tag support for PCIe RP devices

 drivers/media/pci/cobalt/cobalt-driver.c        |  4 +-
 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c |  4 +-
 drivers/pci/iov.c                               |  8 +++
 drivers/pci/pci.c                               | 13 ++---
 drivers/pci/pcie/aspm.c                         | 11 ++--
 drivers/pci/pcie/portdrv_pci.c                  | 75 +++++++++++++++++++++++++
 drivers/pci/probe.c                             | 65 ++++++++++++++++-----
 drivers/pci/quirks.c                            |  3 +-
 include/linux/pci.h                             |  5 ++
 include/uapi/linux/pci_regs.h                   |  5 ++
 10 files changed, 156 insertions(+), 37 deletions(-)

--
2.7.4

Comments

Christoph Hellwig June 14, 2021, 5:50 a.m. UTC | #1
Looks good,

Reviewed-by: Christoph Hellwig <hch@lst.de>
Christoph Hellwig June 14, 2021, 5:55 a.m. UTC | #2
On Sun, Jun 13, 2021 at 05:29:14PM +0800, Dongdong Liu wrote:
> Enable VF 10-Bit Tag Requester when it's upstream component support
> 10-bit Tag Completer.
> 
> Signed-off-by: Dongdong Liu <liudongdong3@huawei.com>

Looks good,

Reviewed-by: Christoph Hellwig <hch@lst.de>
Dongdong Liu June 15, 2021, 3:04 a.m. UTC | #3
On 2021/6/14 13:49, Christoph Hellwig wrote:
>> +			if (!(bridge->pcie_devcap2 & PCI_EXP_DEVCAP2_ATOMIC_ROUTE))
>
> Overly long line.
>
Will fix.
>> +static void pci_init_devcap2(struct pci_dev *dev)
>> +{
>> +	if (!pci_is_pcie(dev))
>> +		return;
>> +
>> +	pcie_capability_read_dword(dev, PCI_EXP_DEVCAP2, &dev->pcie_devcap2);
>> +}
>
> Wouldn't it make sene to merge this into set_pcie_port_type?
Good suggestion, will do.

Thanks,
Dongdong
> .
>