[linux-yocto] [PATCH 05/12] MIPS: Octeon: Disable probing MDIO for Landbird NIC 10g cards.

Chandrakala Chavva cchavva.cavm at gmail.com
Thu Jan 29 07:32:04 PST 2015


From: Abhishek Paliwal <abhishek.paliwal at aricent.com>

From: David Daney <david.daney at cavium.com>

probe 4 mdio devices from device tree as support new models.

Signed-off-by: David Daney <david.daney at cavium.com>
Signed-off-by: Abhishek Paliwal <abhishek.paliwal at aricent.com>
---
 arch/mips/cavium-octeon/octeon-platform.c | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

diff --git a/arch/mips/cavium-octeon/octeon-platform.c b/arch/mips/cavium-octeon/octeon-platform.c
index 285238b..d3f94b40 100644
--- a/arch/mips/cavium-octeon/octeon-platform.c
+++ b/arch/mips/cavium-octeon/octeon-platform.c
@@ -426,20 +426,27 @@ int __init octeon_prune_device_tree(void)
 	else
 		max_port = 1;
 
-	for (i = 0; i < 2; i++) {
-		int i2c;
+	/*
+	 * Landbird NIC card does not have PHY. Probing MDIO is putting
+	 * XAUI in interface 0 in bad state.
+	 */
+	if (octeon_bootinfo->board_type == CVMX_BOARD_TYPE_NIC_XLE_10G)
+		max_port = 0;
+
+	for (i = 0; i < 4; i++) {
+		int smi;
 		snprintf(name_buffer, sizeof(name_buffer),
 			 "twsi%d", i);
 		alias_prop = fdt_getprop(initial_boot_params, aliases,
 					name_buffer, NULL);
 
 		if (alias_prop) {
-			i2c = fdt_path_offset(initial_boot_params, alias_prop);
-			if (i2c < 0)
+			smi = fdt_path_offset(initial_boot_params, alias_prop);
+			if (smi < 0)
 				continue;
 			if (i >= max_port) {
 				pr_debug("Deleting twsi%d\n", i);
-				fdt_nop_node(initial_boot_params, i2c);
+				fdt_nop_node(initial_boot_params, smi);
 				fdt_nop_property(initial_boot_params, aliases,
 						 name_buffer);
 			}
-- 
1.8.1.4



More information about the linux-yocto mailing list