diff options
author | Wasim Khan <wasim.khan@nxp.com> | 2020-01-06 12:05:59 +0000 |
---|---|---|
committer | Priyanka Jain <priyanka.jain@nxp.com> | 2020-01-24 14:28:26 +0530 |
commit | d20eb7a6db2e297cd16a85cdbef9c183abdade1c (patch) | |
tree | 45988ad3b5310d5f9ff182a11e6f550440d2ecaa /drivers/pci/pcie_layerscape_gen4_fixup.c | |
parent | 1185b229cca55a5ce3ee7bb35b203f788254f1a1 (diff) |
pci: layerscape: Move streamId allocation to common device tree fixup
Move streamId allocation to layerscape common device tree fixup.
Calculate streamId based on SoC variant.
Signed-off-by: Wasim Khan <wasim.khan@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
Diffstat (limited to 'drivers/pci/pcie_layerscape_gen4_fixup.c')
-rw-r--r-- | drivers/pci/pcie_layerscape_gen4_fixup.c | 17 |
1 files changed, 3 insertions, 14 deletions
diff --git a/drivers/pci/pcie_layerscape_gen4_fixup.c b/drivers/pci/pcie_layerscape_gen4_fixup.c index b99ab0fa5d..bfe197e7d8 100644 --- a/drivers/pci/pcie_layerscape_gen4_fixup.c +++ b/drivers/pci/pcie_layerscape_gen4_fixup.c @@ -33,19 +33,6 @@ static int ls_pcie_g4_next_lut_index(struct ls_pcie_g4 *pcie) return -ENOSPC; /* LUT is full */ } -/* returns the next available streamid for pcie, -errno if failed */ -static int ls_pcie_g4_next_streamid(struct ls_pcie_g4 *pcie) -{ - int stream_id = pcie->stream_id_cur; - - if (stream_id > FSL_PEX_STREAM_ID_END) - return -EINVAL; - - pcie->stream_id_cur++; - - return stream_id | ((pcie->idx + 1) << 11); -} - /* * Program a single LUT entry */ @@ -162,10 +149,12 @@ static void fdt_fixup_pcie_ls_gen4(void *blob) bus = bus->parent; pcie = dev_get_priv(bus); - streamid = ls_pcie_g4_next_streamid(pcie); + streamid = pcie_next_streamid(pcie->stream_id_cur, pcie->idx); if (streamid < 0) { debug("ERROR: no stream ids free\n"); continue; + } else { + pcie->stream_id_cur++; } index = ls_pcie_g4_next_lut_index(pcie); |