1 /* 2 * Copyright (C) (C) Copyright 2016-2017 Rockchip Electronics Co., Ltd 3 * 4 * SPDX-License-Identifier: GPL-2.0+ 5 */ 6 7 #include <common.h> 8 #include <command.h> 9 #include <dm.h> 10 #include <rknand.h> 11 12 static int rknand_curr_dev; 13 static int do_rknand(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) 14 { 15 int ret; 16 17 if (argc == 2) { 18 if (strncmp(argv[1], "scan", 4) == 0) { 19 ret = rknand_scan_namespace(); 20 if (ret) 21 return CMD_RET_FAILURE; 22 23 return ret; 24 } 25 } 26 27 return blk_common_cmd(argc, argv, IF_TYPE_RKNAND, &rknand_curr_dev); 28 } 29 30 U_BOOT_CMD( 31 rknand, 8, 1, do_rknand, 32 "rockchip nand flash sub-system", 33 "scan - scan Nand devices\n" 34 "rknand info - show all available Nand devices\n" 35 "rknand device [dev] - show or set current Nand device\n" 36 "rknand part [dev] - print partition table of one or all Nand devices\n" 37 "rknand read addr blk# cnt - read `cnt' blocks starting at block\n" 38 " `blk#' to memory address `addr'\n" 39 "rknand write addr blk# cnt - write `cnt' blocks starting at block\n" 40 " `blk#' from memory address `addr'" 41 ); 42