[U-Boot] [PATCH 1/3] mpc52xx, digsy_mtc: change phy addr for rev5 boards.

Heiko Schocher hs at denx.de
Mon Apr 4 08:10:20 CEST 2011


- rev5 board has phy addr 1 -> adapt CONFIG_PHY_ADDR define
  in board config file.
- also fixup the phy addr entry in dts, before booting
  Linux.

Signed-off-by: Heiko Schocher <hs at denx.de>
---
 board/digsy_mtc/digsy_mtc.c |    5 +++++
 include/configs/digsy_mtc.h |    4 ++++
 2 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/board/digsy_mtc/digsy_mtc.c b/board/digsy_mtc/digsy_mtc.c
index cbfdc9e..79cb3f1 100644
--- a/board/digsy_mtc/digsy_mtc.c
+++ b/board/digsy_mtc/digsy_mtc.c
@@ -405,6 +405,9 @@ int update_flash_size (int flash_size)
 
 void ft_board_setup(void *blob, bd_t *bd)
 {
+	int phy_addr = CONFIG_PHY_ADDR;
+	char eth_path[] = "/soc5200 at f0000000/mdio at 3000/ethernet-phy at 0";
+
 	ft_cpu_setup(blob, bd);
 	/*
 	 * There are 2 RTC nodes in the DTS, so remove
@@ -422,5 +425,7 @@ void ft_board_setup(void *blob, bd_t *bd)
 #endif
 	ft_adapt_flash_base(blob);
 #endif
+	/* fix up the phy address */
+	do_fixup_by_path(blob, eth_path, "reg", &phy_addr, sizeof(int), 0);
 }
 #endif /* defined(CONFIG_OF_LIBFDT) && defined(CONFIG_OF_BOARD_SETUP) */
diff --git a/include/configs/digsy_mtc.h b/include/configs/digsy_mtc.h
index d9be2b5..d4ca30e 100644
--- a/include/configs/digsy_mtc.h
+++ b/include/configs/digsy_mtc.h
@@ -348,7 +348,11 @@
  */
 #define CONFIG_MPC5xxx_FEC	1
 #define CONFIG_MPC5xxx_FEC_MII100
+#if defined(CONFIG_DIGSY_REV5)
+#define CONFIG_PHY_ADDR		0x01
+#else
 #define CONFIG_PHY_ADDR		0x00
+#endif
 #define CONFIG_PHY_RESET_DELAY	1000
 
 #define CONFIG_NETCONSOLE		/* include NetConsole support	*/
-- 
1.7.4



More information about the U-Boot mailing list