diff mbox

[U-Boot] ARM: UniPhier: reset on-board devices on start-up

Message ID 1415165115-10191-1-git-send-email-yamada.m@jp.panasonic.com
State Accepted
Delegated to: Masahiro Yamada
Headers show

Commit Message

Masahiro Yamada Nov. 5, 2014, 5:25 a.m. UTC
If a support card is attached to the main board, the on-board
SMSC9118 LAN controller is available.  It must be kept in reset
state for a while on start-up.

When the board is kicked via a debbuger rather than pushing the
hardware reset button, on-board chips are not reset; in this case
the reset signals should be asserted by software.

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
---

 arch/arm/cpu/armv7/uniphier/ph1-ld4/board_postclk_init.c  | 2 ++
 arch/arm/cpu/armv7/uniphier/ph1-pro4/board_postclk_init.c | 2 ++
 arch/arm/cpu/armv7/uniphier/reset.c                       | 3 ---
 3 files changed, 4 insertions(+), 3 deletions(-)

Comments

Masahiro Yamada Nov. 11, 2014, 3:36 p.m. UTC | #1
2014-11-05 14:25 GMT+09:00 Masahiro Yamada <yamada.m@jp.panasonic.com>:
> If a support card is attached to the main board, the on-board
> SMSC9118 LAN controller is available.  It must be kept in reset
> state for a while on start-up.
>
> When the board is kicked via a debbuger rather than pushing the
> hardware reset button, on-board chips are not reset; in this case
> the reset signals should be asserted by software.
>
> Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>



Applied to u-boot-uniphier/master.
diff mbox

Patch

diff --git a/arch/arm/cpu/armv7/uniphier/ph1-ld4/board_postclk_init.c b/arch/arm/cpu/armv7/uniphier/ph1-ld4/board_postclk_init.c
index 4302277..5bb8179 100644
--- a/arch/arm/cpu/armv7/uniphier/ph1-ld4/board_postclk_init.c
+++ b/arch/arm/cpu/armv7/uniphier/ph1-ld4/board_postclk_init.c
@@ -24,6 +24,8 @@  int board_postclk_init(void)
 
 	sg_init();
 
+	uniphier_board_reset();
+
 	pll_init();
 
 	uniphier_board_init();
diff --git a/arch/arm/cpu/armv7/uniphier/ph1-pro4/board_postclk_init.c b/arch/arm/cpu/armv7/uniphier/ph1-pro4/board_postclk_init.c
index 7198829..9a53743 100644
--- a/arch/arm/cpu/armv7/uniphier/ph1-pro4/board_postclk_init.c
+++ b/arch/arm/cpu/armv7/uniphier/ph1-pro4/board_postclk_init.c
@@ -21,6 +21,8 @@  int board_postclk_init(void)
 
 	sg_init();
 
+	uniphier_board_reset();
+
 	pll_init();
 
 	uniphier_board_init();
diff --git a/arch/arm/cpu/armv7/uniphier/reset.c b/arch/arm/cpu/armv7/uniphier/reset.c
index b0dc967..50d1fed 100644
--- a/arch/arm/cpu/armv7/uniphier/reset.c
+++ b/arch/arm/cpu/armv7/uniphier/reset.c
@@ -8,14 +8,11 @@ 
 #include <common.h>
 #include <asm/io.h>
 #include <asm/arch/sc-regs.h>
-#include <asm/arch/board.h>
 
 void reset_cpu(unsigned long ignored)
 {
 	u32 tmp;
 
-	uniphier_board_reset();
-
 	writel(5, SC_IRQTIMSET); /* default value */
 
 	tmp  = readl(SC_SLFRSTSEL);