aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/layerscape/patches-5.4/701-net-0059-sdk_fman-on-P-series-platforms-the-OH-ports-start-at.patch
blob: 6afc1c07f7da700eee338c800f5a21e4d2038a6b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
From 7eb5f0a192efbe1fa94490881858ed45c5373233 Mon Sep 17 00:00:00 2001
From: Camelia Groza <camelia.groza@nxp.com>
Date: Mon, 2 Apr 2018 18:19:27 +0300
Subject: [PATCH] sdk_fman: on P-series platforms, the OH ports start at offset
 1

Signed-off-by: Camelia Groza <camelia.groza@nxp.com>
---
 .../ethernet/freescale/sdk_fman/src/wrapper/lnxwrp_fm_port.c | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

--- a/drivers/net/ethernet/freescale/sdk_fman/src/wrapper/lnxwrp_fm_port.c
+++ b/drivers/net/ethernet/freescale/sdk_fman/src/wrapper/lnxwrp_fm_port.c
@@ -307,9 +307,17 @@ static t_LnxWrpFmPortDev *ReadFmPortDevT
 	    of_device_is_compatible(port_node, "fsl,fman-v2-port-oh") ||
 	    of_device_is_compatible(port_node, "fsl,fman-v3-port-oh")) {
 #ifndef CONFIG_FMAN_ARM
-		/* On PPC, OH ports start from cell-index 0x2 */
+#ifdef CONFIG_FMAN_P3040_P4080_P5020
+		/* On PPC FMan v2, OH ports start from cell-index 0x1 */
+		tmp_prop -= 0x1;
+#else
+		/* On PPC FMan v3 (Low and High), OH ports start from
+		 * cell-index 0x2
+		 */
 		tmp_prop -= 0x2;
-#endif
+#endif // CONFIG_FMAN_P3040_P4080_P5020
+#endif // CONFIG_FMAN_ARM
+
 		if (unlikely(tmp_prop >= FM_MAX_NUM_OF_OH_PORTS)) {
 			REPORT_ERROR(MAJOR, E_INVALID_VALUE,
 				     ("of_get_property(%s, cell-index) failed",