浏览代码

ibm_newemac: Skip EMACs that are marked unused by the firmware

Depending on how the 44x processors are wired, some EMAC cells
might not be useable (and not connected to a PHY). However, some
device-trees may choose to still expose them (since their registers
are present in the MMIO space) but with an "unused" property in them.

Signed-off-by: Hugh Blemings <hugh@blemings.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Hugh Blemings 17 年之前
父节点
当前提交
3d722562d7
共有 1 个文件被更改,包括 4 次插入0 次删除
  1. 4 0
      drivers/net/ibm_newemac/core.c

+ 4 - 0
drivers/net/ibm_newemac/core.c

@@ -2550,6 +2550,10 @@ static int __devinit emac_probe(struct of_device *ofdev,
 	struct device_node **blist = NULL;
 	int err, i;
 
+	/* Skip unused/unwired EMACS */
+	if (of_get_property(np, "unused", NULL))
+		return -ENODEV;
+
 	/* Find ourselves in the bootlist if we are there */
 	for (i = 0; i < EMAC_BOOT_LIST_SIZE; i++)
 		if (emac_boot_list[i] == np)