From patchwork Tue Jul 4 19:48:56 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Glass X-Patchwork-Id: 784259 X-Patchwork-Delegate: jh80.chung@samsung.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 3x2F8x4v9tz9s7f for ; Wed, 5 Jul 2017 05:55:13 +1000 (AEST) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=google.com header.i=@google.com header.b="Fribw6h4"; dkim-atps=neutral Received: by lists.denx.de (Postfix, from userid 105) id 731D2C21E2B; Tue, 4 Jul 2017 19:52:04 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 04521C21EAD; Tue, 4 Jul 2017 19:50:52 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 40E19C21E31; Tue, 4 Jul 2017 19:50:44 +0000 (UTC) Received: from mail-oi0-f50.google.com (mail-oi0-f50.google.com [209.85.218.50]) by lists.denx.de (Postfix) with ESMTPS id 4F0DEC21E77 for ; Tue, 4 Jul 2017 19:50:44 +0000 (UTC) Received: by mail-oi0-f50.google.com with SMTP id p188so110015732oia.0 for ; Tue, 04 Jul 2017 12:50:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=laPt5g2Y8UmBAOhxS+GD8pE80Fe2iL87qNwGDYqhlVU=; b=Fribw6h4hbLW4Wrs5bQLmAHJNnWrCTfpBnuZix3O38tiNVtympFRWsIfr/drxGTa1u xtjb695jzyWtEbutGw762bKe9LgXzO1LlpC8tr49Qdp9axTAXnaniCqOZfTs6zuOPcsA ONkamD2mlFFKPDZH6M7TUcD3FpTk0xYvDdrJ18t2LFvGG1pj9xFfhm9mYHRE1hVkHzmq TA/koRWc4hJI6L+tmoj/PKcwUQiGdWCP4cVH2gLs16ARAltdxkehorVvnekLa6ML7BW0 fE9z1KR+BY8+rCWaYenEJLbgtYWhfkEeXaV75C41tQtI9d/gnFV0Xdm/7SowgUwixncW +7NQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=laPt5g2Y8UmBAOhxS+GD8pE80Fe2iL87qNwGDYqhlVU=; b=F0N2CZdxkT73R75WhufQv8IC02t/pVKM3Z5hacibsgQ/rJ/TNoGj1C5MiQF+avd++q DTTBwswL9r3BoqWCCHJrPnE9BtimfY2yD5vOnjBpHC5IsBycHCe9ogZQZz8e940OHMfy KXB09X4Y6Sb2kNKLk/x0AJ6krUHSJDG44oom8YLk7/dqHUD1oO5/espXI6SCHRP/dBKh lnWa669qLZqp+xYFbM9kZ7Sdw15AmGzYnYmecAWMjg5JPX0ZGLxpj2vxAgbC8pOqvqmf rBkMujb2ZawFCVrNRaGuOw8n5PX8aiLc1TcxG/lgGnP10k7l5Pn5GPEAI4/iGxjAsw01 M0wQ== X-Gm-Message-State: AIVw111aqlPxHGL+w9aA9Mpr+2qZne2tUfYCyqeWAOjZmMUwVnf61ziw OCipoEP04ujxje7m X-Received: by 10.202.217.137 with SMTP id q131mr3621666oig.136.1499197842955; Tue, 04 Jul 2017 12:50:42 -0700 (PDT) Received: from kiwi.bld.corp.google.com ([100.101.164.89]) by smtp.gmail.com with ESMTPSA id n189sm19125713oih.0.2017.07.04.12.50.42 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 04 Jul 2017 12:50:42 -0700 (PDT) Received: by kiwi.bld.corp.google.com (Postfix, from userid 121222) id CC1D31412B0; Tue, 4 Jul 2017 13:50:41 -0600 (MDT) From: Simon Glass To: U-Boot Mailing List Date: Tue, 4 Jul 2017 13:48:56 -0600 Message-Id: <20170704194931.88240-5-sjg@chromium.org> X-Mailer: git-send-email 2.13.2.725.g09c95d1e9-goog In-Reply-To: <20170704194931.88240-1-sjg@chromium.org> References: <20170704194931.88240-1-sjg@chromium.org> Cc: Tom Rini , Michal Simek , Rob Herring Subject: [U-Boot] [PATCH 04/39] dm: scsi: Adjust the 'scsi' command to use blk_common_cmd() X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Instead of having separate code in the 'scsi' command, adjust it to use the common function. Signed-off-by: Simon Glass --- cmd/scsi.c | 79 +++----------------------------------------------------------- 1 file changed, 3 insertions(+), 76 deletions(-) diff --git a/cmd/scsi.c b/cmd/scsi.c index 570971891e..75b88baa95 100644 --- a/cmd/scsi.c +++ b/cmd/scsi.c @@ -29,11 +29,7 @@ static int do_scsi(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[]) { int ret; - switch (argc) { - case 0: - case 1: - return CMD_RET_USAGE; - case 2: + if (argc == 2) { if (strncmp(argv[1], "res", 3) == 0) { printf("\nReset SCSI\n"); scsi_bus_reset(NULL); @@ -42,84 +38,15 @@ static int do_scsi(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[]) return CMD_RET_FAILURE; return ret; } - if (strncmp(argv[1], "inf", 3) == 0) { - blk_list_devices(IF_TYPE_SCSI); - return 0; - } - if (strncmp(argv[1], "dev", 3) == 0) { - if (blk_print_device_num(IF_TYPE_SCSI, scsi_curr_dev)) { - printf("\nno SCSI devices available\n"); - return CMD_RET_FAILURE; - } - - return 0; - } if (strncmp(argv[1], "scan", 4) == 0) { ret = scsi_scan(true); if (ret) return CMD_RET_FAILURE; return ret; } - if (strncmp(argv[1], "part", 4) == 0) { - if (blk_list_part(IF_TYPE_SCSI)) - printf("\nno SCSI devices available\n"); - return 0; - } - return CMD_RET_USAGE; - case 3: - if (strncmp(argv[1], "dev", 3) == 0) { - int dev = (int)simple_strtoul(argv[2], NULL, 10); + } - if (!blk_show_device(IF_TYPE_SCSI, dev)) { - scsi_curr_dev = dev; - printf("... is now current device\n"); - } else { - return CMD_RET_FAILURE; - } - return 0; - } - if (strncmp(argv[1], "part", 4) == 0) { - int dev = (int)simple_strtoul(argv[2], NULL, 10); - - if (blk_print_part_devnum(IF_TYPE_SCSI, dev)) { - printf("\nSCSI device %d not available\n", - dev); - return CMD_RET_FAILURE; - } - return 0; - } - return CMD_RET_USAGE; - default: - /* at least 4 args */ - if (strcmp(argv[1], "read") == 0) { - ulong addr = simple_strtoul(argv[2], NULL, 16); - ulong blk = simple_strtoul(argv[3], NULL, 16); - ulong cnt = simple_strtoul(argv[4], NULL, 16); - ulong n; - - printf("\nSCSI read: device %d block # %ld, count %ld ... ", - scsi_curr_dev, blk, cnt); - n = blk_read_devnum(IF_TYPE_SCSI, scsi_curr_dev, blk, - cnt, (ulong *)addr); - printf("%ld blocks read: %s\n", n, - n == cnt ? "OK" : "ERROR"); - return 0; - } else if (strcmp(argv[1], "write") == 0) { - ulong addr = simple_strtoul(argv[2], NULL, 16); - ulong blk = simple_strtoul(argv[3], NULL, 16); - ulong cnt = simple_strtoul(argv[4], NULL, 16); - ulong n; - - printf("\nSCSI write: device %d block # %ld, count %ld ... ", - scsi_curr_dev, blk, cnt); - n = blk_write_devnum(IF_TYPE_SCSI, scsi_curr_dev, blk, - cnt, (ulong *)addr); - printf("%ld blocks written: %s\n", n, - n == cnt ? "OK" : "ERROR"); - return 0; - } - } /* switch */ - return CMD_RET_USAGE; + return blk_common_cmd(argc, argv, IF_TYPE_SCSI, &scsi_curr_dev); } U_BOOT_CMD(