- 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 <h...@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@f0000000/mdio@3000/ethernet-phy@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

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to