Re: [PATCH V12 2/2] scsi: ufs: Add configfs support for UFS provisioning

From: Sayali Lokhande
Date: Wed Sep 05 2018 - 06:05:49 EST



On 8/31/2018 12:42 PM, Adrian Hunter wrote:
On 30/08/18 13:46, Sayali Lokhande 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_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/XXXX.ufshc/ufs_config_desc_X

2) To write configuration descriptor with index X :
echo <config_desc_buf> > /config/XXXX.ufshc/ufs_config_desc_X

Signed-off-by: Sayali Lokhande <sayalil@xxxxxxxxxxxxxx>
---
<SNIP>

+static struct configfs_attribute ufshcd_attr_provision_0 = {
Actually, wasn't the original suggestion to use a binary attribute? i.e.
configfs_bin_attribute
Yes. we did discuss about having binary attribute in between , but then it was thought if anyone who wants to use this interface from a shell script, it will be much easier to write multiple ASCII attributes than a single binary attribute. It seemed more readable for users and easier/comfortable to compare any value to default spec value(if required).