xref: /OK3568_Linux_fs/u-boot/cmd/download.c (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1 /*
2  * (C) Copyright 2019 Rockchip Electronics Co., Ltd
3  *
4  * SPDX-License-Identifier:     GPL-2.0+
5  */
6 
7 #include <common.h>
8 #include <command.h>
9 #include <console.h>
10 
do_board_download(void)11 __weak void do_board_download(void)
12 {
13 }
14 
do_download(cmd_tbl_t * cmdtp,int flag,int argc,char * const argv[])15 static int do_download(cmd_tbl_t *cmdtp, int flag,
16 		       int argc, char * const argv[])
17 {
18 	disable_ctrlc(1);
19 
20 	/* Allow board specific download, maybe noreturn */
21 	do_board_download();
22 
23 	/* Generic download */
24 #ifdef CONFIG_CMD_ROCKUSB
25 	run_command("rockusb 0 $devtype $devnum", 0);
26 #endif
27 	printf("Enter rockusb failed, fallback to bootrom...\n");
28 	flushc();
29 	run_command("rbrom", 0);
30 
31 	return 0;
32 }
33 
34 U_BOOT_CMD_ALWAYS(
35 	download, 1, 1, do_download,
36 	"enter rockusb/bootrom download mode", ""
37 );
38