All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] fpga: dfl-pci: add PCI subdevice ID for Intel D5005 card
@ 2024-04-22 23:02 Peter Colberg
  2024-04-26  4:10 ` Xu Yilun
  0 siblings, 1 reply; 4+ messages in thread
From: Peter Colberg @ 2024-04-22 23:02 UTC (permalink / raw)
  To: Wu Hao, Tom Rix, Moritz Fischer, Xu Yilun, linux-fpga, linux-kernel
  Cc: Russ Weight, Marco Pagani, Matthew Gerlach, Peter Colberg

Add PCI subdevice ID for the Intel D5005 Stratix 10 FPGA card as
used with the Open FPGA Stack (OFS) FPGA Interface Manager (FIM).

Unlike the Intel D5005 PAC FIM which exposed a separate PCI device ID,
the OFS FIM reuses the same device ID for all DFL-based FPGA cards
and differentiates on the subdevice ID. The subdevice ID values were
chosen as the numeric part of the FPGA card names in hexadecimal.

Link: https://github.com/OFS/dfl-feature-id/pull/4
Signed-off-by: Peter Colberg <peter.colberg@intel.com>
Reviewed-by: Matthew Gerlach <matthew.gerlach@linux.intel.com>
---
This patch was applied to Linux v6.9-rc5 and tested on an Intel D5005
card flashed with the latest released OFS 2024.1-1 D5005 FIM.

# fpgainfo fme D8:00.0
Intel FPGA Programmable Acceleration Card D5005
Board Management Controller, MAX10 NIOS FW version: 2.0.12 
Board Management Controller, MAX10 Build version: 2.0.8 
//****** FME ******//
Interface                        : DFL
Object Id                        : 0xED00002
PCIe s:b:d.f                     : 0000:D8:00.0
Vendor Id                        : 0x8086
Device Id                        : 0xBCCE
SubVendor Id                     : 0x8086
SubDevice Id                     : 0x138D
Socket Id                        : 0x00
Ports Num                        : 01
Bitstream Id                     : 0x4010002183C88A9
Bitstream Version                : 4.0.1
Pr Interface Id                  : a195b6f7-cf23-5a2b-8ef9-1161e184ec4e
Boot Page                        : user

Link: https://github.com/OFS/ofs-d5005/releases/tag/ofs-2024.1-1
---
The missing subdevice ID 0x138d was noticed while testing the patch
series "fpga: dfl: fix kernel warning on port release/assign for SRIOV"
applied to v6.9-rc4 on an Intel D5005 card. The absence of the subdevice
ID was shadowed by an internal patch in the downstream Linux DFL kernel
("fpga: dfl: Add wildcard sub-device ID for intel DFL devs").

Link: https://github.com/OFS/linux-dfl/commit/27d3d71824f086acae86e41a87b591838b7fa9d1
---
 drivers/fpga/dfl-pci.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/fpga/dfl-pci.c b/drivers/fpga/dfl-pci.c
index 98b8fd16183e..80cac3a5f976 100644
--- a/drivers/fpga/dfl-pci.c
+++ b/drivers/fpga/dfl-pci.c
@@ -78,6 +78,7 @@ static void cci_pci_free_irq(struct pci_dev *pcidev)
 #define PCIE_DEVICE_ID_SILICOM_PAC_N5011	0x1001
 #define PCIE_DEVICE_ID_INTEL_DFL		0xbcce
 /* PCI Subdevice ID for PCIE_DEVICE_ID_INTEL_DFL */
+#define PCIE_SUBDEVICE_ID_INTEL_D5005		0x138d
 #define PCIE_SUBDEVICE_ID_INTEL_N6000		0x1770
 #define PCIE_SUBDEVICE_ID_INTEL_N6001		0x1771
 #define PCIE_SUBDEVICE_ID_INTEL_C6100		0x17d4
@@ -101,6 +102,8 @@ static struct pci_device_id cci_pcie_id_tbl[] = {
 	{PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCIE_DEVICE_ID_INTEL_PAC_D5005_VF),},
 	{PCI_DEVICE(PCI_VENDOR_ID_SILICOM_DENMARK, PCIE_DEVICE_ID_SILICOM_PAC_N5010),},
 	{PCI_DEVICE(PCI_VENDOR_ID_SILICOM_DENMARK, PCIE_DEVICE_ID_SILICOM_PAC_N5011),},
+	{PCI_DEVICE_SUB(PCI_VENDOR_ID_INTEL, PCIE_DEVICE_ID_INTEL_DFL,
+			PCI_VENDOR_ID_INTEL, PCIE_SUBDEVICE_ID_INTEL_D5005),},
 	{PCI_DEVICE_SUB(PCI_VENDOR_ID_INTEL, PCIE_DEVICE_ID_INTEL_DFL,
 			PCI_VENDOR_ID_INTEL, PCIE_SUBDEVICE_ID_INTEL_N6000),},
 	{PCI_DEVICE_SUB(PCI_VENDOR_ID_INTEL, PCIE_DEVICE_ID_INTEL_DFL_VF,
-- 
2.44.0


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

* Re: [PATCH] fpga: dfl-pci: add PCI subdevice ID for Intel D5005 card
  2024-04-22 23:02 [PATCH] fpga: dfl-pci: add PCI subdevice ID for Intel D5005 card Peter Colberg
@ 2024-04-26  4:10 ` Xu Yilun
  2024-04-26 21:35   ` Colberg, Peter
  0 siblings, 1 reply; 4+ messages in thread
From: Xu Yilun @ 2024-04-26  4:10 UTC (permalink / raw)
  To: Peter Colberg
  Cc: Wu Hao, Tom Rix, Moritz Fischer, Xu Yilun, linux-fpga,
	linux-kernel, Russ Weight, Marco Pagani, Matthew Gerlach

On Mon, Apr 22, 2024 at 07:02:57PM -0400, Peter Colberg wrote:
> Add PCI subdevice ID for the Intel D5005 Stratix 10 FPGA card as
> used with the Open FPGA Stack (OFS) FPGA Interface Manager (FIM).
> 
> Unlike the Intel D5005 PAC FIM which exposed a separate PCI device ID,
> the OFS FIM reuses the same device ID for all DFL-based FPGA cards
> and differentiates on the subdevice ID. The subdevice ID values were
> chosen as the numeric part of the FPGA card names in hexadecimal.
> 
> Link: https://github.com/OFS/dfl-feature-id/pull/4

Any reason to put the Link in changelog. I didn't see it provide any
extra info.

> Signed-off-by: Peter Colberg <peter.colberg@intel.com>
> Reviewed-by: Matthew Gerlach <matthew.gerlach@linux.intel.com>

Besides,

Acked-by: Xu Yilun <yilun.xu@intel.com>

> ---
> This patch was applied to Linux v6.9-rc5 and tested on an Intel D5005
> card flashed with the latest released OFS 2024.1-1 D5005 FIM.
> 
> # fpgainfo fme D8:00.0
> Intel FPGA Programmable Acceleration Card D5005
> Board Management Controller, MAX10 NIOS FW version: 2.0.12 
> Board Management Controller, MAX10 Build version: 2.0.8 
> //****** FME ******//
> Interface                        : DFL
> Object Id                        : 0xED00002
> PCIe s:b:d.f                     : 0000:D8:00.0
> Vendor Id                        : 0x8086
> Device Id                        : 0xBCCE
> SubVendor Id                     : 0x8086
> SubDevice Id                     : 0x138D
> Socket Id                        : 0x00
> Ports Num                        : 01
> Bitstream Id                     : 0x4010002183C88A9
> Bitstream Version                : 4.0.1
> Pr Interface Id                  : a195b6f7-cf23-5a2b-8ef9-1161e184ec4e
> Boot Page                        : user
> 
> Link: https://github.com/OFS/ofs-d5005/releases/tag/ofs-2024.1-1
> ---
> The missing subdevice ID 0x138d was noticed while testing the patch
> series "fpga: dfl: fix kernel warning on port release/assign for SRIOV"
> applied to v6.9-rc4 on an Intel D5005 card. The absence of the subdevice
> ID was shadowed by an internal patch in the downstream Linux DFL kernel
> ("fpga: dfl: Add wildcard sub-device ID for intel DFL devs").
> 
> Link: https://github.com/OFS/linux-dfl/commit/27d3d71824f086acae86e41a87b591838b7fa9d1
> ---
>  drivers/fpga/dfl-pci.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/fpga/dfl-pci.c b/drivers/fpga/dfl-pci.c
> index 98b8fd16183e..80cac3a5f976 100644
> --- a/drivers/fpga/dfl-pci.c
> +++ b/drivers/fpga/dfl-pci.c
> @@ -78,6 +78,7 @@ static void cci_pci_free_irq(struct pci_dev *pcidev)
>  #define PCIE_DEVICE_ID_SILICOM_PAC_N5011	0x1001
>  #define PCIE_DEVICE_ID_INTEL_DFL		0xbcce
>  /* PCI Subdevice ID for PCIE_DEVICE_ID_INTEL_DFL */
> +#define PCIE_SUBDEVICE_ID_INTEL_D5005		0x138d
>  #define PCIE_SUBDEVICE_ID_INTEL_N6000		0x1770
>  #define PCIE_SUBDEVICE_ID_INTEL_N6001		0x1771
>  #define PCIE_SUBDEVICE_ID_INTEL_C6100		0x17d4
> @@ -101,6 +102,8 @@ static struct pci_device_id cci_pcie_id_tbl[] = {
>  	{PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCIE_DEVICE_ID_INTEL_PAC_D5005_VF),},
>  	{PCI_DEVICE(PCI_VENDOR_ID_SILICOM_DENMARK, PCIE_DEVICE_ID_SILICOM_PAC_N5010),},
>  	{PCI_DEVICE(PCI_VENDOR_ID_SILICOM_DENMARK, PCIE_DEVICE_ID_SILICOM_PAC_N5011),},
> +	{PCI_DEVICE_SUB(PCI_VENDOR_ID_INTEL, PCIE_DEVICE_ID_INTEL_DFL,
> +			PCI_VENDOR_ID_INTEL, PCIE_SUBDEVICE_ID_INTEL_D5005),},
>  	{PCI_DEVICE_SUB(PCI_VENDOR_ID_INTEL, PCIE_DEVICE_ID_INTEL_DFL,
>  			PCI_VENDOR_ID_INTEL, PCIE_SUBDEVICE_ID_INTEL_N6000),},
>  	{PCI_DEVICE_SUB(PCI_VENDOR_ID_INTEL, PCIE_DEVICE_ID_INTEL_DFL_VF,
> -- 
> 2.44.0
> 
> 

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

* Re: [PATCH] fpga: dfl-pci: add PCI subdevice ID for Intel D5005 card
  2024-04-26  4:10 ` Xu Yilun
