diff mbox

[U-Boot] ARM: uniphier: do not setup pins for System Bus on NAND boot mode

Message ID 1474863196-19449-1-git-send-email-yamada.masahiro@socionext.com
State Accepted
Commit dacdb2402742a0365ca543798a349182872131b4
Delegated to: Masahiro Yamada
Headers show

Commit Message

Masahiro Yamada Sept. 26, 2016, 4:13 a.m. UTC
For LD11 and LD20 SoCs, the System Bus and NAND are multiplexed
in the same I/O pins.  When booting from a NAND device, pin-mux
for the System Bus must not be set-up because they are exclusive
with each other.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
---

 arch/arm/mach-uniphier/init/init-ld11.c | 4 +++-
 arch/arm/mach-uniphier/init/init-ld20.c | 4 +++-
 2 files changed, 6 insertions(+), 2 deletions(-)

Comments

Masahiro Yamada Oct. 7, 2016, 4:27 p.m. UTC | #1
2016-09-26 13:13 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
> For LD11 and LD20 SoCs, the System Bus and NAND are multiplexed
> in the same I/O pins.  When booting from a NAND device, pin-mux
> for the System Bus must not be set-up because they are exclusive
> with each other.
>
> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>


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

Patch

diff --git a/arch/arm/mach-uniphier/init/init-ld11.c b/arch/arm/mach-uniphier/init/init-ld11.c
index e324c94..fdb2838 100644
--- a/arch/arm/mach-uniphier/init/init-ld11.c
+++ b/arch/arm/mach-uniphier/init/init-ld11.c
@@ -15,7 +15,9 @@  int uniphier_ld11_init(const struct uniphier_board_data *bd)
 {
 	uniphier_sbc_init_savepin(bd);
 	uniphier_pxs2_sbc_init(bd);
-	uniphier_pin_init("system_bus_grp");
+	/* pins for NAND and System Bus are multiplexed */
+	if (spl_boot_device() != BOOT_DEVICE_NAND)
+		uniphier_pin_init("system_bus_grp");
 
 	support_card_reset();
 
diff --git a/arch/arm/mach-uniphier/init/init-ld20.c b/arch/arm/mach-uniphier/init/init-ld20.c
index cb05421..37b860a 100644
--- a/arch/arm/mach-uniphier/init/init-ld20.c
+++ b/arch/arm/mach-uniphier/init/init-ld20.c
@@ -15,7 +15,9 @@  int uniphier_ld20_init(const struct uniphier_board_data *bd)
 {
 	uniphier_sbc_init_savepin(bd);
 	uniphier_pxs2_sbc_init(bd);
-	uniphier_pin_init("system_bus_grp");
+	/* pins for NAND and System Bus are multiplexed */
+	if (spl_boot_device() != BOOT_DEVICE_NAND)
+		uniphier_pin_init("system_bus_grp");
 
 	support_card_reset();