On 11/9/22 10:24, Eric Biggers wrote:
On Tue, Nov 08, 2022 at 03:33:39PM -0800, Bart Van Assche wrote:
+config SCSI_UFS_VARIABLE_SG_ENTRY_SIZE
+ bool "Variable size UTP physical region descriptor"
+ help
+ In the UFSHCI 3.0 standard the Physical Region Descriptor (PRD) is a
+ data structure used for transferring data between host and UFS
+ device. This data structure describes a single region in physical
+ memory. Although the standard requires that this data structure has a
+ size of 16 bytes, for some controllers this data structure has a
+ different size. Enable this option for UFS controllers that need it.
This shouldn't be a user-selectable option. Just make it be enabled
automatically when it is needed. Like this:
config SCSI_UFS_VARIABLE_SG_ENTRY_SIZE
bool
default y if SCSI_UFS_EXYNOS && SCSI_UFS_CRYPTO
Thanks Eric for having taken a look. I will include the above change in
this patch when I repost it.
Also, this patch doesn't make sense without the code that actually needs it, so
I hope you plan to send that upstream too. I haven't been able to do so yet,
because no platform with this hardware actually can run the upstream kernel at
all, as far as I know. Maybe commit 06874015327 ("arm64: dts: exynos: Add
initial device tree support for Exynos7885 SoC") changed that? Any suggestions
would be greatly appreciated... How are you testing this?
My approach for maintaining the UFS driver in the Android kernel tree is
to keep the diffs between the upstream UFS driver and the driver in the
Android kernel tree as small as possible. This patch has been tested in
the same way as my other UFS driver patches, namely by applying it on
the Android kernel tree and by testing the Android kernel tree. For this
patch in particular "applying" came down to integrating the changes from
this patch that are not yet in the Android kernel tree.
Thanks,
Bart.