From: Stuart Yoder <stuart.yoder@nxp.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 0/7 v4] support mapping PCI device ids to stream ids for MSIs
Date: Tue, 8 Mar 2016 09:35:50 -0600 [thread overview]
Message-ID: <1457451357-14000-1-git-send-email-stuart.yoder@nxp.com> (raw)
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
-v4 changes
-put all device ID to stream ID mapping under LS2 #ifdefs
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 | 217 +++++++++++++-------
include/pci.h | 1 +
5 files changed, 186 insertions(+), 204 deletions(-)
--
1.7.9.5
next reply other threads:[~2016-03-08 15:35 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-08 15:35 Stuart Yoder [this message]
2016-03-08 15:35 ` [U-Boot] [PATCH 1/7 v4] armv8: ls2080a: remove obsolete stream ID partitioning support Stuart Yoder
2016-03-08 15:35 ` [U-Boot] [PATCH 3/7 v4] pci: make pci_get_hose_head() available to external users Stuart Yoder
2016-03-08 15:35 ` [U-Boot] [PATCH 4/7 v4] pci/layerscape: add support for LUT Stuart Yoder
2016-03-08 17:30 ` york sun
2016-03-08 19:36 ` Stuart Yoder
2016-03-08 19:45 ` york sun
2016-03-08 19:58 ` Stuart Yoder
2016-03-08 15:35 ` [U-Boot] [PATCH 5/7 v4] pci/layerscape: add stream ID allocator Stuart Yoder
2016-03-08 15:35 ` [U-Boot] [PATCH 6/7 v4] pci/layerscape: fdt: function to set msi-map entries Stuart Yoder
2016-03-08 15:35 ` [U-Boot] [PATCH 7/7 v4] pci/layerscape: set LUT and msi-map for discovered PCI devices Stuart Yoder
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1457451357-14000-1-git-send-email-stuart.yoder@nxp.com \
--to=stuart.yoder@nxp.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.