瀏覽代碼

ARM: uniphier: do not setup pins for System Bus on NAND boot mode

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>
Masahiro Yamada 8 年之前
父節點
當前提交
dacdb24027
共有 2 個文件被更改,包括 6 次插入2 次删除
  1. 3 1
      arch/arm/mach-uniphier/init/init-ld11.c
  2. 3 1
      arch/arm/mach-uniphier/init/init-ld20.c

+ 3 - 1
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();
 

+ 3 - 1
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();