From: Hyeoncheol Jeong <hyenc.jeong@samsung.com>
To: "James.Bottomley@HansenPartnership.com"
<James.Bottomley@HansenPartnership.com>,
"mkp@kernel.org" <mkp@kernel.org>,
"avri.altman@sandisk.com" <avri.altman@sandisk.com>,
"bvanassche@acm.org" <bvanassche@acm.org>,
"peter.wang@mediatek.com" <peter.wang@mediatek.com>,
"linux-scsi@vger.kernel.org" <linux-scsi@vger.kernel.org>
Cc: Jinyoung Choi <j-young.choi@samsung.com>,
Alim Akhtar <alim.akhtar@samsung.com>,
"beanhuo@micron.com" <beanhuo@micron.com>,
"can.guo@oss.qualcomm.com" <can.guo@oss.qualcomm.com>,
Hyeoncheol Jeong <hyenc.jeong@samsung.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: [PATCH v2 0/2] scsi: ufs: batch device-init reads with UFS 5.0 aggregated read
Date: Wed, 30 Sep 2026 14:02:01 +0900 [thread overview]
Message-ID: <1860250540.01790747102385.JavaMail.epsvc@epcpadp1new> (raw)
In-Reply-To: CGME20260930050201epcms2p13ab67182445b0555acc8d27b927cda86@epcms2p1
UFS 5.0 adds the AGGREGATED READ query (opcode 0x9): one QUERY RESPONSE
UPIU returns many descriptors, attributes and flags as a chain of typed
groups.
Patch 1 adds the opcode, the request mask, the group header and the reply
plumbing. Patch 2 uses it during device init: a single aggregated read
replaces the per-item queries for the attributes, flags and ID strings,
falling back to individual queries on older devices or a rejected opcode.
No functional change for pre-5.0 devices.
Motivation: on a Qualcomm SM8850 platform with a Samsung UFS 5.0 device,
timing raw UPIU queries over BSG (100 iterations) shows that replacing the
device-init read burst with a single aggregated read reduces the query
time by 75-78% (min 75.3%, avg 76.4%, max 78.5%).
(That setup batched 8 init reads; on current mainline this series batches
the 6 device-init reads that remain individual queries.)
Changes since v1:
- Rename UFS_AGG_TYPE_UNIT_DESC to UFS_AGG_TYPE_UNIT_RPMB_DESC (Peter Wang)
- Add UFS_AGG_GROUP_RESERVED = 0x00 (Peter Wang)
- Rename hdr_off/next_off to group_off/next_group_off (Peter Wang)
- Rebased onto v7.3-rc5
Hyeoncheol Jeong (2):
scsi: ufs: Add the aggregated read query opcode and its reply format
scsi: ufs: Serve the device init reads from one aggregated read
drivers/ufs/core/ufshcd.c | 364 +++++++++++++++++++++++++++++++++++---
include/ufs/ufs.h | 47 +++++
include/ufs/ufshcd.h | 11 ++
3 files changed, 402 insertions(+), 20 deletions(-)
--
2.25.1
next parent reply other threads:[~2026-09-30 5:45 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20260930050201epcms2p13ab67182445b0555acc8d27b927cda86@epcms2p1>
2026-09-30 5:02 ` Hyeoncheol Jeong [this message]
2026-10-02 9:24 ` [PATCH v2 0/2] scsi: ufs: batch device-init reads with UFS 5.0 aggregated read Bean Huo
2026-10-06 7:17 ` Hyeoncheol Jeong
[not found] <CGME20260930050201epcms2p13ab67182445b0555acc8d27b927cda86@epcms2p7>
[not found] ` <20260930050201epcms2p13ab67182445b0555acc8d27b927cda86@epcms2p1>
2026-09-30 5:15 ` [PATCH v2 1/2] scsi: ufs: Add the aggregated read query opcode and its reply format Hyeoncheol Jeong
2026-09-30 7:54 ` Peter Wang
2026-09-30 5:18 ` [PATCH v2 2/2] scsi: ufs: Serve the device init reads from one aggregated read Hyeoncheol Jeong
2026-09-30 7:28 ` sashiko-bot
2026-09-30 7:55 ` Peter Wang
2026-10-01 5:53 ` Stanley Jhu
2026-10-02 5:11 ` Hyeoncheol Jeong
2026-10-02 15:50 ` Bean Huo
2026-10-06 8:01 ` Hyeoncheol Jeong
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1860250540.01790747102385.JavaMail.epsvc@epcpadp1new \
--to=hyenc.jeong@samsung.com \
--cc=James.Bottomley@HansenPartnership.com \
--cc=alim.akhtar@samsung.com \
--cc=avri.altman@sandisk.com \
--cc=beanhuo@micron.com \
--cc=bvanassche@acm.org \
--cc=can.guo@oss.qualcomm.com \
--cc=j-young.choi@samsung.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=mkp@kernel.org \
--cc=peter.wang@mediatek.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.