public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 0/7 v3] support mapping PCI device ids to stream ids for MSIs
@ 2016-02-26 16:31 Stuart Yoder
  2016-02-26 16:31 ` [U-Boot] [PATCH 1/7 v3] armv8: ls2080a: remove obsolete stream ID partitioning support Stuart Yoder
                   ` (6 more replies)
  0 siblings, 7 replies; 10+ messages in thread
From: Stuart Yoder @ 2016-02-26 16:31 UTC (permalink / raw)
  To: u-boot

From: Stuart Yoder <stuart.yoder@nxp.com>

A binding for PCI nodes has been finalized specifying how PCI
device IDs can be mapped to MSI specifiers.  See
Documentation/devicetree/bindings/pci/pci-msi.txt in the kernel.

For ls2080a and similar Layerscape SoCs, the MSI specifier is the stream
id.  A programmable table (LUT) in the PCI controller defines the hardware
mapping of PCI requester IDs to stream IDs.

This patch series implements support for this mapping.

Patch 1 removes the obsolete available-stream-id support.
Patch 2 updates stream ID partitioning info to be current
Patch 3 updates pci.h so pci_get_hose_head() is available
Patch 4 implements support for programming the LUT
Patch 5 implements a simple stream ID allocator for PCI
Patch 6 implements a function to set msi-map properties
Patch 7 implements a function to iterate over all PCI buses
        and set up a LUT entry and msi-map for all discovered
        devices

This patch series enables MSIs on ls2080a on v4.5-rc5 and later
kernels.  The obsolete support removed was unused in any
upstream kernels.

-v2 changes
   -in patch 7 removed skip of the host bridge when scanning the
    bus
-v3 changes
   -patch 4: moved LUT #defines to immap_lsch3.h, made index
             allocator return an int
   -patch 5: return 0xffffffff on error
   -patch 7: fixed return value checks

Stuart Yoder (7):
  armv8: ls2080a: remove obsolete stream ID partitioning support
  armv8: ls2080a: update stream ID partitioning info
  pci: make pci_get_hose_head() available to external users
  pci/layerscape: add support for LUT
  pci/layerscape: add stream ID allocator
  pci/layerscape: fdt: function to set msi-map entries
  pci/layerscape: set LUT and msi-map for discovered PCI devices

 arch/arm/cpu/armv8/fsl-layerscape/fdt.c            |  113 ----------
 .../include/asm/arch-fsl-layerscape/immap_lsch3.h  |    4 +
 .../asm/arch-fsl-layerscape/ls2080a_stream_id.h    |   55 +++--
 drivers/pci/pcie_layerscape.c                      |  215 +++++++++++++-------
 include/pci.h                                      |    1 +
 5 files changed, 184 insertions(+), 204 deletions(-)

-- 
1.7.9.5

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2016-03-08 15:19 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-26 16:31 [U-Boot] [PATCH 0/7 v3] support mapping PCI device ids to stream ids for MSIs Stuart Yoder
2016-02-26 16:31 ` [U-Boot] [PATCH 1/7 v3] armv8: ls2080a: remove obsolete stream ID partitioning support Stuart Yoder
2016-02-26 16:31 ` [U-Boot] [PATCH 2/7 v3] armv8: ls2080a: update stream ID partitioning info Stuart Yoder
2016-02-26 16:31 ` [U-Boot] [PATCH 3/7 v3] pci: make pci_get_hose_head() available to external users Stuart Yoder
2016-02-26 16:31 ` [U-Boot] [PATCH 4/7 v3] pci/layerscape: add support for LUT Stuart Yoder
2016-03-07 22:32   ` york sun
2016-03-08 15:19     ` Stuart Yoder
2016-02-26 16:32 ` [U-Boot] [PATCH 5/7 v3] pci/layerscape: add stream ID allocator Stuart Yoder
2016-02-26 16:32 ` [U-Boot] [PATCH 6/7 v3] pci/layerscape: fdt: function to set msi-map entries Stuart Yoder
2016-02-26 16:32 ` [U-Boot] [PATCH 7/7 v3] pci/layerscape: set LUT and msi-map for discovered PCI devices Stuart Yoder

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox