Module Name: src Committed By: martin Date: Sun Jul 12 11:40:58 UTC 2020
Modified Files: src/sys/arch/x86/pci [netbsd-9]: rdcpcib.c Log Message: Additionaly pull up the following revisions for ticket #998 to unbreak the build: sys/arch/x86/pci/rdcpcib.c 1.3 Recognize more RDC devices. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.2.58.1 src/sys/arch/x86/pci/rdcpcib.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/x86/pci/rdcpcib.c diff -u src/sys/arch/x86/pci/rdcpcib.c:1.2 src/sys/arch/x86/pci/rdcpcib.c:1.2.58.1 --- src/sys/arch/x86/pci/rdcpcib.c:1.2 Fri Jul 1 18:22:08 2011 +++ src/sys/arch/x86/pci/rdcpcib.c Sun Jul 12 11:40:58 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: rdcpcib.c,v 1.2 2011/07/01 18:22:08 dyoung Exp $ */ +/* $NetBSD: rdcpcib.c,v 1.2.58.1 2020/07/12 11:40:58 martin Exp $ */ /* * Copyright (c) 2011 Manuel Bouyer. @@ -31,7 +31,7 @@ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: rdcpcib.c,v 1.2 2011/07/01 18:22:08 dyoung Exp $"); +__KERNEL_RCSID(0, "$NetBSD: rdcpcib.c,v 1.2.58.1 2020/07/12 11:40:58 martin Exp $"); #include <sys/types.h> #include <sys/param.h> @@ -88,6 +88,17 @@ CFATTACH_DECL2_NEW(rdcpcib, sizeof(struc rdcpcibmatch, rdcpcibattach, rdcpcibdetach, NULL, pcibrescan, pcibchilddet); + +static const struct rdcpcib_device { + pcireg_t vendor, product; +} rdcpcib_devices[] = { + { PCI_VENDOR_RDC, PCI_PRODUCT_RDC_R6011_PCIB}, + { PCI_VENDOR_RDC, PCI_PRODUCT_RDC_R6013_PCIB}, + { PCI_VENDOR_RDC, PCI_PRODUCT_RDC_R6031_PCIB}, + { PCI_VENDOR_RDC, PCI_PRODUCT_RDC_R6035_PCIB}, + { PCI_VENDOR_RDC, PCI_PRODUCT_RDC_R6036_PCIB}, +}; + static int rdcpcibmatch(device_t parent, cfdata_t match, void *aux) { @@ -97,9 +108,11 @@ rdcpcibmatch(device_t parent, cfdata_t m PCI_SUBCLASS(pa->pa_class) != PCI_SUBCLASS_BRIDGE_ISA) return 0; - if (PCI_VENDOR(pa->pa_id) == PCI_VENDOR_RDC && - PCI_PRODUCT(pa->pa_id) == PCI_PRODUCT_RDC_PCIB) + for (size_t i = 0; i < __arraycount(rdcpcib_devices); i++) { + if (PCI_VENDOR(pa->pa_id) == rdcpcib_devices[i].vendor && + PCI_PRODUCT(pa->pa_id) == rdcpcib_devices[i].product) return 10; + } return 0; }