Pull PCI fixes from Bjorn Helgaas: "Resource management - Fix IOV sorting by alignment (Wei Yang) - Preserve resource size during alignment reordering (Yinghai Lu) Miscellaneous - MAINTAINERS: Add Pratyush for SPEAr13xx and DesignWare PCIe (Pratyush Anand)" * tag 'pci-v4.1-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: PCI: Preserve resource size during alignment reordering PCI: Fix IOV resource sorting by alignment requirement MAINTAINERS: Add Pratyush Anand as SPEAr13xx and DesignWare PCIe maintainer
Unified · Split
| @@ -7575,6 +7575,7 @@ F: drivers/pci/host/pci-exynos.c · 7574 unmodified lines | |||
| 7575 | 7575 | ||
| 7576 | PCI DRIVER FOR SYNOPSIS DESIGNWARE | 7576 | PCI DRIVER FOR SYNOPSIS DESIGNWARE |
| 7577 | M: Jingoo Han <jingoohan1@gmail.com> | 7577 | M: Jingoo Han <jingoohan1@gmail.com> |
| 7578 | M: Pratyush Anand <pratyush.anand@gmail.com> | ||
| 7578 | L: linux-pci@vger.kernel.org | 7579 | L: linux-pci@vger.kernel.org |
| 7579 | S: Maintained | 7580 | S: Maintained |
| 7580 | F: drivers/pci/host/*designware* | 7581 | F: drivers/pci/host/*designware* |
| @@ -7588,8 +7589,9 @@ F: Documentation/devicetree/bindings/pci/host-generic-pci.txt · 7 unmodified lines | |||
| 7588 | F: drivers/pci/host/pci-host-generic.c | 7589 | F: drivers/pci/host/pci-host-generic.c |
| 7589 | 7590 | ||
| 7590 | PCIE DRIVER FOR ST SPEAR13XX | 7591 | PCIE DRIVER FOR ST SPEAR13XX |
| 7592 | M: Pratyush Anand <pratyush.anand@gmail.com> | ||
| 7591 | L: linux-pci@vger.kernel.org | 7593 | L: linux-pci@vger.kernel.org |
| 7592 | S: Orphan | 7594 | S: Maintained |
| 7593 | F: drivers/pci/host/*spear* | 7595 | F: drivers/pci/host/*spear* |
| 7594 | 7596 | ||
| 7595 | PCMCIA SUBSYSTEM | 7597 | PCMCIA SUBSYSTEM |
| @@ -428,16 +428,19 @@ static void __assign_resources_sorted(struct list_head *head, · 427 unmodified lines | |||
| 428 | * consistent. | 428 | * consistent. |
| 429 | */ | 429 | */ |
| 430 | if (add_align > dev_res->res->start) { | 430 | if (add_align > dev_res->res->start) { |
| 431 | resource_size_t r_size = resource_size(dev_res->res); | ||
| 432 | |||
| 431 | dev_res->res->start = add_align; | 433 | dev_res->res->start = add_align; |
| 432 | dev_res->res->end = add_align + | 434 | dev_res->res->end = add_align + r_size - 1; |
| 433 | resource_size(dev_res->res); | ||
| 434 | 435 | ||
| 435 | list_for_each_entry(dev_res2, head, list) { | 436 | list_for_each_entry(dev_res2, head, list) { |
| 436 | align = pci_resource_alignment(dev_res2->dev, | 437 | align = pci_resource_alignment(dev_res2->dev, |
| 437 | dev_res2->res); | 438 | dev_res2->res); |
| 438 | if (add_align > align) | 439 | if (add_align > align) { |
| 439 | list_move_tail(&dev_res->list, | 440 | list_move_tail(&dev_res->list, |
| 440 | &dev_res2->list); | 441 | &dev_res2->list); |
| 442 | break; | ||
| 443 | } | ||
| 441 | } | 444 | } |
| 442 | } | 445 | } |
| 443 | 446 | ||