On Wed, Jun 26, 2013 at 02:16:56PM -0700, Darren Hart wrote: > On Wed, 2013-06-26 at 13:37 -0600, Bjorn Helgaas wrote: > > On Wed, Jun 26, 2013 at 11:15 AM, Darren Hart <dvhart@xxxxxxxxxxxxxxx> wrote: > > > On Wed, 2013-06-26 at 10:32 -0600, Bjorn Helgaas wrote: > > > > >> +#define PCI_VENDOR_ID_CIRCUITCO 0x1cc8 > > >> + > > >> #define PCI_VENDOR_ID_TEKRAM 0x1de1 > > >> #define PCI_DEVICE_ID_TEKRAM_DC290 0xdc29 > > > > > > > > > Thanks Bjorn. When I reuse this Subsystem ID and there is more than one > > > usage, I should send a patch to pci_ids.h adding it and replace the hex > > > value in all drivers with the new define. Is that right? > > > > Yeah, that's what I was thinking. > > > > But Peter's comment makes more sense to me now. The spec refers to > > that config register as "Subsystem ID," not "Subsystem Device ID," but > > I was confused because most existing usage treats it as a device ID. > > For example, the field in struct pci_device_id is named "subdevice," > > and all the existing #defines in pci_ids.h are of the form > > PCI_SUBDEVICE_ID_*. > > > > Device IDs are pretty specific identifiers, so I was thinking that a > > "sub-device ID" would be even more specific. Then it would make no > > sense to have a "sub-device ID" that was as generic as "MINNOWBOARD." > > But the register is actually *not* a "sub-device ID," and I can see > > that using the same Subsystem ID for all the devices on a board might > > make sense. > > > > So I think the name PCI_DEVICE_ID_CIRCUITCO_MINNOWBOARD is a bit of a > > misnomer, and something like PCI_SUBSYSTEM_CIRCUITCO_MINNOWBOARD would > > make it more clear that it really isn't sharing the device ID space > > assigned to CircuitCo. It would make perfect sense to have a Device > > ID, e.g., "PCI_DEVICE_ID_CIRCUIT_CO_xxx 0x0001," that has nothing to > > do with the Subsystem ID 0x0001. > > > > If you want to do something like that (or even keep your original > > patch), I can put that in my -next branch. Just let me know. > > > > Bjorn > > > I would be happy to change DEVICE to SUBSYSTEM in the the pci_ids.h: > > +#define PCI_VENDOR_ID_CIRCUITCO 0x1cc8 > +#define PCI_SUBSYSTEM_ID_CITCUITCO_MINNOWBOARD 0x0001 > > Would you like me to send another patch? No need. I'll just apply the following patch. Obviously your follow-on pch_gbe patch will need a corresponding change. Let me know if it needs tweaking, or if you decide I was talking nonsense above. commit c2efb42ab6033388f3bbed2dbe0fb76f2402e04a Author: Darren Hart <dvhart@xxxxxxxxxxxxxxx> Date: Tue Jun 25 20:08:46 2013 -0600 PCI: Add CircuitCo vendor ID and subsystem ID Add CircuitCo's newly created VENDOR ID and their first board subsystem ID for the MinnowBoard. [bhelgaas: sort, change DEVICE_ID to SUBSYSTEM_ID] Signed-off-by: Darren Hart <dvhart@xxxxxxxxxxxxxxx> Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx> diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index c129162..4c7b349 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h @@ -2476,6 +2476,9 @@ #define PCI_VENDOR_ID_ASMEDIA 0x1b21 +#define PCI_VENDOR_ID_CIRCUITCO 0x1cc8 +#define PCI_SUBSYSTEM_ID_CIRCUITCO_MINNOWBOARD 0x0001 + #define PCI_VENDOR_ID_TEKRAM 0x1de1 #define PCI_DEVICE_ID_TEKRAM_DC290 0xdc29 -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html