提交 7e88ed19 编写于 作者: R rajesh.shah@intel.com 提交者: Greg Kroah-Hartman

[PATCH] shpchp: remove redundant display of PCI device resources

Info about resources assigned to PCI devices is already available
through sysfs and pci utilities. There's no need for shpchp to
create another sysfs file to display the same information.
Signed-off-by: NRajesh Shah <rajesh.shah@intel.com>
Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
上级 dbd7a788
......@@ -88,75 +88,7 @@ static ssize_t show_ctrl (struct device *dev, struct device_attribute *attr, cha
}
static DEVICE_ATTR (ctrl, S_IRUGO, show_ctrl, NULL);
static ssize_t show_dev (struct device *dev, struct device_attribute *attr, char *buf)
{
struct pci_dev *pdev, *fdev;
struct controller *ctrl;
char * out = buf;
int index;
struct resource *res;
struct pci_func *new_slot;
struct slot *slot;
pdev = container_of (dev, struct pci_dev, dev);
ctrl = pci_get_drvdata(pdev);
slot=ctrl->slot;
while (slot) {
new_slot = shpchp_slot_find(slot->bus, slot->device, 0);
if (!new_slot)
break;
fdev = new_slot->pci_dev;
if (!fdev)
break;
out += sprintf(out, "assigned resources: memory\n");
for (index=0; index <= PCI_NUM_RESOURCES; index++) {
res = &(fdev->resource[index]);
if (res && (res->flags & IORESOURCE_MEM) &&
!(res->flags & IORESOURCE_PREFETCH)) {
out += sprintf(out,
"start = %8.8lx, length = %8.8lx\n",
res->start, (res->end - res->start));
}
}
out += sprintf(out, "assigned resources: prefetchable memory\n");
for (index=0; index <= PCI_NUM_RESOURCES; index++) {
res = &(fdev->resource[index]);
if (res && (res->flags & (IORESOURCE_MEM |
IORESOURCE_PREFETCH))) {
out += sprintf(out,
"start = %8.8lx, length = %8.8lx\n",
res->start, (res->end - res->start));
}
}
out += sprintf(out, "assigned resources: IO\n");
for (index=0; index <= PCI_NUM_RESOURCES; index++) {
res = &(fdev->resource[index]);
if (res && (res->flags & IORESOURCE_IO)) {
out += sprintf(out,
"start = %8.8lx, length = %8.8lx\n",
res->start, (res->end - res->start));
}
}
out += sprintf(out, "assigned resources: bus numbers\n");
if (fdev->subordinate)
out += sprintf(out, "start = %8.8x, length = %8.8x\n",
fdev->subordinate->secondary,
(fdev->subordinate->subordinate -
fdev->subordinate->secondary));
else
out += sprintf(out, "start = %8.8x, length = %8.8x\n",
fdev->bus->number, 1);
slot=slot->next;
}
return out - buf;
}
static DEVICE_ATTR (dev, S_IRUGO, show_dev, NULL);
void shpchp_create_ctrl_files (struct controller *ctrl)
{
device_create_file (&ctrl->pci_dev->dev, &dev_attr_ctrl);
device_create_file (&ctrl->pci_dev->dev, &dev_attr_dev);
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册