diff options
Diffstat (limited to 'sys/dev/pci')
| -rw-r--r-- | sys/dev/pci/pci_host_generic.c | 22 | ||||
| -rw-r--r-- | sys/dev/pci/pci_pci.c | 15 |
2 files changed, 18 insertions, 19 deletions
diff --git a/sys/dev/pci/pci_host_generic.c b/sys/dev/pci/pci_host_generic.c index f4fccc7b8277..3657be018c99 100644 --- a/sys/dev/pci/pci_host_generic.c +++ b/sys/dev/pci/pci_host_generic.c @@ -639,15 +639,15 @@ generic_pcie_adjust_resource(device_t dev, device_t child, } static int -generic_pcie_map_resource(device_t dev, device_t child, int type, - struct resource *r, struct resource_map_request *argsp, - struct resource_map *map) +generic_pcie_map_resource(device_t dev, device_t child, struct resource *r, + struct resource_map_request *argsp, struct resource_map *map) { struct resource_map_request args; struct pcie_range *range; rman_res_t length, start; - int error; + int error, type; + type = rman_get_type(r); switch (type) { #if defined(NEW_PCIB) && defined(PCI_RES_BUS) case PCI_RES_BUS: @@ -657,8 +657,7 @@ generic_pcie_map_resource(device_t dev, device_t child, int type, case SYS_RES_MEMORY: break; default: - return (bus_generic_map_resource(dev, child, type, r, argsp, - map)); + return (bus_generic_map_resource(dev, child, r, argsp, map)); } /* Resources must be active to be mapped. */ @@ -677,16 +676,17 @@ generic_pcie_map_resource(device_t dev, device_t child, int type, args.offset = start - range->pci_base; args.length = length; - return (bus_generic_map_resource(dev, child, type, range->res, &args, - map)); + return (bus_generic_map_resource(dev, child, range->res, &args, map)); } static int -generic_pcie_unmap_resource(device_t dev, device_t child, int type, - struct resource *r, struct resource_map *map) +generic_pcie_unmap_resource(device_t dev, device_t child, struct resource *r, + struct resource_map *map) { struct pcie_range *range; + int type; + type = rman_get_type(r); switch (type) { #if defined(NEW_PCIB) && defined(PCI_RES_BUS) case PCI_RES_BUS: @@ -703,7 +703,7 @@ generic_pcie_unmap_resource(device_t dev, device_t child, int type, default: break; } - return (bus_generic_unmap_resource(dev, child, type, r, map)); + return (bus_generic_unmap_resource(dev, child, r, map)); } static bus_dma_tag_t diff --git a/sys/dev/pci/pci_pci.c b/sys/dev/pci/pci_pci.c index b4c02bfeca37..146b67c70801 100644 --- a/sys/dev/pci/pci_pci.c +++ b/sys/dev/pci/pci_pci.c @@ -2476,7 +2476,7 @@ pcib_activate_resource(device_t dev, device_t child, int type, int rid, if ((rman_get_flags(r) & RF_UNMAPPED) == 0 && (type == SYS_RES_MEMORY || type == SYS_RES_IOPORT)) { - error = BUS_MAP_RESOURCE(dev, child, type, r, NULL, &map); + error = BUS_MAP_RESOURCE(dev, child, r, NULL, &map); if (error != 0) { rman_deactivate_resource(r); return (error); @@ -2506,7 +2506,7 @@ pcib_deactivate_resource(device_t dev, device_t child, int type, int rid, if ((rman_get_flags(r) & RF_UNMAPPED) == 0 && (type == SYS_RES_MEMORY || type == SYS_RES_IOPORT)) { rman_get_mapping(r, &map); - BUS_UNMAP_RESOURCE(dev, child, type, r, &map); + BUS_UNMAP_RESOURCE(dev, child, r, &map); } return (0); } @@ -2523,7 +2523,7 @@ pcib_find_parent_resource(struct pcib_window *w, struct resource *r) } static int -pcib_map_resource(device_t dev, device_t child, int type, struct resource *r, +pcib_map_resource(device_t dev, device_t child, struct resource *r, struct resource_map_request *argsp, struct resource_map *map) { struct pcib_softc *sc = device_get_softc(dev); @@ -2535,8 +2535,7 @@ pcib_map_resource(device_t dev, device_t child, int type, struct resource *r, w = pcib_get_resource_window(sc, r); if (w == NULL) - return (bus_generic_map_resource(dev, child, type, r, argsp, - map)); + return (bus_generic_map_resource(dev, child, r, argsp, map)); /* Resources must be active to be mapped. */ if (!(rman_get_flags(r) & RF_ACTIVE)) @@ -2553,11 +2552,11 @@ pcib_map_resource(device_t dev, device_t child, int type, struct resource *r, args.offset = start - rman_get_start(pres); args.length = length; - return (bus_generic_map_resource(dev, child, type, pres, &args, map)); + return (bus_generic_map_resource(dev, child, pres, &args, map)); } static int -pcib_unmap_resource(device_t dev, device_t child, int type, struct resource *r, +pcib_unmap_resource(device_t dev, device_t child, struct resource *r, struct resource_map *map) { struct pcib_softc *sc = device_get_softc(dev); @@ -2569,7 +2568,7 @@ pcib_unmap_resource(device_t dev, device_t child, int type, struct resource *r, if (r == NULL) return (ENOENT); } - return (bus_generic_unmap_resource(dev, child, type, r, map)); + return (bus_generic_unmap_resource(dev, child, r, map)); } #else /* |
