Line data Source code
1 : /* SPDX-License-Identifier: GPL-2.0 */ 2 : #ifndef _SCSI_SCSI_DBG_H 3 : #define _SCSI_SCSI_DBG_H 4 : 5 : struct scsi_cmnd; 6 : struct scsi_device; 7 : struct scsi_sense_hdr; 8 : 9 : extern void scsi_print_command(struct scsi_cmnd *); 10 : extern size_t __scsi_format_command(char *, size_t, 11 : const unsigned char *, size_t); 12 : extern void scsi_print_sense_hdr(const struct scsi_device *, const char *, 13 : const struct scsi_sense_hdr *); 14 : extern void scsi_print_sense(const struct scsi_cmnd *); 15 : extern void __scsi_print_sense(const struct scsi_device *, const char *name, 16 : const unsigned char *sense_buffer, 17 : int sense_len); 18 : extern void scsi_print_result(const struct scsi_cmnd *, const char *, int); 19 : 20 : #ifdef CONFIG_SCSI_CONSTANTS 21 : extern bool scsi_opcode_sa_name(int, int, const char **, const char **); 22 : extern const char *scsi_sense_key_string(unsigned char); 23 : extern const char *scsi_extd_sense_format(unsigned char, unsigned char, 24 : const char **); 25 : extern const char *scsi_mlreturn_string(int); 26 : extern const char *scsi_hostbyte_string(int); 27 : extern const char *scsi_driverbyte_string(int); 28 : #else 29 : static inline bool 30 0 : scsi_opcode_sa_name(int cmd, int sa, 31 : const char **cdb_name, const char **sa_name) 32 : { 33 0 : *cdb_name = NULL; 34 0 : switch (cmd) { 35 0 : case VARIABLE_LENGTH_CMD: 36 : case MAINTENANCE_IN: 37 : case MAINTENANCE_OUT: 38 : case PERSISTENT_RESERVE_IN: 39 : case PERSISTENT_RESERVE_OUT: 40 : case SERVICE_ACTION_IN_12: 41 : case SERVICE_ACTION_OUT_12: 42 : case SERVICE_ACTION_BIDIRECTIONAL: 43 : case SERVICE_ACTION_IN_16: 44 : case SERVICE_ACTION_OUT_16: 45 : case EXTENDED_COPY: 46 : case RECEIVE_COPY_RESULTS: 47 0 : *sa_name = NULL; 48 0 : return true; 49 : default: 50 : return false; 51 : } 52 : } 53 : 54 : static inline const char * 55 0 : scsi_sense_key_string(unsigned char key) 56 : { 57 0 : return NULL; 58 : } 59 : 60 : static inline const char * 61 0 : scsi_extd_sense_format(unsigned char asc, unsigned char ascq, const char **fmt) 62 : { 63 0 : *fmt = NULL; 64 0 : return NULL; 65 : } 66 : 67 : static inline const char * 68 0 : scsi_mlreturn_string(int result) 69 : { 70 0 : return NULL; 71 : } 72 : 73 : static inline const char * 74 0 : scsi_hostbyte_string(int result) 75 : { 76 0 : return NULL; 77 : } 78 : 79 : static inline const char * 80 0 : scsi_driverbyte_string(int result) 81 : { 82 0 : return NULL; 83 : } 84 : 85 : #endif 86 : 87 : #endif /* _SCSI_SCSI_DBG_H */