On Mon, 2008-09-08 at 09:40 -0700, Stephen Hemminger wrote: > > plain text document attachment (vpd-size.patch) > The VPD on all devices may not be 32K. Unfortunately, there is no > generic way to find the size, so this adds a simple API hook > to reset it. > > Signed-off-by: Stephen Hemminger <shemminger@xxxxxxxxxx> > > --- a/drivers/pci/access.c 2008-09-08 09:36:25.000000000 -0700 > +++ b/drivers/pci/access.c 2008-09-08 09:37:08.000000000 -0700 > @@ -341,6 +341,25 @@ int pci_vpd_pci22_init(struct pci_dev *d > } > > /** > + * pci_vpd_size - Set available Vital Product Data size > + * @dev: pci device struct > + * @size: available memory in bytes > + * > + * Adjust size of available VPD area. > + */ > +int pci_vpd_size(struct pci_dev *dev, size_t size) > +{ > + if (!dev->vpd) > + return -EINVAL; /* VPD cannot be larger than the access mechanism supports */ if (size > dev->vpd->len) return -EINVAL; > + > + dev->vpd->len = size; if (dev->vpd->attr) > + dev->vpd->attr->size = size; /* maybe sysfs should implement truncate? */ > + > + return 0; > +} [...] Ben. -- Ben Hutchings, Senior Software Engineer, Solarflare Communications Not speaking for my employer; that's the marketing department's job. They asked us to note that Solarflare product names are trademarked. -- 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