scsi: ufs: add some definitions included in UFS HCI specification
authorkwmad.kim@samsung.com <kwmad.kim@samsung.com>
Tue, 28 Nov 2017 05:35:29 +0000 (14:35 +0900)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 5 Dec 2017 03:56:01 +0000 (22:56 -0500)
These would be used in the future in some specific drivers.

Signed-off-by: Kiwoong Kim <kwmad.kim@samsung.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/ufs/ufshci.h

index 277752b0fc6fe040504dde96deb4b04d788f292c..1a1b5d9fe5141d32aa8521bd51a5ddaaab1abe47 100644 (file)
@@ -157,6 +157,8 @@ enum {
 #define UTP_TRANSFER_REQ_LIST_READY            0x2
 #define UTP_TASK_REQ_LIST_READY                        0x4
 #define UIC_COMMAND_READY                      0x8
+#define HOST_ERROR_INDICATOR                   0x10
+#define DEVICE_ERROR_INDICATOR                 0x20
 #define UIC_POWER_MODE_CHANGE_REQ_STATUS_MASK  UFS_MASK(0x7, 8)
 
 #define UFSHCD_STATUS_READY    (UTP_TRANSFER_REQ_LIST_READY |\
@@ -185,6 +187,10 @@ enum {
 /* UECDL - Host UIC Error Code Data Link Layer 3Ch */
 #define UIC_DATA_LINK_LAYER_ERROR              0x80000000
 #define UIC_DATA_LINK_LAYER_ERROR_CODE_MASK    0x7FFF
+#define UIC_DATA_LINK_LAYER_ERROR_TCX_REP_TIMER_EXP    0x2
+#define UIC_DATA_LINK_LAYER_ERROR_AFCX_REQ_TIMER_EXP   0x4
+#define UIC_DATA_LINK_LAYER_ERROR_FCX_PRO_TIMER_EXP    0x8
+#define UIC_DATA_LINK_LAYER_ERROR_RX_BUF_OF    0x20
 #define UIC_DATA_LINK_LAYER_ERROR_PA_INIT      0x2000
 #define UIC_DATA_LINK_LAYER_ERROR_NAC_RECEIVED 0x0001
 #define UIC_DATA_LINK_LAYER_ERROR_TCx_REPLAY_TIMEOUT 0x0002
@@ -192,10 +198,20 @@ enum {
 /* UECN - Host UIC Error Code Network Layer 40h */
 #define UIC_NETWORK_LAYER_ERROR                        0x80000000
 #define UIC_NETWORK_LAYER_ERROR_CODE_MASK      0x7
+#define UIC_NETWORK_UNSUPPORTED_HEADER_TYPE    0x1
+#define UIC_NETWORK_BAD_DEVICEID_ENC           0x2
+#define UIC_NETWORK_LHDR_TRAP_PACKET_DROPPING  0x4
 
 /* UECT - Host UIC Error Code Transport Layer 44h */
 #define UIC_TRANSPORT_LAYER_ERROR              0x80000000
 #define UIC_TRANSPORT_LAYER_ERROR_CODE_MASK    0x7F
+#define UIC_TRANSPORT_UNSUPPORTED_HEADER_TYPE  0x1
+#define UIC_TRANSPORT_UNKNOWN_CPORTID          0x2
+#define UIC_TRANSPORT_NO_CONNECTION_RX         0x4
+#define UIC_TRANSPORT_CONTROLLED_SEGMENT_DROPPING      0x8
+#define UIC_TRANSPORT_BAD_TC                   0x10
+#define UIC_TRANSPORT_E2E_CREDIT_OVERFOW       0x20
+#define UIC_TRANSPORT_SAFETY_VALUE_DROPPING    0x40
 
 /* UECDME - Host UIC Error Code DME 48h */
 #define UIC_DME_ERROR                  0x80000000