diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/target/target_core_backend.h | 5 | ||||
| -rw-r--r-- | include/target/target_core_base.h | 7 |
2 files changed, 9 insertions, 3 deletions
diff --git a/include/target/target_core_backend.h b/include/target/target_core_backend.h index 507910992c59..b128c20770bc 100644 --- a/include/target/target_core_backend.h +++ b/include/target/target_core_backend.h | |||
| @@ -35,6 +35,7 @@ struct se_subsystem_api { | |||
| 35 | u32 (*get_device_type)(struct se_device *); | 35 | u32 (*get_device_type)(struct se_device *); |
| 36 | sector_t (*get_blocks)(struct se_device *); | 36 | sector_t (*get_blocks)(struct se_device *); |
| 37 | unsigned char *(*get_sense_buffer)(struct se_cmd *); | 37 | unsigned char *(*get_sense_buffer)(struct se_cmd *); |
| 38 | bool (*get_write_cache)(struct se_device *); | ||
| 38 | }; | 39 | }; |
| 39 | 40 | ||
| 40 | struct sbc_ops { | 41 | struct sbc_ops { |
| @@ -52,11 +53,13 @@ void target_complete_cmd(struct se_cmd *, u8); | |||
| 52 | 53 | ||
| 53 | sense_reason_t spc_parse_cdb(struct se_cmd *cmd, unsigned int *size); | 54 | sense_reason_t spc_parse_cdb(struct se_cmd *cmd, unsigned int *size); |
| 54 | sense_reason_t spc_emulate_report_luns(struct se_cmd *cmd); | 55 | sense_reason_t spc_emulate_report_luns(struct se_cmd *cmd); |
| 55 | sector_t spc_get_write_same_sectors(struct se_cmd *cmd); | 56 | sense_reason_t spc_emulate_inquiry_std(struct se_cmd *, unsigned char *); |
| 57 | sense_reason_t spc_emulate_evpd_83(struct se_cmd *, unsigned char *); | ||
| 56 | 58 | ||
| 57 | sense_reason_t sbc_parse_cdb(struct se_cmd *cmd, struct sbc_ops *ops); | 59 | sense_reason_t sbc_parse_cdb(struct se_cmd *cmd, struct sbc_ops *ops); |
| 58 | u32 sbc_get_device_rev(struct se_device *dev); | 60 | u32 sbc_get_device_rev(struct se_device *dev); |
| 59 | u32 sbc_get_device_type(struct se_device *dev); | 61 | u32 sbc_get_device_type(struct se_device *dev); |
| 62 | sector_t sbc_get_write_same_sectors(struct se_cmd *cmd); | ||
| 60 | 63 | ||
| 61 | void transport_set_vpd_proto_id(struct t10_vpd *, unsigned char *); | 64 | void transport_set_vpd_proto_id(struct t10_vpd *, unsigned char *); |
| 62 | int transport_set_vpd_assoc(struct t10_vpd *, unsigned char *); | 65 | int transport_set_vpd_assoc(struct t10_vpd *, unsigned char *); |
diff --git a/include/target/target_core_base.h b/include/target/target_core_base.h index 663e34a5383f..c4af592f7057 100644 --- a/include/target/target_core_base.h +++ b/include/target/target_core_base.h | |||
| @@ -44,7 +44,7 @@ | |||
| 44 | /* Used by core_alua_store_tg_pt_gp_info() and target_core_alua_tg_pt_gp_show_attr_members() */ | 44 | /* Used by core_alua_store_tg_pt_gp_info() and target_core_alua_tg_pt_gp_show_attr_members() */ |
| 45 | #define TG_PT_GROUP_NAME_BUF 256 | 45 | #define TG_PT_GROUP_NAME_BUF 256 |
| 46 | /* Used to parse VPD into struct t10_vpd */ | 46 | /* Used to parse VPD into struct t10_vpd */ |
| 47 | #define VPD_TMP_BUF_SIZE 128 | 47 | #define VPD_TMP_BUF_SIZE 254 |
| 48 | /* Used by transport_generic_cmd_sequencer() */ | 48 | /* Used by transport_generic_cmd_sequencer() */ |
| 49 | #define READ_BLOCK_LEN 6 | 49 | #define READ_BLOCK_LEN 6 |
| 50 | #define READ_CAP_LEN 8 | 50 | #define READ_CAP_LEN 8 |
| @@ -75,6 +75,8 @@ | |||
| 75 | #define DA_MAX_WRITE_SAME_LEN 0 | 75 | #define DA_MAX_WRITE_SAME_LEN 0 |
| 76 | /* Default max transfer length */ | 76 | /* Default max transfer length */ |
| 77 | #define DA_FABRIC_MAX_SECTORS 8192 | 77 | #define DA_FABRIC_MAX_SECTORS 8192 |
| 78 | /* Use a model alias based on the configfs backend device name */ | ||
| 79 | #define DA_EMULATE_MODEL_ALIAS 0 | ||
| 78 | /* Emulation for Direct Page Out */ | 80 | /* Emulation for Direct Page Out */ |
| 79 | #define DA_EMULATE_DPO 0 | 81 | #define DA_EMULATE_DPO 0 |
| 80 | /* Emulation for Forced Unit Access WRITEs */ | 82 | /* Emulation for Forced Unit Access WRITEs */ |
| @@ -193,6 +195,7 @@ enum tcm_sense_reason_table { | |||
| 193 | TCM_RESERVATION_CONFLICT = R(0x10), | 195 | TCM_RESERVATION_CONFLICT = R(0x10), |
| 194 | TCM_ADDRESS_OUT_OF_RANGE = R(0x11), | 196 | TCM_ADDRESS_OUT_OF_RANGE = R(0x11), |
| 195 | TCM_OUT_OF_RESOURCES = R(0x12), | 197 | TCM_OUT_OF_RESOURCES = R(0x12), |
| 198 | TCM_PARAMETER_LIST_LENGTH_ERROR = R(0x13), | ||
| 196 | #undef R | 199 | #undef R |
| 197 | }; | 200 | }; |
| 198 | 201 | ||
| @@ -211,7 +214,6 @@ enum tcm_tmreq_table { | |||
| 211 | TMR_LUN_RESET = 5, | 214 | TMR_LUN_RESET = 5, |
| 212 | TMR_TARGET_WARM_RESET = 6, | 215 | TMR_TARGET_WARM_RESET = 6, |
| 213 | TMR_TARGET_COLD_RESET = 7, | 216 | TMR_TARGET_COLD_RESET = 7, |
| 214 | TMR_FABRIC_TMR = 255, | ||
| 215 | }; | 217 | }; |
| 216 | 218 | ||
| 217 | /* fabric independent task management response values */ | 219 | /* fabric independent task management response values */ |
| @@ -592,6 +594,7 @@ struct se_dev_entry { | |||
| 592 | }; | 594 | }; |
| 593 | 595 | ||
| 594 | struct se_dev_attrib { | 596 | struct se_dev_attrib { |
| 597 | int emulate_model_alias; | ||
| 595 | int emulate_dpo; | 598 | int emulate_dpo; |
| 596 | int emulate_fua_write; | 599 | int emulate_fua_write; |
| 597 | int emulate_fua_read; | 600 | int emulate_fua_read; |
