1. 18 8月, 2016 4 次提交
  2. 02 8月, 2016 14 次提交
    • P
      PCI: xgene: Make explicitly non-modular · 50dcd290
      Paul Gortmaker 提交于
      This code is not being built as a module by anyone:
      
        drivers/pci/host/Kconfig:config PCI_XGENE
        drivers/pci/host/Kconfig:       bool "X-Gene PCIe controller"
      
      Remove uses of MODULE_DESCRIPTION(), MODULE_AUTHOR(), MODULE_LICENSE(),
      etc., so that when reading the driver there is no doubt it is builtin-only.
      The information is preserved in comments at the top of the file.
      
      Replace module_platform_driver() with builtin_platform_driver(), which uses
      the same init level priority, so init ordering is unchanged.
      
      [bhelgaas: changelog]
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      CC: Tanmay Inamdar <tinamdar@apm.com>
      50dcd290
    • P
      PCI: thunder-pem: Make explicitly non-modular · 0b3cd164
      Paul Gortmaker 提交于
      This code is not being built as a module by anyone:
      
        drivers/pci/host/Kconfig:config PCI_HOST_THUNDER_PEM
        drivers/pci/host/Kconfig:       bool "Cavium Thunder PCIe controller to off-chip devices"
      
      Remove uses of MODULE_DESCRIPTION(), MODULE_AUTHOR(), MODULE_LICENSE(),
      etc., so that when reading the driver there is no doubt it is builtin-only.
      The information is preserved in comments at the top of the file.
      
      Replace module_platform_driver() with builtin_platform_driver(), which uses
      the same init level priority, so init ordering is unchanged.
      
      Note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      [bhelgaas: changelog]
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      CC: David Daney <david.daney@cavium.com>
      0b3cd164
    • P
      PCI: thunder-ecam: Make explicitly non-modular · d0c6fd76
      Paul Gortmaker 提交于
      This code is not being built as a module by anyone:
      
        drivers/pci/host/Kconfig:config PCI_HOST_THUNDER_ECAM
        drivers/pci/host/Kconfig:       bool "Cavium Thunder ECAM controller to on-chip devices on pass-1.x silicon"
      
      Remove uses of MODULE_DESCRIPTION(), MODULE_AUTHOR(), MODULE_LICENSE(),
      etc., so that when reading the driver there is no doubt it is builtin-only.
      The information is preserved in comments at the top of the file.
      
      Replace module_platform_driver() with builtin_platform_driver(), which uses
      the same init level priority, so init ordering is unchanged.
      
      Note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      [bhelgaas: changelog]
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      CC: David Daney <david.daney@cavium.com>
      d0c6fd76
    • P
      PCI: tegra: Make explicitly non-modular · ad183271
      Paul Gortmaker 提交于
      This code is not being built as a module by anyone:
      
        drivers/pci/host/Kconfig:config PCI_TEGRA
        drivers/pci/host/Kconfig:       bool "NVIDIA Tegra PCIe controller"
      
      Remove uses of MODULE_DESCRIPTION(), MODULE_AUTHOR(), MODULE_LICENSE(),
      etc., so that when reading the driver there is no doubt it is builtin-only.
      The information is preserved in comments at the top of the file.
      
      Replace module_platform_driver() with builtin_platform_driver(), which uses
      the same init level priority, so init ordering is unchanged.
      
      Note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      [bhelgaas: changelog]
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      CC: Thierry Reding <thierry.reding@gmail.com>
      CC: Stephen Warren <swarren@wwwdotorg.org>
      CC: Alexandre Courbot <gnurou@gmail.com>
      CC: linux-tegra@vger.kernel.org
      ad183271
    • P
      PCI: rcar-gen2: Make explicitly non-modular · 0b9c1589
      Paul Gortmaker 提交于
      This code is not being built as a module by anyone:
      
        drivers/pci/host/Kconfig:config PCI_RCAR_GEN2
        drivers/pci/host/Kconfig:       bool "Renesas R-Car Gen2 Internal PCI controller"
      
      Remove uses of MODULE_DESCRIPTION(), MODULE_AUTHOR(), MODULE_LICENSE(),
      etc., so that when reading the driver there is no doubt it is builtin-only.
      The information is preserved in comments at the top of the file.
      
      Replace module_platform_driver() with builtin_platform_driver(), which uses
      the same init level priority, so init ordering is unchanged.
      
      Note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      [bhelgaas: changelog, remove "Module" from author comment]
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      Acked-by: NSimon Horman <horms+renesas@verge.net.au>
      Acked-by: NPhil Edworthy <phil.edworthy@renesas.com>
      CC: Valentine Barshak <valentine.barshak@cogentembedded.com>
      0b9c1589
    • P
      PCI: rcar: Make explicitly non-modular · 42d10719
      Paul Gortmaker 提交于
      This code is not being built as a module by anyone:
      
        drivers/pci/host/Kconfig:config PCI_RCAR_GEN2_PCIE
        drivers/pci/host/Kconfig:       bool "Renesas R-Car PCIe controller"
      
      Remove uses of MODULE_DESCRIPTION(), MODULE_AUTHOR(), MODULE_LICENSE(),
      etc., so that when reading the driver there is no doubt it is builtin-only.
      The information is preserved in comments at the top of the file.
      
      Replace module_platform_driver() with builtin_platform_driver(), which uses
      the same init level priority, so init ordering is unchanged.
      
      Note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      [bhelgaas: changelog, remove "Module" from author comment]
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      Acked-by: NSimon Horman <horms+renesas@verge.net.au>
      Acked-by: NPhil Edworthy <phil.edworthy@renesas.com>
      42d10719
    • P
      PCI: mvebu: Make explicitly non-modular · 82641d9b
      Paul Gortmaker 提交于
      This code is not being built as a module by anyone:
      
        drivers/pci/host/Kconfig:config PCI_MVEBU
        drivers/pci/host/Kconfig:       bool "Marvell EBU PCIe controller"
      
      Remove uses of MODULE_DESCRIPTION(), MODULE_AUTHOR(), MODULE_LICENSE(),
      etc., so that when reading the driver there is no doubt it is builtin-only.
      The information is preserved in comments at the top of the file.
      
      Replace module_platform_driver() with builtin_platform_driver(), which uses
      the same init level priority, so init ordering is unchanged.
      
      Note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      [bhelgaas: changelog, remove "Module" from author comment]
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      Reviewed-by: NThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      CC: Jason Cooper <jason@lakedaemon.net>
      82641d9b
    • P
      PCI: layerscape: Make explicitly non-modular · 154fb600
      Paul Gortmaker 提交于
      This code is not being built as a module by anyone:
      
        drivers/pci/host/Kconfig:config PCI_LAYERSCAPE
        drivers/pci/host/Kconfig:       bool "Freescale Layerscape PCIe controller"
      
      Remove uses of MODULE_DESCRIPTION(), MODULE_AUTHOR(), MODULE_LICENSE(),
      etc., so that when reading the driver there is no doubt it is builtin-only.
      The information is preserved in comments at the top of the file.
      
      Replace module_platform_driver() with builtin_platform_driver(), which uses
      the same init level priority, so init ordering is unchanged.
      
      Note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      [bhelgaas: changelog]
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      CC: Minghuan Lian <minghuan.Lian@freescale.com>
      CC: Mingkai Hu <mingkai.hu@freescale.com>
      CC: Roy Zang <tie-fei.zang@freescale.com>
      154fb600
    • P
      PCI: keystone: Make explicitly non-modular · 1481bf21
      Paul Gortmaker 提交于
      This code is not being built as a module by anyone:
      
        drivers/pci/host/Kconfig:config PCI_KEYSTONE
        drivers/pci/host/Kconfig:       bool "TI Keystone PCIe controller"
      
      Remove uses of MODULE_DESCRIPTION(), MODULE_AUTHOR(), MODULE_LICENSE(),
      etc., so that when reading the driver there is no doubt it is builtin-only.
      The information is preserved in comments at the top of the file.
      
      Replace module_platform_driver() with builtin_platform_driver(), which uses
      the same init level priority, so init ordering is unchanged.
      
      Note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      [bhelgaas: changelog]
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      Tested-By: NMurali Karicheri <m-karicheri2@ti.com>
      1481bf21
    • P
      PCI: hisi: Make explicitly non-modular · fb38118d
      Paul Gortmaker 提交于
      This code is not being built as a module by anyone:
      
        host/Kconfig:config PCI_HISI
        host/Kconfig:    bool "HiSilicon Hip05 and Hip06 SoCs PCIe controllers"
      
      Remove uses of MODULE_DESCRIPTION(), MODULE_AUTHOR(), MODULE_LICENSE(),
      etc., so that when reading the driver there is no doubt it is builtin-only.
      The information is preserved in comments at the top of the file.
      
      Replace module_platform_driver() with builtin_platform_driver(), which uses
      the same init level priority, so init ordering is unchanged.
      
      Note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      [bhelgaas: changelog]
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      CC: Zhou Wang <wangzhou1@hisilicon.com>
      CC: Dacai Zhu <zhudacai@hisilicon.com>
      CC: Gabriele Paoloni <gabriele.paoloni@huawei.com>
      fb38118d
    • P
      PCI: generic: Make explicitly non-modular · 99849bf3
      Paul Gortmaker 提交于
      This code is not being built as a module by anyone:
      
        drivers/pci/host/Kconfig:config PCI_HOST_GENERIC
        drivers/pci/host/Kconfig:       bool "Generic PCI host controller"
      
      Remove uses of MODULE_DESCRIPTION(), MODULE_AUTHOR(), MODULE_LICENSE(),
      etc., so that when reading the driver there is no doubt it is builtin-only.
      The information is preserved in comments at the top of the file.
      
      Replace module_platform_driver() with builtin_platform_driver(), which uses
      the same init level priority, so init ordering is unchanged.
      
      Note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      [bhelgaas: changelog]
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      Acked-by: NWill Deacon <will.deacon@arm.com>
      99849bf3
    • P
      PCI: designware-plat: Make it explicitly non-modular · ca8d3346
      Paul Gortmaker 提交于
      This code is not being built as a module by anyone:
      
        drivers/pci/host/Kconfig:config PCIE_DW_PLAT
        drivers/pci/host/Kconfig:       bool "Platform bus based DesignWare PCIe Controller"
      
      Remove uses of MODULE_DESCRIPTION(), MODULE_AUTHOR(), MODULE_LICENSE(),
      etc., so that when reading the driver there is no doubt it is builtin-only.
      The information is preserved in comments at the top of the file.
      
      Replace module_platform_driver() with builtin_platform_driver(), which uses
      the same init level priority, so init ordering is unchanged.
      
      Note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      [bhelgaas: changelog]
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      Acked-by: NJoao Pinto <jpinto@synopsys.com>
      CC: Jingoo Han <jingoohan1@gmail.com>
      CC: Pratyush Anand <pratyush.anand@gmail.com>
      ca8d3346
    • P
      PCI: artpec6: Make explicitly non-modular · 58bdaa1d
      Paul Gortmaker 提交于
      This code is not being built as a module by anyone:
      
        drivers/pci/host/Kconfig:config PCIE_ARTPEC6
        drivers/pci/host/Kconfig:       bool "Axis ARTPEC-6 PCIe controller"
      
      Remove uses of MODULE_DESCRIPTION(), MODULE_AUTHOR(), MODULE_LICENSE(),
      etc., so that when reading the driver there is no doubt it is builtin-only.
      The information is preserved in comments at the top of the file.
      
      Replace module_platform_driver() with builtin_platform_driver(), which uses
      the same init level priority, so init ordering is unchanged.
      
      Note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      [bhelgaas: changelog, add "Author" comment]
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      CC: Niklas Cassel <niklas.cassel@axis.com>
      CC: Jesper Nilsson <jesper.nilsson@axis.com>
      58bdaa1d
    • P
      PCI: armada8k: Make explicitly non-modular · 0e6f98cb
      Paul Gortmaker 提交于
      This code is not being built as a module by anyone:
      
        drivers/pci/host/Kconfig:config PCIE_ARMADA_8K
        drivers/pci/host/Kconfig:       bool "Marvell Armada-8K PCIe controller"
      
      Remove uses of MODULE_DESCRIPTION(), MODULE_AUTHOR(), MODULE_LICENSE(),
      etc., so that when reading the driver there is no doubt it is builtin-only.
      The information is preserved in comments at the top of the file.
      
      Replace module_platform_driver() with builtin_platform_driver(), which uses
      the same init level priority, so init ordering is unchanged.
      
      Note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
      
      [bhelgaas: changelog]
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      CC: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
      0e6f98cb
  3. 30 7月, 2016 1 次提交
  4. 27 7月, 2016 3 次提交
  5. 26 7月, 2016 6 次提交
  6. 23 7月, 2016 3 次提交
  7. 25 6月, 2016 8 次提交
    • B
      PCI: versatile: Simplify host bridge window iteration · da6163ad
      Bjorn Helgaas 提交于
      The switch is the only statement in the resource_list_for_each_entry()
      loop, so remove unnecessary "continue" statements in the switch.  Simplify
      checking for the required non-prefetchable memory aperture.
      
      No functional change intended.
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      da6163ad
    • B
      PCI: versatile: Request host bridge window resources with core function · 2fbb3530
      Bjorn Helgaas 提交于
      Use devm_request_pci_bus_resources() to request host bridge window
      resources instead of doing it by hand in the driver.
      
      No functional change intended.
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      2fbb3530
    • B
      PCI: tegra: Request host bridge window resources with core function · 45c64b6a
      Bjorn Helgaas 提交于
      Use devm_request_pci_bus_resources() to request host bridge window
      resources instead of doing it by hand in the driver.
      
      No functional change intended.
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      45c64b6a
    • B
      PCI: tegra: Remove top-level resource from hierarchy · c4102c92
      Bjorn Helgaas 提交于
      41534e53 ("PCI: tegra: Implement a proper resource hierarchy") did two
      things:
      
        1) It added a top-level resource that encloses all resources declared in
           the DT description, including registers and bridge apertures, and
      
        2) It requested the bridge apertures, which means the PCI core can track
           the resources used by PCI devices below the bridge.
      
      The latter is necessary, but the former is questionable because there's no
      guarantee that the bridge registers and the apertures are contiguous.  In
      this example:
      
        # cat /proc/iomem
        00000000-3fffffff : /pcie-controller@00003000
          00000000-00000fff : /pcie-controller@00003000/pci@1,0
          00003000-000037ff : pads
          00003800-000039ff : afi
          10000000-1fffffff : cs
      
      the resource tree claims that [mem 0x00003a00-0x0fffffff] is consumed by
      /pcie-controller@00003000, but it's not mentioned in the DT, and it might
      actually be used by other devices.
      
      Remove the top-level resource so we don't claim more than the device
      actually consumes.
      
      This reintroduces the problem that we can't match the resources, e.g.,
      "pads", "afi", "cs", etc., to the DT device.  I think this should be solved
      by having the DT core request all resources of all devices in the DT (it
      does not do that today).  If a driver claims the device, it can request the
      resources it uses.  For example:
      
        # cat /proc/iomem
        00000000-00000fff : /pcie-controller@00003000
          00000000-00000fff : /pcie-controller@00003000/pci@1,0
        00003000-000037ff : /pcie-controller@00003000
          00003000-000037ff : pads
        00003800-000039ff : /pcie-controller@00003000
          00003800-000039ff : afi
        10000000-1fffffff : /pcie-controller@00003000
          10000000-1fffffff : cs
        ...
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      c4102c92
    • B
      PCI: rcar: Simplify host bridge window iteration · 4c540a35
      Bjorn Helgaas 提交于
      The switch is the only statement in the resource_list_for_each_entry()
      loop, so remove unnecessary cases and "continue" statements in the switch.
      Inline rcar_pcie_release_of_pci_ranges(), which is only called once.
      
      No functional change intended.
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      4c540a35
    • B
      PCI: rcar: Request host bridge window resources with core function · 6fd7f550
      Bjorn Helgaas 提交于
      Use devm_request_pci_bus_resources() to request host bridge window
      resources instead of doing it by hand in the driver.
      
      No functional change intended.
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      6fd7f550
    • B
      PCI: rcar Gen2: Request host bridge window resources · ac575ead
      Bjorn Helgaas 提交于
      Request host bridge window resources so they appear in ioport_resource and
      iomem_resource and are reflected in /proc/ioports and /proc/iomem.
      Tested-by: NGeert Uytterhoeven <geert+renesas@glider.be>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      ac575ead
    • B
      PCI: rcar: Drop gen2 dummy I/O port region · b2a5d3e2
      Bjorn Helgaas 提交于
      Previously we added a dummy I/O port region even though the R-Car
      controller doesn't support PCI port I/O.  This resulted in bogus root bus
      resources like this:
      
        pci_bus 0000:00: root bus resource [io  0xee080000-0xee0810ff]
        pci_bus 0000:00: root bus resource [mem 0xee080000-0xee0810ff]
      
      Drop the unused dummy I/O port region and set struct hw_pci.io_optional so
      the ARM PCI code doesn't add a default one for us.
      Tested-by: NGeert Uytterhoeven <geert+renesas@glider.be>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      b2a5d3e2
  8. 24 6月, 2016 1 次提交
    • L
      PCI: generic: Claim bus resources on PCI_PROBE_ONLY set-ups · dcce0f15
      Lorenzo Pieralisi 提交于
      We claim PCI BAR and bridge window resources in pci_bus_assign_resources(),
      but when PCI_PROBE_ONLY is set, we treat those resources as immutable and
      don't call pci_bus_assign_resources(), so the resources aren't put in the
      resource tree.
      
      When the resources aren't in the tree, they don't show up in /proc/iomem,
      we can't detect conflicts, and we need special cases elsewhere for
      PCI_PROBE_ONLY or resources without a parent pointer.
      
      Claim all PCI BAR and window resources in the PCI_PROBE_ONLY case.
      
      If a PCI_PROBE_ONLY platform assigns conflicting resources, Linux can't fix
      the conflicts.  Previously we didn't notice the conflicts, but now we will,
      which may expose new failures.
      
      [bhelgaas: changelog, summarize comment]
      Signed-off-by: NLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      Acked-by: NWill Deacon <will.deacon@arm.com>
      CC: Arnd Bergmann <arnd@arndb.de>
      CC: David Daney <david.daney@cavium.com>
      dcce0f15