@ 2024-04-26 21:35   ` Colberg, Peter
  2024-04-30  2:10     ` Xu Yilun
  0 siblings, 1 reply; 4+ messages in thread
From: Colberg, Peter @ 2024-04-26 21:35 UTC (permalink / raw)
  To: yilun.xu
  Cc: Xu, Yilun, linux-fpga, mdf, Wu, Hao, linux-kernel, russ.weight,
	Pagani, Marco, Rix, Tom, matthew.gerlach

On Fri, 2024-04-26 at 12:10 +0800, Xu Yilun wrote:
> On Mon, Apr 22, 2024 at 07:02:57PM -0400, Peter Colberg wrote:
> > Add PCI subdevice ID for the Intel D5005 Stratix 10 FPGA card as
> > used with the Open FPGA Stack (OFS) FPGA Interface Manager (FIM).
> > 
> > Unlike the Intel D5005 PAC FIM which exposed a separate PCI device ID,
> > the OFS FIM reuses the same device ID for all DFL-based FPGA cards
> > and differentiates on the subdevice ID. The subdevice ID values were
> > chosen as the numeric part of the FPGA card names in hexadecimal.
> > 
> > Link: https://github.com/OFS/dfl-feature-id/pull/4
> 
> Any reason to put the Link in changelog. I didn't see it provide any
> extra info.

