From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yaniv Gardi Subject: [PATCH v7 13/14] scsi: ufs: commit descriptors before setting the doorbell Date: Mon, 1 Feb 2016 15:02:49 +0200 Message-ID: <1454331770-29642-14-git-send-email-ygardi@codeaurora.org> References: <1454331770-29642-1-git-send-email-ygardi@codeaurora.org> Return-path: In-Reply-To: <1454331770-29642-1-git-send-email-ygardi@codeaurora.org> Sender: linux-kernel-owner@vger.kernel.org To: robherring2@gmail.com, James.Bottomley@HansenPartnership.com, pebolle@tiscali.nl, hch@infradead.org Cc: linux-kernel@vger.kernel.org, linux-scsi@vger.kernel.org, linux-arm-msm@vger.kernel.org, santoshsy@gmail.com, linux-scsi-owner@vger.kernel.org, subhashj@codeaurora.org, ygardi@codeaurora.org, gbroner@codeaurora.org, draviv@codeaurora.org, Vinayak Holikatti , "James E.J. Bottomley" , "Martin K. Petersen" List-Id: linux-arm-msm@vger.kernel.org Add a write memory barrier to make sure descriptors prepared are actually written to memory before ringing the doorbell. We have also added the write memory barrier after ringing the doorbell register so that controller sees the new request immediately. Reviewed-by: Dolev Raviv Signed-off-by: Gilad Broner Signed-off-by: Subhash Jadavani Signed-off-by: Yaniv Gardi --- drivers/scsi/ufs/ufshcd.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c index 1893a14..2fc678d 100644 --- a/drivers/scsi/ufs/ufshcd.c +++ b/drivers/scsi/ufs/ufshcd.c @@ -1625,6 +1625,8 @@ static int ufshcd_exec_dev_cmd(struct ufs_hba *hba, hba->dev_cmd.complete = &wait; + /* Make sure descriptors are ready before ringing the doorbell */ + wmb(); spin_lock_irqsave(hba->host->host_lock, flags); ufshcd_send_command(hba, tag); spin_unlock_irqrestore(hba->host->host_lock, flags); -- 1.8.5.2 -- QUALCOMM ISRAEL, on behalf of Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation