On Sun, Sep 23, 2018 at 11:29 PM Sayali Lokhande <sayalil@xxxxxxxxxxxxxx> wrote: > > This patch adds configfs support to provision UFS device at > runtime. This feature can be primarily useful in factory or > assembly line as some devices may be required to be configured > multiple times during initial system development phase. > Configuration Descriptors can be written multiple times until > bConfigDescrLock attribute is zero. > > Configuration descriptor buffer consists of Device and Unit > descriptor configurable parameters which are parsed from vendor > specific provisioning file and then passed via configfs node at > runtime to provision ufs device. > CONFIG_CONFIGFS_FS and CONFIG_SCSI_UFS_PROVISION needs to be enabled > for using this feature. > > Usage: > 1) To read current configuration descriptor with index X > (where index X can be 0/1/2/3) : > cat /config/<device_name>/ufs_config_desc_X > > 2) To write configuration descriptor with index X : > echo <config_desc_buf> > /config/<device_name>/ufs_config_desc_X > > Signed-off-by: Sayali Lokhande <sayalil@xxxxxxxxxxxxxx> > --- > Documentation/ABI/testing/configfs-driver-ufs | 12 ++ > drivers/scsi/ufs/Kconfig | 10 ++ > drivers/scsi/ufs/Makefile | 1 + > drivers/scsi/ufs/ufs-configfs.c | 237 ++++++++++++++++++++++++++ > drivers/scsi/ufs/ufshcd.c | 3 +- > drivers/scsi/ufs/ufshcd.h | 18 ++ > 6 files changed, 280 insertions(+), 1 deletion(-) > create mode 100644 Documentation/ABI/testing/configfs-driver-ufs > create mode 100644 drivers/scsi/ufs/ufs-configfs.c > Reviewed-by: Evan Green <evgreen@xxxxxxxxxxxx>