From: Geert Uytterhoeven <geert+renesas@glider.be>
To: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>,
"James E . J . Bottomley" <James.Bottomley@HansenPartnership.com>,
"Martin K . Petersen" <martin.petersen@oracle.com>,
Alim Akhtar <alim.akhtar@samsung.com>,
Avri Altman <avri.altman@wdc.com>,
Bart Van Assche <bvanassche@acm.org>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>
Cc: linux-scsi@vger.kernel.org, devicetree@vger.kernel.org,
linux-renesas-soc@vger.kernel.org,
Geert Uytterhoeven <geert+renesas@glider.be>
Subject: [PATCH v3 0/7] scsi: ufs: renesas: Add support for R-Car S4-8 ES1.2
Date: Wed, 5 Mar 2025 14:34:08 +0100 [thread overview]
Message-ID: <cover.1741179611.git.geert+renesas@glider.be> (raw)
Hi all,
Initialization of the UFS controller on R-Car S4-8 ES1.0 requires only
static values. However, other UFS controller variants (R-Car S4-8 ES 1.2)
require dynamic values, like those obtained from E-FUSE, and downloading
firmware.
Hence this patch series refactors the initialization code to prepare for
this, and adds support for the UFS controller on R-Car S4-8 ES1.2.
The accompanying DTS change is available at [1].
Changes compared to v2[2]:
- Take over from Shimoda-san,
- New patches 1/7 (DT bindings update) and 7/7 (actual R-Car S4-8
ES1.2 support),
- Keep MAX_INDEX check, as it is still useful,
- Prefix data parameters of ufs_renesas_write_d0_d4() by "data_", for
consistency,
- Document kernel size impact of switching to init code,
- Rename ufs_renesas_init_ufshc() to ufs_renesas_init_step1_to_3(),
- Extract ufs_renesas_init_step4_to_6(),
- Move ufs_renesas_write_phy_10ad_10af() just before its sole user,
Changes compared to v1[3]:
- Postpone removing the *_INDEX* enums until all users are gone,
- Combine declaration and initialization of ufs_renesas_init_param,
- Drop "_param" from ufs_renesas_*() helper function names.
- Move MODE_READ handling after MODE_POLL handling,
- Move ufs_renesas_read() after ufs_renesas_poll(),
- Remove not just MODE_WAIT, but all of the struct-based control.
This has been tested on:
- Renesas Spider with R-Car S4-8 ES1.0 (broken before/after),
- Renesas S4 Starter Kit with R-Car S4-8 ES1.2 (works after).
Thanks for your comments!
[1] "[PATCH] arm64: dts: renesas: r8a779f4: Add UFS tuning parameters in
E-FUSE"
https://lore.kernel.org/3e4fca228eb049d54a1ae520104558505dbdf803.1741179629.git.geert+renesas@glider.be
[2] "[PATCH v2 0/5] scsi: ufs: renesas: Refactor code for other UFS
controller"
https://lore.kernel.org/20240709023550.1750333-1-yoshihiro.shimoda.uh@renesas.com
[3] "[PATCH 0/5] scsi: ufs: renesas: Refactor code for other UFS
controller"
https://lore.kernel.org/20240708120931.1703956-1-yoshihiro.shimoda.uh@renesas.com
Geert Uytterhoeven (1):
dt-bindings: ufs: renesas,ufs: Add calibration data
Yoshihiro Shimoda (6):
scsi: ufs: renesas: Replace init data by init code
scsi: ufs: renesas: Add register read to remove save/set/restore
scsi: ufs: renesas: Remove register control helper function
scsi: ufs: renesas: Refactor 0x10ad/0x10af PHY settings
scsi: ufs: renesas: Add reusable functions
scsi: ufs: renesas: Add initialization code for R-Car S4-8 ES1.2
.../devicetree/bindings/ufs/renesas,ufs.yaml | 12 +
drivers/ufs/host/ufs-renesas.c | 723 +++++++++++-------
2 files changed, 445 insertions(+), 290 deletions(-)
--
2.43.0
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
next reply other threads:[~2025-03-05 13:34 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-05 13:34 Geert Uytterhoeven [this message]
2025-03-05 13:34 ` [PATCH v3 1/7] dt-bindings: ufs: renesas,ufs: Add calibration data Geert Uytterhoeven
2025-03-05 16:25 ` Conor Dooley
2025-03-05 13:34 ` [PATCH v3 2/7] scsi: ufs: renesas: Replace init data by init code Geert Uytterhoeven
2025-03-05 13:34 ` [PATCH v3 3/7] scsi: ufs: renesas: Add register read to remove save/set/restore Geert Uytterhoeven
2025-03-05 13:34 ` [PATCH v3 4/7] scsi: ufs: renesas: Remove register control helper function Geert Uytterhoeven
2025-03-05 13:34 ` [PATCH v3 5/7] scsi: ufs: renesas: Refactor 0x10ad/0x10af PHY settings Geert Uytterhoeven
2025-03-05 13:34 ` [PATCH v3 6/7] scsi: ufs: renesas: Add reusable functions Geert Uytterhoeven
2025-03-05 13:34 ` [PATCH v3 7/7] scsi: ufs: renesas: Add initialization code for R-Car S4-8 ES1.2 Geert Uytterhoeven
2025-03-11 1:37 ` [PATCH v3 0/7] scsi: ufs: renesas: Add support " Martin K. Petersen
2025-03-18 0:54 ` Martin K. Petersen
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=cover.1741179611.git.geert+renesas@glider.be \
--to=geert+renesas@glider.be \
--cc=James.Bottomley@HansenPartnership.com \
--cc=alim.akhtar@samsung.com \
--cc=avri.altman@wdc.com \
--cc=bvanassche@acm.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-renesas-soc@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.com \
--cc=robh@kernel.org \
--cc=yoshihiro.shimoda.uh@renesas.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox