summaryrefslogtreecommitdiff
path: root/cmd/cmd_spibootldr.c
blob: ca76dde1ddad374975595bf8ad7a735a5a403851 (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
37
/*
 * U-boot - spibootldr.c
 *
 * Copyright (c) 2005-2008 Analog Devices Inc.
 *
 * See file CREDITS for list of people who contributed to this
 * project.
 *
 * Licensed under the GPL-2 or later.
 */

#include <common.h>
#include <command.h>

#include <asm/blackfin.h>
#include <asm/mach-common/bits/bootrom.h>

int do_spibootldr(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
{
	s32 addr;

	/* Get the address */
	if (argc < 2)
		addr = 0;
	else
		addr = simple_strtoul(argv[1], NULL, 16);

	printf("## Booting ldr image at SPI offset 0x%x ...\n", addr);

	return bfrom_SpiBoot(addr, BFLAG_PERIPHERAL | 4, 0, NULL);
}

U_BOOT_CMD(
	spibootldr, 2, 0, do_spibootldr,
	"boot ldr image from spi",
	"[offset]\n"
	"    - boot ldr image stored at offset into spi\n");