The link is provided to point to the corresponding change in the dfl-
pci-ids registry, for someone who might not be aware of its existence.

> 
> > Signed-off-by: Peter Colberg <peter.colberg@intel.com>
> > Reviewed-by: Matthew Gerlach <matthew.gerlach@linux.intel.com>
> 
> Besides,
> 
> Acked-by: Xu Yilun <yilun.xu@intel.com>

Thank you for the review.

Peter

> 
> > ---
> > This patch was applied to Linux v6.9-rc5 and tested on an Intel D5005
> > card flashed with the latest released OFS 2024.1-1 D5005 FIM.
> > 
> > # fpgainfo fme D8:00.0
> > Intel FPGA Programmable Acceleration Card D5005
> > Board Management Controller, MAX10 NIOS FW version: 2.0.12 
> > Board Management Controller, MAX10 Build version: 2.0.8 
> > //****** FME ******//
> > Interface                        : DFL
> > Object Id                        : 0xED00002
> > PCIe s:b:d.f                     : 0000:D8:00.0
> > Vendor Id                        : 0x8086
> > Device Id                        : 0xBCCE
> > SubVendor Id                     : 0x8086
> > SubDevice Id                     : 0x138D
> > Socket Id                        : 0x00
> > Ports Num                        : 01
> > Bitstream Id                     : 0x4010002183C88A9
> > Bitstream Version                : 4.0.1
> > Pr Interface Id                  : a195b6f7-cf23-5a2b-8ef9-1161e184ec4e
> > Boot Page                        : user
> > 
> > Link: https://github.com/OFS/ofs-d5005/releases/tag/ofs-2024.1-1
> > ---
> > The missing subdevice ID 0x138d was noticed while testing the patch
> > series "fpga: dfl: fix kernel warning on port release/assign for SRIOV"
> > applied to v6.9-rc4 on an Intel D5005 card. The absence of the subdevice
> > ID was shadowed by an internal patch in the downstream Linux DFL kernel
> > ("fpga: dfl: Add wildcard sub-device ID for intel DFL devs").
> > 
> > Link: https://github.com/OFS/linux-dfl/commit/27d3d71824f086acae86e41a87b591838b7fa9d1
> > ---
> >  drivers/fpga/dfl-pci.c | 3 +++
> >  1 file changed, 3 insertions(+)
> > 
> > diff --git a/drivers/fpga/dfl-pci.c b/drivers/fpga/dfl-pci.c
> > index 98b8fd16183e..80cac3a5f976 100644
> > --- a/drivers/fpga/dfl-pci.c
> > +++ b/drivers/fpga/dfl-pci.c
> > @@ -78,6 +78,7 @@ static void cci_pci_free_irq(struct pci_dev *pcidev)
> >  #define PCIE_DEVICE_ID_SILICOM_PAC_N5011	0x1001
> >  #define PCIE_DEVICE_ID_INTEL_DFL		0xbcce
> >  /* PCI Subdevice ID for PCIE_DEVICE_ID_INTEL_DFL */
> > +#define PCIE_SUBDEVICE_ID_INTEL_D5005		0x138d
> >  #define PCIE_SUBDEVICE_ID_INTEL_N6000		0x1770
> >  #define PCIE_SUBDEVICE_ID_INTEL_N6001		0x1771
> >  #define PCIE_SUBDEVICE_ID_INTEL_C6100		0x17d4
> > @@ -101,6 +102,8 @@ static struct pci_device_id cci_pcie_id_tbl[] = {
> >  	{PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCIE_DEVICE_ID_INTEL_PAC_D5005_VF),},
> >  	{PCI_DEVICE(PCI_VENDOR_ID_SILICOM_DENMARK, PCIE_DEVICE_ID_SILICOM_PAC_N5010),},
> >  	{PCI_DEVICE(PCI_VENDOR_ID_SILICOM_DENMARK, PCIE_DEVICE_ID_SILICOM_PAC_N5011),},
> > +	{PCI_DEVICE_SUB(PCI_VENDOR_ID_INTEL, PCIE_DEVICE_ID_INTEL_DFL,
> > +			PCI_VENDOR_ID_INTEL, PCIE_SUBDEVICE_ID_INTEL_D5005),},
> >  	{PCI_DEVICE_SUB(PCI_VENDOR_ID_INTEL, PCIE_DEVICE_ID_INTEL_DFL,
> >  			PCI_VENDOR_ID_INTEL, PCIE_SUBDEVICE_ID_INTEL_N6000),},
> >  	{PCI_DEVICE_SUB(PCI_VENDOR_ID_INTEL, PCIE_DEVICE_ID_INTEL_DFL_VF,
> > -- 
> > 2.44.0
> > 
> > 


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

* Re: [PATCH] fpga: dfl-pci: add PCI subdevice ID for Intel D5005 card
  2024-04-26 21:35   ` Colberg, Peter
@ 2024-04-30  2:10     ` Xu Yilun
  0 siblings, 0 replies; 4+ messages in thread
From: Xu Yilun @ 2024-04-30  2:10 UTC (permalink / raw)
  To: Colberg, Peter
  Cc: Xu, Yilun, linux-fpga, mdf, Wu, Hao, linux-kernel, russ.weight,
	Pagani, Marco, Rix, Tom, matthew.gerlach

On Fri, Apr 26, 2024 at 09:35:07PM +0000, Colberg, Peter wrote:
> On Fri, 2024-04-26 at 12:10 +0800, Xu Yilun wrote:
> > On Mon, Apr 22, 2024 at 07:02:57PM -0400, Peter Colberg wrote:
> > > Add PCI subdevice ID for the Intel D5005 Stratix 10 FPGA card as
> > > used with the Open FPGA Stack (OFS) FPGA Interface Manager (FIM).
> > > 
> > > Unlike the Intel D5005 PAC FIM which exposed a separate PCI device ID,
> > > the OFS FIM reuses the same device ID for all DFL-based FPGA cards
> > > and differentiates on the subdevice ID. The subdevice ID values were
> > > chosen as the numeric part of the FPGA card names in hexadecimal.
> > > 
> > > Link: https://github.com/OFS/dfl-feature-id/pull/4
> > 
> > Any reason to put the Link in changelog. I didn't see it provide any
> > extra info.
> 
> The link is provided to point to the corresponding change in the dfl-
> pci-ids registry, for someone who might not be aware of its existence.

I suggest you don't put it in changelog, few people care about
this downstream history.  Put it below '---' if really necessary. I
deleted this link when apply.

Thanks,
Yilun

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

end of thread, other threads:[~2024-04-30  2:16 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-04-22 23:02 [PATCH] fpga: dfl-pci: add PCI subdevice ID for Intel D5005 card Peter Colberg
2024-04-26  4:10 ` Xu Yilun
2024-04-26 21:35   ` Colberg, Peter
2024-04-30  2:10     ` Xu Yilun

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.