Re:[PATCH] PCI: add PCI Express Port Bus Driver subsystem

From: long
Date: Tue Jan 18 2005 - 13:26:01 EST


On Mon, 17 Jan 2005 15:49:08 -0800 Greg KH wrote:
> > +int pcie_port_device_register(struct pci_dev *dev)
> > +{
> > + struct pcie_device *parent;
> > + int status, type, capabilities, irq_mode, i;
> > + int vectors[PCIE_PORT_DEVICE_MAXSERVICES];
> > + u16 reg16;
> > +
> > + /* Get port type */
> > + pci_read_config_word(dev,
> > + pci_find_capability(dev, PCI_CAP_ID_EXP) +
> > + PCIE_CAPABILITIES_REG, &reg16);
> > + type = (reg16 >> 4) & PORT_TYPE_MASK;
> > +
> > + /* Now get port services */
> > + capabilities = get_port_device_capability(dev);
> > + irq_mode = assign_interrupt_mode(dev, vectors, capabilities);
> > +
> > + /* Allocate parent */
> > + parent = alloc_pcie_device(NULL, dev, type, 0, dev->irq, irq_mode);
> > + if (!parent)
> > + return -ENOMEM;
> > +
> > + status = device_register(&parent->device);
> > + if (status) {
> > + kfree(parent);
> > + return status;
> > + }
>
>
> This puts all of the pcie "port" structures in /sys/devices/ Shouldn't
> you make the parent of the device you create point to the pci_dev
> structure that's passed into this function? That would make the sysfs
> tree a lot saner I think.

The patch makes the parent of the device point to the pci_dev structure
that is passed into this function. If you think it is cleaner that the
patch should not, I will update the patch to reflect your input.

Thanks,
Long
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/