summaryrefslogtreecommitdiff
path: root/arch/arm/cpu/armv7/uniphier/cmd_pinmon.c
blob: 3561b40a33196deed9568fcf5fd57ddc1675c07b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/*
 * Copyright (C) 2014 Panasonic Corporation
 *   Author: Masahiro Yamada <yamada.m@jp.panasonic.com>
 *
 * SPDX-License-Identifier:	GPL-2.0+
 */

#include <common.h>
#include <asm/arch/boot-device.h>
#include <asm/arch/sbc-regs.h>

static int do_pinmon(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
{
	struct boot_device_info *table;
	u32 mode_sel, n = 0;

	mode_sel = get_boot_mode_sel();

	printf("Boot Swap: %s\n\n", boot_is_swapped() ? "ON" : "OFF");

	puts("Boot Mode Pin:\n");

	for (table = boot_device_table; strlen(table->info); table++) {
		printf(" %c %02x %s\n", n == mode_sel ? '*' : ' ', n,
		       table->info);
		n++;
	}

	return 0;
}

U_BOOT_CMD(
	pinmon,	1,	1,	do_pinmon,
	"pin monitor",
	""
);