summaryrefslogtreecommitdiff
path: root/drivers/pci/pcie_layerscape_gen4_fixup.c
diff options
context:
space:
mode:
authorWasim Khan <wasim.khan@nxp.com>2020-01-06 12:05:59 +0000
committerPriyanka Jain <priyanka.jain@nxp.com>2020-01-24 14:28:26 +0530
commitd20eb7a6db2e297cd16a85cdbef9c183abdade1c (patch)
tree45988ad3b5310d5f9ff182a11e6f550440d2ecaa /drivers/pci/pcie_layerscape_gen4_fixup.c
parent1185b229cca55a5ce3ee7bb35b203f788254f1a1 (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.c17
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);