]> git.ipfire.org Git - people/ms/u-boot.git/blobdiff - arch/arm/mach-uniphier/cmd_pinmon.c
ARM: uniphier: allow to enable multiple SoCs
[people/ms/u-boot.git] / arch / arm / mach-uniphier / cmd_pinmon.c
index 8be2ed4fe634dadfa296223aa5e7839eb24533d3..a61d40e6c5a6e69256de248611ebacb22f54fb5a 100644 (file)
@@ -1,6 +1,5 @@
 /*
- * Copyright (C) 2014 Panasonic Corporation
- *   Author: Masahiro Yamada <yamada.m@jp.panasonic.com>
+ * Copyright (C) 2014-2015 Masahiro Yamada <yamada.masahiro@socionext.com>
  *
  * SPDX-License-Identifier:    GPL-2.0+
  */
@@ -8,20 +7,30 @@
 #include <common.h>
 #include <mach/boot-device.h>
 #include <mach/sbc-regs.h>
+#include <mach/soc_info.h>
 
 static int do_pinmon(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
-       int mode_sel, i;
-
        printf("Boot Swap: %s\n\n", boot_is_swapped() ? "ON" : "OFF");
 
-       mode_sel = get_boot_mode_sel();
-
-       puts("Boot Mode Pin:\n");
-
-       for (i = 0; boot_device_table[i].info; i++)
-               printf(" %c %02x %s\n", i == mode_sel ? '*' : ' ', i,
-                      boot_device_table[i].info);
+       switch (uniphier_get_soc_type()) {
+#if defined(CONFIG_ARCH_UNIPHIER_PH1_SLD3)
+       case SOC_UNIPHIER_PH1_SLD3:
+               ph1_sld3_boot_mode_show();
+               break;
+#endif
+#if defined(CONFIG_ARCH_UNIPHIER_PH1_LD4) || \
+       defined(CONFIG_ARCH_UNIPHIER_PH1_PRO4) || \
+       defined(CONFIG_ARCH_UNIPHIER_PH1_SLD8)
+       case SOC_UNIPHIER_PH1_LD4:
+       case SOC_UNIPHIER_PH1_PRO4:
+       case SOC_UNIPHIER_PH1_SLD8:
+               ph1_ld4_boot_mode_show();
+               break;
+#endif
+       default:
+               break;
+       }
 
        return 0;
 }