From patchwork Wed Sep 6 09:58:39 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: hieagle X-Patchwork-Id: 9940247 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id C144760224 for ; Wed, 6 Sep 2017 09:59:35 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id ADD1828B44 for ; Wed, 6 Sep 2017 09:59:35 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id A2B0328B66; Wed, 6 Sep 2017 09:59:35 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.5 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, FREEMAIL_FROM, RCVD_IN_DNSWL_HI, RCVD_IN_SORBS_SPAM autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id CF21228B74 for ; Wed, 6 Sep 2017 09:59:33 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752432AbdIFJ7J (ORCPT ); Wed, 6 Sep 2017 05:59:09 -0400 Received: from mail-pg0-f66.google.com ([74.125.83.66]:38394 "EHLO mail-pg0-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752241AbdIFJ7I (ORCPT ); Wed, 6 Sep 2017 05:59:08 -0400 Received: by mail-pg0-f66.google.com with SMTP id t3so3241832pgt.5; Wed, 06 Sep 2017 02:59:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=MDbKS+5nAgJJAstVKhO4+PrrWyLDCMmWoBtQvjpWJAU=; b=bvUbPiGDKV2FSaSQfk/9Bum355IvOIk/jUz3oJruQ4SlpM34R6F66gAGyruMWvxIHD fn/4JO235PjFua6sC54T93NLC4z57GmwAzuUHNq15PA4/6zGG6Exwt+GB35d7wbUL0iS 0xWXR5amgs8KtcUcLRc+rhpl0fI1tLFVU3GB3yWlJduCesixUrCRJcVAnud3BtDi8m07 OWlyaifsCvRcDcFcoFJwNDCATOvG5kMezCRBH6fzN/wx5W/n7VtyB4NXbnOdih+Z8AWD LfaADUR3qm1fV9ha7FGxOzZlr8iZ+hoY/HvkWysWiK+9oC/DReLVb28Hi5U9jlCNlGzK UhYg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=MDbKS+5nAgJJAstVKhO4+PrrWyLDCMmWoBtQvjpWJAU=; b=EQls5UOQA8r/ByGg/L+oHTRb0grW5A6chfdcA1+GZJ+hgQwZaUc2yqaxL0LgQ5ZB+e iEpqmDS6h7myaW+58FLBqBqW8twEFgC9Nqn5cKxQ7+HOHtc/10iIV1CqEb4zyJ027t+o b0D6WUkR1c4wMeCgWRWr8erfSPMvBHB17MrSBE6kriGF6beMGLURRvVESUO5WT48emKQ mMHLn6udTvCf692wl4Mv6umHWf7fHKYct/zE09ezJ7iD+3002GKQ2YbC/j/4vu6cnFlh 59cniaFGQe8ZJEtexN2r5QqWylvKKPR5a7xE9s5VrR+PGcv/vauHqRRfEMJSUFrzbyB5 6x4g== X-Gm-Message-State: AHPjjUjO3uIrbhUbl9gGw2ilmKJRQGdq+54gKnXW5xBSbv9SfGMJlhhW Avd1vBbeUR8zqQ== X-Google-Smtp-Source: ADKCNb48+1sdSVQhusl3m2BQ6Ag1Eot+/yqqQjn78vAbrNMct7yjq58RW/B/uUWamNp8YSCK74J6Pw== X-Received: by 10.98.34.84 with SMTP id i81mr6669450pfi.62.1504691948305; Wed, 06 Sep 2017 02:59:08 -0700 (PDT) Received: from localhost.localdomain ([106.39.75.132]) by smtp.googlemail.com with ESMTPSA id v71sm2067737pfa.45.2017.09.06.02.59.06 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 06 Sep 2017 02:59:07 -0700 (PDT) From: kehuanlin X-Google-Original-From: kehuanlin To: vinholikatti@gmail.com Cc: jejb@linux.vnet.ibm.com, martin.petersen@oracle.com, linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org, kehuanlin@pinecone.net Subject: [PATCH] scsi: ufs: fix wrong command type of UTRD for UFSHCI v2.1 Date: Wed, 6 Sep 2017 17:58:39 +0800 Message-Id: <1504691919-30832-1-git-send-email-kehuanlin@pinecone.net> X-Mailer: git-send-email 2.7.4 Sender: linux-scsi-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-scsi@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Since the command type of UTRD in UFS 2.1 specification is the same with UFS 2.0. And it assumes the future UFS specification will follow the same definition. Signed-off-by: kehuanlin Reviewed-by: Subhash Jadavani --- drivers/scsi/ufs/ufshcd.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c index 5bc9dc1..c33a2f8 100644 --- a/drivers/scsi/ufs/ufshcd.c +++ b/drivers/scsi/ufs/ufshcd.c @@ -2195,10 +2195,11 @@ static int ufshcd_comp_devman_upiu(struct ufs_hba *hba, struct ufshcd_lrb *lrbp) u32 upiu_flags; int ret = 0; - if (hba->ufs_version == UFSHCI_VERSION_20) - lrbp->command_type = UTP_CMD_TYPE_UFS_STORAGE; - else + if ((hba->ufs_version == UFSHCI_VERSION_10) || + (hba->ufs_version == UFSHCI_VERSION_11)) lrbp->command_type = UTP_CMD_TYPE_DEV_MANAGE; + else + lrbp->command_type = UTP_CMD_TYPE_UFS_STORAGE; ufshcd_prepare_req_desc_hdr(lrbp, &upiu_flags, DMA_NONE); if (hba->dev_cmd.type == DEV_CMD_TYPE_QUERY) @@ -2222,10 +2223,11 @@ static int ufshcd_comp_scsi_upiu(struct ufs_hba *hba, struct ufshcd_lrb *lrbp) u32 upiu_flags; int ret = 0; - if (hba->ufs_version == UFSHCI_VERSION_20) - lrbp->command_type = UTP_CMD_TYPE_UFS_STORAGE; - else + if ((hba->ufs_version == UFSHCI_VERSION_10) || + (hba->ufs_version == UFSHCI_VERSION_11)) lrbp->command_type = UTP_CMD_TYPE_SCSI; + else + lrbp->command_type = UTP_CMD_TYPE_UFS_STORAGE; if (likely(lrbp->cmd)) { ufshcd_prepare_req_desc_hdr(lrbp, &upiu_flags,