scsi: ufs: sysfs: interconnect descriptor
This patch introduces a sysfs group entry for the UFS interconnect descriptor parameters. The group adds "interconnect_descriptor" folder under the UFS driver sysfs entry (/sys/bus/platform/drivers/ufshcd/*). The parameters are shown as hexadecimal numbers. The full information about the parameters could be found at UFS specifications 2.1. Signed-off-by: Stanislav Nijnikov <stanislav.nijnikov@wdc.com> Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
45bced87e7
commit
8c2582bfbd
|
@ -221,3 +221,22 @@ Description: This file shows the command maximum timeout for a change
|
|||
parameters. The full information about the descriptor could
|
||||
be found at UFS specifications 2.1.
|
||||
The file is read only.
|
||||
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/interconnect_descriptor/unipro_version
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the MIPI UniPro version number in BCD format.
|
||||
This is one of the UFS interconnect descriptor parameters.
|
||||
The full information about the descriptor could be found at
|
||||
UFS specifications 2.1.
|
||||
The file is read only.
|
||||
|
||||
What: /sys/bus/platform/drivers/ufshcd/*/interconnect_descriptor/mphy_version
|
||||
Date: February 2018
|
||||
Contact: Stanislav Nijnikov <stanislav.nijnikov@wdc.com>
|
||||
Description: This file shows the MIPI M-PHY version number in BCD format.
|
||||
This is one of the UFS interconnect descriptor parameters.
|
||||
The full information about the descriptor could be found at
|
||||
UFS specifications 2.1.
|
||||
The file is read only.
|
||||
|
|
|
@ -249,9 +249,27 @@ static const struct attribute_group ufs_sysfs_device_descriptor_group = {
|
|||
.attrs = ufs_sysfs_device_descriptor,
|
||||
};
|
||||
|
||||
#define UFS_INTERCONNECT_DESC_PARAM(_name, _uname, _size) \
|
||||
UFS_DESC_PARAM(_name, _uname, INTERCONNECT, _size)
|
||||
|
||||
UFS_INTERCONNECT_DESC_PARAM(unipro_version, _UNIPRO_VER, 2);
|
||||
UFS_INTERCONNECT_DESC_PARAM(mphy_version, _MPHY_VER, 2);
|
||||
|
||||
static struct attribute *ufs_sysfs_interconnect_descriptor[] = {
|
||||
&dev_attr_unipro_version.attr,
|
||||
&dev_attr_mphy_version.attr,
|
||||
NULL,
|
||||
};
|
||||
|
||||
static const struct attribute_group ufs_sysfs_interconnect_descriptor_group = {
|
||||
.name = "interconnect_descriptor",
|
||||
.attrs = ufs_sysfs_interconnect_descriptor,
|
||||
};
|
||||
|
||||
static const struct attribute_group *ufs_sysfs_groups[] = {
|
||||
&ufs_sysfs_default_group,
|
||||
&ufs_sysfs_device_descriptor_group,
|
||||
&ufs_sysfs_interconnect_descriptor_group,
|
||||
NULL,
|
||||
};
|
||||
|
||||
|
|
|
@ -230,6 +230,14 @@ enum device_desc_param {
|
|||
DEVICE_DESC_PARAM_PRDCT_REV = 0x2A,
|
||||
};
|
||||
|
||||
/* Interconnect descriptor parameters offsets in bytes*/
|
||||
enum interconnect_desc_param {
|
||||
INTERCONNECT_DESC_PARAM_LEN = 0x0,
|
||||
INTERCONNECT_DESC_PARAM_TYPE = 0x1,
|
||||
INTERCONNECT_DESC_PARAM_UNIPRO_VER = 0x2,
|
||||
INTERCONNECT_DESC_PARAM_MPHY_VER = 0x4,
|
||||
};
|
||||
|
||||
/*
|
||||
* Logical Unit Write Protect
|
||||
* 00h: LU not write protected
|
||||
|
|
Loading…
Reference in New Issue