powerpc/83xx: don't probe broken PCI on mpc837x_mds boards

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Linux Kernel Mailing List
Date: Wednesday, October 15, 2008 - 12:07 pm

Gitweb:     http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=626668...
Commit:     62666828bae7057835d982367e98716a1bd0fd40
Parent:     5c091193e4a12e88930a0bb3ed3632c51e926a76
Author:     Anton Vorontsov <avorontsov@ru.mvista.com>
AuthorDate: Mon Oct 6 21:08:39 2008 +0400
Committer:  Kumar Gala <galak@kernel.crashing.org>
CommitDate: Mon Oct 13 11:09:58 2008 -0500

    powerpc/83xx: don't probe broken PCI on mpc837x_mds boards
    
    In the standalone setup the board's CPLD disables the PCI internal
    arbiter, thus any access to the PCI bus will hang the board.
    
    The common way to disable particular devices in the device tree is to
    put the "status" property with any value other than "ok" or "okay"
    into the device node we want to disable.
    
    So, when there is no PCI arbiter on the bus the u-boot adds status =
    "broken (no arbiter)" property into the PCI controller's node, and so
    marks the PCI controller as unavailable.
    
    Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
    Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
---
 arch/powerpc/platforms/83xx/mpc837x_mds.c |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/arch/powerpc/platforms/83xx/mpc837x_mds.c b/arch/powerpc/platforms/83xx/mpc837x_mds.c
index be62de2..8bb13c8 100644
--- a/arch/powerpc/platforms/83xx/mpc837x_mds.c
+++ b/arch/powerpc/platforms/83xx/mpc837x_mds.c
@@ -85,8 +85,14 @@ static void __init mpc837x_mds_setup_arch(void)
 		ppc_md.progress("mpc837x_mds_setup_arch()", 0);
 
 #ifdef CONFIG_PCI
-	for_each_compatible_node(np, "pci", "fsl,mpc8349-pci")
+	for_each_compatible_node(np, "pci", "fsl,mpc8349-pci") {
+		if (!of_device_is_available(np)) {
+			pr_warning("%s: disabled by the firmware.\n",
+				   np->full_name);
+			continue;
+		}
 		mpc83xx_add_bridge(np);
+	}
 #endif
 	mpc837xmds_usb_cfg();
 }
--
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
powerpc/83xx: don't probe broken PCI on mpc837x_mds boards, Linux Kernel Mailing ..., (Wed Oct 15, 12:07 pm)