On Wed, Sep 30, 2015 at 2:12 PM, Andrew Lunn <and...@lunn.ch> wrote: > On Wed, Sep 30, 2015 at 01:44:52PM -0700, Tim Harvey wrote: >> Greetings, >> >> I'm working on adding DSA support for a PCIe expansion card (designed >> by us) that has common PCIe NIC connected via its mii-bus to a Marvell >> MV88E6171. Because the NIC is a PCIe device, it has no device-tree >> representation of its NIC or its mdio bus, but does register its mdio >> bus with Linux. > > It is possible to represent PCIe devices in device tree. Take a look > at ePAPR. Is the PCIe host in DT?
It is possible to represent PCI devices in device-tree however not in a dynamic or plug-able fashion - they have to be nested per bus/slot which defeats the purpose of dynamic enumeration. > >> Perhaps the right approach is to program the NIC's EEPROM on our board >> with a PCI_ID/DEVICE_ID of ours, add support for those ID's to the >> NIC's driver, and within the NIC's driver create and register dsa >> platform device when our ID is encountered? > > This sounds sensible. But i doubt you can add your DSA platform > information to the NIC's device driver. Better would be to have a > small shim driver which is loaded on your PCI_ID/DEVICE_ID. That would > instantiate the NIC driver, and insert a DSA platform device. I was thinking of this as well, but then I would still need that shim to know the netdevice that the driver I'm shimming creates so I can't figure a way to do it without touching the PCI driver. Tim -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html