Branch data 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 : : scsi_opcode_sa_name(int cmd, int sa, 31 : : const char **cdb_name, const char **sa_name) 32 : : { 33 : : *cdb_name = NULL; 34 : 0 : switch (cmd) { 35 : : 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 : : *sa_name = NULL; 48 : : return true; 49 : : default: 50 : : return false; 51 : : } 52 : : } 53 : : 54 : : static inline const char * 55 : : scsi_sense_key_string(unsigned char key) 56 : : { 57 : : return NULL; 58 : : } 59 : : 60 : : static inline const char * 61 : : scsi_extd_sense_format(unsigned char asc, unsigned char ascq, const char **fmt) 62 : : { 63 : : *fmt = NULL; 64 : : return NULL; 65 : : } 66 : : 67 : : static inline const char * 68 : : scsi_mlreturn_string(int result) 69 : : { 70 : : return NULL; 71 : : } 72 : : 73 : : static inline const char * 74 : : scsi_hostbyte_string(int result) 75 : : { 76 : : return NULL; 77 : : } 78 : : 79 : : static inline const char * 80 : : scsi_driverbyte_string(int result) 81 : : { 82 : : return NULL; 83 : : } 84 : : 85 : : #endif 86 : : 87 : : #endif /* _SCSI_SCSI_DBG_H */