Loading arch/sparc64/kernel/isa.c +4 −32 Original line number Diff line number Diff line Loading @@ -24,27 +24,9 @@ static void __init report_dev(struct sparc_isa_device *isa_dev, int child) static void __init isa_dev_get_resource(struct sparc_isa_device *isa_dev) { const struct linux_prom_registers *pregs; unsigned long base, len; int prop_len; pregs = of_get_property(isa_dev->prom_node, "reg", &prop_len); if (!pregs) return; /* Only the first one is interesting. */ len = pregs[0].reg_size; base = (((unsigned long)pregs[0].which_io << 32) | (unsigned long)pregs[0].phys_addr); base += isa_dev->bus->parent->io_space.start; isa_dev->resource.start = base; isa_dev->resource.end = (base + len - 1UL); isa_dev->resource.flags = IORESOURCE_IO; isa_dev->resource.name = isa_dev->prom_node->name; struct of_device *op = of_find_device_by_node(isa_dev->prom_node); request_resource(&isa_dev->bus->parent->io_space, &isa_dev->resource); memcpy(&isa_dev->resource, &op->resource[0], sizeof(struct resource)); } static void __init isa_dev_get_irq(struct sparc_isa_device *isa_dev) Loading Loading @@ -158,19 +140,10 @@ void __init isa_init(void) pdev = NULL; while ((pdev = pci_get_device(vendor, device, pdev)) != NULL) { struct pcidev_cookie *pdev_cookie; struct pci_pbm_info *pbm; struct sparc_isa_bridge *isa_br; struct device_node *dp; pdev_cookie = pdev->sysdata; if (!pdev_cookie) { printk("ISA: Warning, ISA bridge ignored due to " "lack of OBP data.\n"); continue; } pbm = pdev_cookie->pbm; dp = pdev_cookie->prom_node; dp = pci_device_to_OF_node(pdev); isa_br = kzalloc(sizeof(*isa_br), GFP_KERNEL); if (!isa_br) { Loading @@ -195,10 +168,9 @@ void __init isa_init(void) isa_br->next = isa_chain; isa_chain = isa_br; isa_br->parent = pbm; isa_br->self = pdev; isa_br->index = index++; isa_br->prom_node = pdev_cookie->prom_node; isa_br->prom_node = dp; printk("isa%d:", isa_br->index); Loading include/asm-sparc64/isa.h +0 −2 Original line number Diff line number Diff line Loading @@ -7,7 +7,6 @@ #ifndef __SPARC64_ISA_H #define __SPARC64_ISA_H #include <asm/pbm.h> #include <asm/oplib.h> #include <asm/prom.h> #include <asm/of_device.h> Loading @@ -29,7 +28,6 @@ struct sparc_isa_bridge { struct of_device ofdev; struct sparc_isa_bridge *next; struct sparc_isa_device *devices; struct pci_pbm_info *parent; struct pci_dev *self; int index; struct device_node *prom_node; Loading Loading
arch/sparc64/kernel/isa.c +4 −32 Original line number Diff line number Diff line Loading @@ -24,27 +24,9 @@ static void __init report_dev(struct sparc_isa_device *isa_dev, int child) static void __init isa_dev_get_resource(struct sparc_isa_device *isa_dev) { const struct linux_prom_registers *pregs; unsigned long base, len; int prop_len; pregs = of_get_property(isa_dev->prom_node, "reg", &prop_len); if (!pregs) return; /* Only the first one is interesting. */ len = pregs[0].reg_size; base = (((unsigned long)pregs[0].which_io << 32) | (unsigned long)pregs[0].phys_addr); base += isa_dev->bus->parent->io_space.start; isa_dev->resource.start = base; isa_dev->resource.end = (base + len - 1UL); isa_dev->resource.flags = IORESOURCE_IO; isa_dev->resource.name = isa_dev->prom_node->name; struct of_device *op = of_find_device_by_node(isa_dev->prom_node); request_resource(&isa_dev->bus->parent->io_space, &isa_dev->resource); memcpy(&isa_dev->resource, &op->resource[0], sizeof(struct resource)); } static void __init isa_dev_get_irq(struct sparc_isa_device *isa_dev) Loading Loading @@ -158,19 +140,10 @@ void __init isa_init(void) pdev = NULL; while ((pdev = pci_get_device(vendor, device, pdev)) != NULL) { struct pcidev_cookie *pdev_cookie; struct pci_pbm_info *pbm; struct sparc_isa_bridge *isa_br; struct device_node *dp; pdev_cookie = pdev->sysdata; if (!pdev_cookie) { printk("ISA: Warning, ISA bridge ignored due to " "lack of OBP data.\n"); continue; } pbm = pdev_cookie->pbm; dp = pdev_cookie->prom_node; dp = pci_device_to_OF_node(pdev); isa_br = kzalloc(sizeof(*isa_br), GFP_KERNEL); if (!isa_br) { Loading @@ -195,10 +168,9 @@ void __init isa_init(void) isa_br->next = isa_chain; isa_chain = isa_br; isa_br->parent = pbm; isa_br->self = pdev; isa_br->index = index++; isa_br->prom_node = pdev_cookie->prom_node; isa_br->prom_node = dp; printk("isa%d:", isa_br->index); Loading
include/asm-sparc64/isa.h +0 −2 Original line number Diff line number Diff line Loading @@ -7,7 +7,6 @@ #ifndef __SPARC64_ISA_H #define __SPARC64_ISA_H #include <asm/pbm.h> #include <asm/oplib.h> #include <asm/prom.h> #include <asm/of_device.h> Loading @@ -29,7 +28,6 @@ struct sparc_isa_bridge { struct of_device ofdev; struct sparc_isa_bridge *next; struct sparc_isa_device *devices; struct pci_pbm_info *parent; struct pci_dev *self; int index; struct device_node *prom_node; Loading