[U-Boot] [PATCH] sh: sh7753evb: Fix build error

Bin Meng bmeng.cn at gmail.com
Mon Jan 25 06:45:46 CET 2016


Currently buildman fails to build sh7753evb and reports the following:

  board/renesas/sh7753evb/built-in.o: In function 'init_gether_mdio':
  board/renesas/sh7753evb/sh7753evb.c:94: undefined reference to 'PMB_ADDR_BASE'
  board/renesas/sh7753evb/sh7753evb.c:94: undefined reference to 'PMB_DATA_BASE'
  board/renesas/sh7753evb/sh7753evb.c:94: undefined reference to 'mk_pmb_addr_val'
  board/renesas/sh7753evb/sh7753evb.c:94: undefined reference to 'mk_pmb_data_val'
  make: *** [u-boot] Error 1

The fix is to wrap any codes that access these macros with CONFIG_SH_32BIT.

Signed-off-by: Bin Meng <bmeng.cn at gmail.com>
---

 board/renesas/sh7753evb/sh7753evb.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/board/renesas/sh7753evb/sh7753evb.c b/board/renesas/sh7753evb/sh7753evb.c
index 9f64945..52a1906 100644
--- a/board/renesas/sh7753evb/sh7753evb.c
+++ b/board/renesas/sh7753evb/sh7753evb.c
@@ -113,6 +113,7 @@ static void set_mac_to_sh_giga_eth_register(int channel, char *mac_string)
 	writel(val, &ether->malr);
 }
 
+#if defined(CONFIG_SH_32BIT)
 /*****************************************************************
  * This PMB must be set on this timing. The lowlevel_init is run on
  * Area 0(phys 0x00000000), so we have to map it.
@@ -154,13 +155,16 @@ static void set_pmb_on_board_init(void)
 	writel(mk_pmb_addr_val(0x98), PMB_ADDR_BASE(7));
 	writel(mk_pmb_data_val(0x58, 0, 1, 1, 0, 1, 1), PMB_DATA_BASE(7));
 }
+#endif
 
 int board_init(void)
 {
 	struct gether_control_regs *gether = GETHER_CONTROL_BASE;
 
 	init_gpio();
+#if defined(CONFIG_SH_32BIT)
 	set_pmb_on_board_init();
+#endif
 
 	/* Sets TXnDLY to B'010 */
 	writel(0x00000202, &gether->gbecont);
-- 
1.8.2.1



More information about the U-Boot mailing list