Remove vendor PCI check, check only pci class

This commit is contained in:
Ryan Raasch 2021-04-15 11:58:14 +02:00
parent 07f3673b23
commit 25ef46072c
4 changed files with 8 additions and 8 deletions

View File

@ -56,7 +56,7 @@ func (f *DflFME) Close() error {
// NewDflFME Opens device. // NewDflFME Opens device.
func NewDflFME(dev string) (FME, error) { func NewDflFME(dev string) (FME, error) {
fme := &DflFME{DevPath: dev} fme := &DflFME{DevPath: dev}
if err := checkVendorAndClass(fme); err != nil { if err := checkPCIDeviceType(fme); err != nil {
return nil, err return nil, err
} }
if err := fme.updateProperties(); err != nil { if err := fme.updateProperties(); err != nil {
@ -92,7 +92,7 @@ func (f *DflPort) Close() error {
// NewDflPort Opens device. // NewDflPort Opens device.
func NewDflPort(dev string) (Port, error) { func NewDflPort(dev string) (Port, error) {
port := &DflPort{DevPath: dev} port := &DflPort{DevPath: dev}
if err := checkVendorAndClass(port); err != nil { if err := checkPCIDeviceType(port); err != nil {
return nil, err return nil, err
} }
if err := port.updateProperties(); err != nil { if err := port.updateProperties(); err != nil {

View File

@ -53,7 +53,7 @@ func (f *IntelFpgaFME) Close() error {
// NewIntelFpgaFME Opens device. // NewIntelFpgaFME Opens device.
func NewIntelFpgaFME(dev string) (FME, error) { func NewIntelFpgaFME(dev string) (FME, error) {
fme := &IntelFpgaFME{DevPath: dev} fme := &IntelFpgaFME{DevPath: dev}
if err := checkVendorAndClass(fme); err != nil { if err := checkPCIDeviceType(fme); err != nil {
return nil, err return nil, err
} }
if err := fme.updateProperties(); err != nil { if err := fme.updateProperties(); err != nil {
@ -86,7 +86,7 @@ func (f *IntelFpgaPort) Close() error {
// NewIntelFpgaPort Opens device. // NewIntelFpgaPort Opens device.
func NewIntelFpgaPort(dev string) (Port, error) { func NewIntelFpgaPort(dev string) (Port, error) {
port := &IntelFpgaPort{DevPath: dev} port := &IntelFpgaPort{DevPath: dev}
if err := checkVendorAndClass(port); err != nil { if err := checkPCIDeviceType(port); err != nil {
port.Close() port.Close()
return nil, err return nil, err
} }

View File

@ -29,7 +29,6 @@ import (
const ( const (
pciAddressRegex = `^([[:xdigit:]]{4}):([[:xdigit:]]{2}):([[:xdigit:]]{2})\.([[:xdigit:]])$` pciAddressRegex = `^([[:xdigit:]]{4}):([[:xdigit:]]{2}):([[:xdigit:]]{2})\.([[:xdigit:]])$`
vendorIntel = "0x8086"
fpgaClass = "0x120000" fpgaClass = "0x120000"
) )

View File

@ -62,13 +62,14 @@ func cleanBasename(name string) string {
} }
// check that FPGA device is a compatible PCI device. // check that FPGA device is a compatible PCI device.
func checkVendorAndClass(dev commonFpgaAPI) error { func checkPCIDeviceType(dev commonFpgaAPI) error {
pci, err := dev.GetPCIDevice() pci, err := dev.GetPCIDevice()
if err != nil { if err != nil {
return err return err
} }
if pci.Vendor != vendorIntel || pci.Class != fpgaClass {
return errors.Errorf("unsupported PCI device %s VID=%s PID=%s Class=%s", pci.BDF, pci.Vendor, pci.Device, pci.Class) if pci.Class != fpgaClass {
return errors.Errorf("unsupported PCI class device %s VID=%s PID=%s Class=%s", pci.BDF, pci.Vendor, pci.Device, pci.Class)
} }
return nil return nil
} }