Can you please clarify the naming, at least as far as saying scsi/ufs. Universal Flash Storage is not the same thing as all as the Unix File System which has been using the acronym ufs for much longer. I saw this patchset and I was wondering what in the world does a filesystem need with sysfs entries. Eric Stanislav Nijnikov <stanislav.nijnikov@xxxxxxx> writes: > This patch introduces sysfs entries that will provide read-only access to > device management data that could be received with UFS query requests. > User-space applications will be able to read UFS device descriptors, > flags and attributes. This will allow to get full UFS device configuration > and its status. The descriptors are provided as set of files representing > its parameters. The flags are using "true"/"false" representation of > their value. The attributes are shown as hexadecimal value. The > descriptors, attributes and flags are placed in separate subfolders under > the UFS device sysfs entry (/sys/bus/platform/drivers/ufshcd/*/). The > string descriptor subfolder contains five string descriptors defined by > UFS specification 2.1. The LUN specific descriptor and attribute are > placed under corresponding SCSI device sysfs entries > (/sys/class/scsi_device/*/device/). > In addition the patch presents an additional field in the > scsi_host_template structure - struct attribute_group **sdev_group. > This field allows to define groups of attributes. It will provide an > ability to use binary attributes in addition to device attributes and > to group them under subfolders if necessary. > > Changelog: > v3 -> v4 > Additional patch the introduces default attributes group for the > existing ufs sysfs entries (rpm_lvl and spm_lvl) > The ufs_sysfs_read_desc_param function calls to ufshcd_read_desc_param > insted of ufshcd_query_descriptor_retry to avoid code duplication. > The code was updated to remove the checkpatch error "ERROR: Macros > with complex values should be enclosed in parentheses" > Added "_" to macros parameters to remove "#undef DEVICE_CLASS" > The legal information was updated to satisfy the SPDX requirements > The date in Documentation/ABI/testing/sysfs-driver-ufs was updated. > > v2 -> v3 > The Makefile is updated to make ufs-sysfs.c part of the ufshcd module. > The unnecessary EXPORT_SYMBOL were removed > Added a legal info header to the new files > The date in Documentation/ABI/testing/sysfs-driver-ufs was updated. > > v1 -> v2 > Provided additional description for the changes > > Stanislav Nijnikov (10): > ufs: sysfs: attribute group for existing sysfs entries. > ufs: sysfs: device descriptor > ufs: sysfs: interconnect descriptor > ufs: sysfs: geometry descriptor > ufs: sysfs: health descriptor > ufs: sysfs: power descriptor > ufs: sysfs: string descriptors > ufs: sysfs: unit descriptor > ufs: sysfs: flags > ufs: sysfs: attributes > > Documentation/ABI/testing/sysfs-driver-ufs | 804 +++++++++++++++++++++++++++++ > drivers/scsi/scsi_sysfs.c | 14 + > drivers/scsi/ufs/Makefile | 3 +- > drivers/scsi/ufs/ufs-sysfs.c | 757 +++++++++++++++++++++++++++ > drivers/scsi/ufs/ufs-sysfs.h | 25 + > drivers/scsi/ufs/ufs.h | 115 ++++- > drivers/scsi/ufs/ufshcd.c | 218 ++------ > drivers/scsi/ufs/ufshcd.h | 34 ++ > include/scsi/scsi_host.h | 6 + > 9 files changed, 1785 insertions(+), 191 deletions(-) > create mode 100644 Documentation/ABI/testing/sysfs-driver-ufs > create mode 100644 drivers/scsi/ufs/ufs-sysfs.c > create mode 100644 drivers/scsi/ufs/ufs-sysfs.h