linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/5] pci: implement function to read Device Serial Number
@ 2020-02-27 22:36 Jacob Keller
  2020-02-27 22:36 ` [PATCH] ice-shared: add macro specifying max NVM offset Jacob Keller
                   ` (5 more replies)
  0 siblings, 6 replies; 28+ messages in thread
From: Jacob Keller @ 2020-02-27 22:36 UTC (permalink / raw)
  To: linux-pci, netdev; +Cc: Jacob Keller

Several drivers read the Device Serial Number from the PCIe extended
configuration space. Each of these drivers implements a similar approach to
finding the position and then extracting the 8 bytes of data.

Implement a new helper function, pci_get_dsn, which can be used to extract
this data into an 8 byte array.

Modify the bnxt_en, qedf, ice, and ixgbe driver to use this new function.

I left the implementation in the netronome nfp driver alone because they
appear to extract parts of the DSN into separate locations and the
transformation was not as obvious.

The intent for this is to reduce duplicate code across the various drivers,
and make it easier to write future code that wants to read the DSN. In
particular the ice driver will be using the DSN as its serial number when
implementing the DEVLINK_CMD_INFO_GET.

I'm not entirely sure what tree these patches should go through, since it
includes a core PCI change, as well as changes for both networking drivers
and a scsi driver.

Jacob Keller (5):
  pci: introduce pci_get_dsn
  bnxt_en: use pci_get_dsn
  scsi: qedf: use pci_get_dsn
  ice: use pci_get_dsn
  ixgbe: use pci_get_dsn

 drivers/net/ethernet/broadcom/bnxt/bnxt.c     | 14 +++-----
 drivers/net/ethernet/intel/ice/ice_main.c     | 32 ++++++++----------
 drivers/net/ethernet/intel/ixgbe/ixgbe_fcoe.c | 16 ++++-----
 drivers/pci/pci.c                             | 33 +++++++++++++++++++
 drivers/scsi/qedf/qedf_main.c                 | 16 ++++-----
 include/linux/pci.h                           |  5 +++
 6 files changed, 68 insertions(+), 48 deletions(-)

-- 
2.25.0.368.g28a2d05eebfb


^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2020-03-06  1:30 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-27 22:36 [PATCH 0/5] pci: implement function to read Device Serial Number Jacob Keller
2020-02-27 22:36 ` [PATCH] ice-shared: add macro specifying max NVM offset Jacob Keller
2020-02-27 22:43   ` Jacob Keller
2020-02-27 22:36 ` [PATCH 1/5] pci: introduce pci_get_dsn Jacob Keller
2020-03-01  5:27   ` David Miller
2020-03-02 19:58     ` Jacob Keller
2020-03-02 22:25   ` Bjorn Helgaas
2020-03-02 22:33     ` Jacob Keller
2020-03-02 23:20       ` Bjorn Helgaas
2020-03-02 23:24         ` Jacob Keller
2020-03-02 23:39           ` Bjorn Helgaas
2020-03-03  2:24             ` [PATCH v2 0/6] PCI: Implement function to read Device Serial Number Jacob Keller
2020-03-03  2:25               ` [PATCH v2 1/6] PCI: Introduce pci_get_dsn Jacob Keller
2020-03-04 22:42                 ` Bjorn Helgaas
2020-03-03  2:25               ` [PATCH v2 2/6] bnxt_en: Use pci_get_dsn() Jacob Keller
2020-03-03  2:25               ` [PATCH v2 3/6] scsi: qedf: " Jacob Keller
2020-03-03  2:25               ` [PATCH v2 4/6] ice: " Jacob Keller
2020-03-03  2:25               ` [PATCH v2 5/6] ixgbe: " Jacob Keller
2020-03-03  2:25               ` [PATCH v2 6/6] nfp: " Jacob Keller
2020-03-03  3:40                 ` Jakub Kicinski
2020-03-03 17:36                   ` Jacob Keller
2020-03-04 22:28               ` [PATCH v2 0/6] PCI: Implement function to read Device Serial Number David Miller
2020-03-06  1:30               ` David Miller
2020-02-27 22:36 ` [PATCH 2/5] bnxt_en: use pci_get_dsn Jacob Keller
2020-03-02 22:25   ` Bjorn Helgaas
2020-02-27 22:36 ` [PATCH 3/5] scsi: qedf: " Jacob Keller
2020-02-27 22:36 ` [PATCH 4/5] ice: " Jacob Keller
2020-02-27 22:36 ` [PATCH 5/5] ixgbe: " Jacob Keller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).