xref: /qemu/hw/scsi/trace-events (revision ab9056ff)
1# See docs/devel/tracing.txt for syntax documentation.
2
3# scsi-bus.c
4scsi_req_alloc(int target, int lun, int tag) "target %d lun %d tag %d"
5scsi_req_cancel(int target, int lun, int tag) "target %d lun %d tag %d"
6scsi_req_data(int target, int lun, int tag, int len) "target %d lun %d tag %d len %d"
7scsi_req_data_canceled(int target, int lun, int tag, int len) "target %d lun %d tag %d len %d"
8scsi_req_dequeue(int target, int lun, int tag) "target %d lun %d tag %d"
9scsi_req_continue(int target, int lun, int tag) "target %d lun %d tag %d"
10scsi_req_continue_canceled(int target, int lun, int tag) "target %d lun %d tag %d"
11scsi_req_parsed(int target, int lun, int tag, int cmd, int mode, int xfer) "target %d lun %d tag %d command %d dir %d length %d"
12scsi_req_parsed_lba(int target, int lun, int tag, int cmd, uint64_t lba) "target %d lun %d tag %d command %d lba %"PRIu64
13scsi_req_parse_bad(int target, int lun, int tag, int cmd) "target %d lun %d tag %d command %d"
14scsi_req_build_sense(int target, int lun, int tag, int key, int asc, int ascq) "target %d lun %d tag %d key 0x%02x asc 0x%02x ascq 0x%02x"
15scsi_device_set_ua(int target, int lun, int key, int asc, int ascq) "target %d lun %d key 0x%02x asc 0x%02x ascq 0x%02x"
16scsi_report_luns(int target, int lun, int tag) "target %d lun %d tag %d"
17scsi_inquiry(int target, int lun, int tag, int cdb1, int cdb2) "target %d lun %d tag %d page 0x%02x/0x%02x"
18scsi_test_unit_ready(int target, int lun, int tag) "target %d lun %d tag %d"
19scsi_request_sense(int target, int lun, int tag) "target %d lun %d tag %d"
20
21# mptsas.c
22mptsas_command_complete(void *dev, uint32_t ctx, uint32_t status, uint32_t resid) "dev %p context 0x%08x status 0x%x resid %d"
23mptsas_diag_read(void *dev, uint32_t addr, uint32_t val) "dev %p addr 0x%08x value 0x%08x"
24mptsas_diag_write(void *dev, uint32_t addr, uint32_t val) "dev %p addr 0x%08x value 0x%08x"
25mptsas_irq_intx(void *dev, int level) "dev %p level %d"
26mptsas_irq_msi(void *dev) "dev %p "
27mptsas_mmio_read(void *dev, uint32_t addr, uint32_t val) "dev %p addr 0x%08x value 0x%x"
28mptsas_mmio_unhandled_read(void *dev, uint32_t addr) "dev %p addr 0x%08x"
29mptsas_mmio_unhandled_write(void *dev, uint32_t addr, uint32_t val) "dev %p addr 0x%08x value 0x%x"
30mptsas_mmio_write(void *dev, uint32_t addr, uint32_t val) "dev %p addr 0x%08x value 0x%x"
31mptsas_process_message(void *dev, int msg, uint32_t ctx) "dev %p cmd %d context 0x%08x"
32mptsas_process_scsi_io_request(void *dev, int bus, int target, int lun, uint64_t len) "dev %p dev %d:%d:%d length %"PRIu64""
33mptsas_reset(void *dev) "dev %p "
34mptsas_scsi_overflow(void *dev, uint32_t ctx, uint64_t req, uint64_t found) "dev %p context 0x%08x: %"PRIu64"/%"PRIu64""
35mptsas_sgl_overflow(void *dev, uint32_t ctx, uint64_t req, uint64_t found) "dev %p context 0x%08x: %"PRIu64"/%"PRIu64""
36mptsas_unhandled_cmd(void *dev, uint32_t ctx, uint8_t msg_cmd) "dev %p context 0x%08x: Unhandled cmd 0x%x"
37mptsas_unhandled_doorbell_cmd(void *dev, int cmd) "dev %p value 0x%08x"
38
39# mptconfig.c
40mptsas_config_sas_device(void *dev, int address, int port, int phy_handle, int dev_handle, int page) "dev %p address %d (port %d, handles: phy %d dev %d) page %d"
41mptsas_config_sas_phy(void *dev, int address, int port, int phy_handle, int dev_handle, int page) "dev %p address %d (port %d, handles: phy %d dev %d) page %d"
42
43# megasas.c
44megasas_init_firmware(uint64_t pa) "pa 0x%" PRIx64 " "
45megasas_init_queue(uint64_t queue_pa, int queue_len, uint64_t head, uint64_t tail, uint32_t flags) "queue at 0x%" PRIx64 " len %d head 0x%" PRIx64 " tail 0x%" PRIx64 " flags 0x%x"
46megasas_initq_map_failed(int frame) "scmd %d: failed to map queue"
47megasas_initq_mapped(uint64_t pa) "queue already mapped at 0x%" PRIx64
48megasas_initq_mismatch(int queue_len, int fw_cmds) "queue size %d max fw cmds %d"
49megasas_qf_mapped(unsigned int index) "skip mapped frame 0x%x"
50megasas_qf_new(unsigned int index, uint64_t frame) "frame 0x%x addr 0x%" PRIx64
51megasas_qf_busy(unsigned long pa) "all frames busy for frame 0x%lx"
52megasas_qf_enqueue(unsigned int index, unsigned int count, uint64_t context, unsigned int head, unsigned int tail, int busy) "frame 0x%x count %d context 0x%" PRIx64 " head 0x%x tail 0x%x busy %d"
53megasas_qf_update(unsigned int head, unsigned int tail, unsigned int busy) "head 0x%x tail 0x%x busy %d"
54megasas_qf_map_failed(int cmd, unsigned long frame) "scmd %d: frame %lu"
55megasas_qf_complete_noirq(uint64_t context) "context 0x%" PRIx64 " "
56megasas_qf_complete(uint64_t context, unsigned int head, unsigned int tail, int busy) "context 0x%" PRIx64 " head 0x%x tail 0x%x busy %d"
57megasas_frame_busy(uint64_t addr) "frame 0x%" PRIx64 " busy"
58megasas_unhandled_frame_cmd(int cmd, uint8_t frame_cmd) "scmd %d: MFI cmd 0x%x"
59megasas_handle_scsi(const char *frame, int bus, int dev, int lun, void *sdev, unsigned long size) "%s dev %x/%x/%x sdev %p xfer %lu"
60megasas_scsi_target_not_present(const char *frame, int bus, int dev, int lun) "%s dev %x/%x/%x"
61megasas_scsi_invalid_cdb_len(const char *frame, int bus, int dev, int lun, int len) "%s dev %x/%x/%x invalid cdb len %d"
62megasas_iov_read_overflow(int cmd, int bytes, int len) "scmd %d: %d/%d bytes"
63megasas_iov_write_overflow(int cmd, int bytes, int len) "scmd %d: %d/%d bytes"
64megasas_iov_read_underflow(int cmd, int bytes, int len) "scmd %d: %d/%d bytes"
65megasas_iov_write_underflow(int cmd, int bytes, int len) "scmd %d: %d/%d bytes"
66megasas_scsi_req_alloc_failed(const char *frame, int dev, int lun) "%s dev %x/%x"
67megasas_scsi_read_start(int cmd, int len) "scmd %d: transfer %d bytes of data"
68megasas_scsi_write_start(int cmd, int len) "scmd %d: transfer %d bytes of data"
69megasas_scsi_nodata(int cmd) "scmd %d: no data to be transferred"
70megasas_scsi_complete(int cmd, uint32_t status, int len, int xfer) "scmd %d: status 0x%x, len %u/%u"
71megasas_command_complete(int cmd, uint32_t status, uint32_t resid) "scmd %d: status 0x%x, residual %d"
72megasas_handle_io(int cmd, const char *frame, int dev, int lun, unsigned long lba, unsigned long count) "scmd %d: %s dev %x/%x lba 0x%lx count %lu"
73megasas_io_target_not_present(int cmd, const char *frame, int dev, int lun) "scmd %d: %s dev 1/%x/%x LUN not present"
74megasas_io_read_start(int cmd, unsigned long lba, unsigned long count, unsigned long len) "scmd %d: start LBA 0x%lx %lu blocks (%lu bytes)"
75megasas_io_write_start(int cmd, unsigned long lba, unsigned long count, unsigned long len) "scmd %d: start LBA 0x%lx %lu blocks (%lu bytes)"
76megasas_io_complete(int cmd, uint32_t len) "scmd %d: %d bytes"
77megasas_iovec_sgl_overflow(int cmd, int index, int limit) "scmd %d: iovec count %d limit %d"
78megasas_iovec_sgl_underflow(int cmd, int index) "scmd %d: iovec count %d"
79megasas_iovec_sgl_invalid(int cmd, int index, uint64_t pa, uint32_t len) "scmd %d: element %d pa 0x%" PRIx64 " len %u"
80megasas_iovec_overflow(int cmd, int len, int limit) "scmd %d: len %d limit %d"
81megasas_iovec_underflow(int cmd, int len, int limit) "scmd %d: len %d limit %d"
82megasas_handle_dcmd(int cmd, int opcode) "scmd %d: MFI DCMD opcode 0x%x"
83megasas_finish_dcmd(int cmd, int size) "scmd %d: MFI DCMD wrote %d bytes"
84megasas_dcmd_req_alloc_failed(int cmd, const char *desc) "scmd %d: %s"
85megasas_dcmd_internal_submit(int cmd, const char *desc, int dev) "scmd %d: %s to dev %d"
86megasas_dcmd_internal_finish(int cmd, int opcode, int lun) "scmd %d: cmd 0x%x lun %d"
87megasas_dcmd_internal_invalid(int cmd, int opcode) "scmd %d: DCMD 0x%x"
88megasas_dcmd_unhandled(int cmd, int opcode, int len) "scmd %d: opcode 0x%x, len %d"
89megasas_dcmd_zero_sge(int cmd) "scmd %d: zero DCMD sge count"
90megasas_dcmd_invalid_sge(int cmd, int count) "scmd %d: DCMD sge count %d"
91megasas_dcmd_invalid_xfer_len(int cmd, unsigned long size, unsigned long max) "scmd %d: xfer len %ld, max %ld"
92megasas_dcmd_enter(int cmd, const char *dcmd, int len) "scmd %d: DCMD %s len %d"
93megasas_dcmd_dummy(int cmd, unsigned long size) "scmd %d: xfer len %ld"
94megasas_dcmd_set_fw_time(int cmd, unsigned long time) "scmd %d: Set FW time 0x%lx"
95megasas_dcmd_pd_get_list(int cmd, int num, int max, int offset) "scmd %d: DCMD PD get list: %d / %d PDs, size %d"
96megasas_dcmd_ld_get_list(int cmd, int num, int max) "scmd %d: DCMD LD get list: found %d / %d LDs"
97megasas_dcmd_ld_get_info(int cmd, int ld_id) "scmd %d: dev %d"
98megasas_dcmd_ld_list_query(int cmd, int flags) "scmd %d: query flags 0x%x"
99megasas_dcmd_pd_get_info(int cmd, int pd_id) "scmd %d: dev %d"
100megasas_dcmd_pd_list_query(int cmd, int flags) "scmd %d: query flags 0x%x"
101megasas_dcmd_reset_ld(int cmd, int target_id) "scmd %d: dev %d"
102megasas_dcmd_unsupported(int cmd, unsigned long size) "scmd %d: set properties len %ld"
103megasas_abort_frame(int cmd, int abort_cmd) "scmd %d: frame 0x%x"
104megasas_abort_no_cmd(int cmd, uint64_t context) "scmd %d: no active command for frame context 0x%" PRIx64
105megasas_abort_invalid_context(int cmd, uint64_t context, int abort_cmd) "scmd %d: invalid frame context 0x%" PRIx64 " for abort frame 0x%x"
106megasas_reset(int fw_state) "firmware state 0x%x"
107megasas_init(int sges, int cmds, const char *mode) "Using %d sges, %d cmds, %s mode"
108megasas_msix_raise(int vector) "vector %d"
109megasas_msi_raise(int vector) "vector %d"
110megasas_irq_lower(void) "INTx"
111megasas_irq_raise(void) "INTx"
112megasas_intr_enabled(void) "Interrupts enabled"
113megasas_intr_disabled(void) "Interrupts disabled"
114megasas_msix_enabled(int vector) "vector %d"
115megasas_msi_enabled(int vector) "vector %d"
116megasas_mmio_readl(const char *reg, uint32_t val) "reg %s: 0x%x"
117megasas_mmio_invalid_readl(unsigned long addr) "addr 0x%lx"
118megasas_mmio_writel(const char *reg, uint32_t val) "reg %s: 0x%x"
119megasas_mmio_invalid_writel(uint32_t addr, uint32_t val) "addr 0x%x: 0x%x"
120
121# vmw_pvscsi.c
122pvscsi_ring_init_data(uint32_t txr_len_log2, uint32_t rxr_len_log2) "TX/RX rings logarithms set to %d/%d"
123pvscsi_ring_init_msg(uint32_t len_log2) "MSG ring logarithm set to %d"
124pvscsi_ring_flush_cmp(uint64_t filled_cmp_ptr) "new production counter of completion ring is 0x%"PRIx64
125pvscsi_ring_flush_msg(uint64_t filled_cmp_ptr) "new production counter of message ring is 0x%"PRIx64
126pvscsi_update_irq_level(bool raise, uint64_t mask, uint64_t status) "interrupt level set to %d (MASK: 0x%"PRIx64", STATUS: 0x%"PRIx64")"
127pvscsi_update_irq_msi(void) "sending MSI notification"
128pvscsi_cmp_ring_put(unsigned long addr) "got completion descriptor 0x%lx"
129pvscsi_msg_ring_put(unsigned long addr) "got message descriptor 0x%lx"
130pvscsi_complete_request(uint64_t context, uint64_t len, uint8_t sense_key) "completion: ctx: 0x%"PRIx64", len: 0x%"PRIx64", sense key: %u"
131pvscsi_get_sg_list(int nsg, size_t size) "get SG list: depth: %u, size: %zu"
132pvscsi_get_next_sg_elem(uint32_t flags) "unknown flags in SG element (val: 0x%x)"
133pvscsi_command_complete_not_found(uint32_t tag) "can't find request for tag 0x%x"
134pvscsi_command_complete_data_run(void) "not all data required for command transferred"
135pvscsi_command_complete_sense_len(int len) "sense information length is %d bytes"
136pvscsi_convert_sglist(uint64_t context, unsigned long addr, uint32_t resid) "element: ctx: 0x%"PRIx64" addr: 0x%lx, len: %ul"
137pvscsi_process_req_descr(uint8_t cmd, uint64_t ctx) "SCSI cmd 0x%x, ctx: 0x%"PRIx64
138pvscsi_process_req_descr_unknown_device(void) "command directed to unknown device rejected"
139pvscsi_process_req_descr_invalid_dir(void) "command with invalid transfer direction rejected"
140pvscsi_process_io(unsigned long addr) "got descriptor 0x%lx"
141pvscsi_on_cmd_noimpl(const char* cmd) "unimplemented command %s ignored"
142pvscsi_on_cmd_reset_dev(uint32_t tgt, int lun, void* dev) "PVSCSI_CMD_RESET_DEVICE[target %u lun %d (dev 0x%p)]"
143pvscsi_on_cmd_arrived(const char* cmd) "command %s arrived"
144pvscsi_on_cmd_abort(uint64_t ctx, uint32_t tgt) "command PVSCSI_CMD_ABORT_CMD for ctx 0x%"PRIx64", target %u"
145pvscsi_on_cmd_unknown(uint64_t cmd_id) "unknown command 0x%"PRIx64
146pvscsi_on_cmd_unknown_data(uint32_t data) "data for unknown command 0x:0x%x"
147pvscsi_io_write(const char* cmd, uint64_t val) "%s write: 0x%"PRIx64
148pvscsi_io_write_unknown(unsigned long addr, unsigned sz, uint64_t val) "unknown write address: 0x%lx size: %u bytes value: 0x%"PRIx64
149pvscsi_io_read(const char* cmd, uint64_t status) "%s read: 0x%"PRIx64
150pvscsi_io_read_unknown(unsigned long addr, unsigned sz) "unknown read address: 0x%lx size: %u bytes"
151pvscsi_init_msi_fail(int res) "failed to initialize MSI, error %d"
152pvscsi_state(const char* state) "starting %s ..."
153pvscsi_tx_rings_ppn(const char* label, uint64_t ppn) "%s page: 0x%"PRIx64
154pvscsi_tx_rings_num_pages(const char* label, uint32_t num) "Number of %s pages: %u"
155
156# esp.c
157esp_error_fifo_overrun(void) "FIFO overrun"
158esp_error_unhandled_command(uint32_t val) "unhandled command (0x%2.2x)"
159esp_error_invalid_write(uint32_t val, uint32_t addr) "invalid write of 0x%02x at [0x%x]"
160esp_raise_irq(void) "Raise IRQ"
161esp_lower_irq(void) "Lower IRQ"
162esp_dma_enable(void) "Raise enable"
163esp_dma_disable(void) "Lower enable"
164esp_get_cmd(uint32_t dmalen, int target) "len %d target %d"
165esp_do_busid_cmd(uint8_t busid) "busid 0x%x"
166esp_handle_satn_stop(uint32_t cmdlen) "cmdlen %d"
167esp_write_response(uint32_t status) "Transfer status (status=%d)"
168esp_do_dma(uint32_t cmdlen, uint32_t len) "command len %d + %d"
169esp_command_complete(void) "SCSI Command complete"
170esp_command_complete_deferred(void) "SCSI Command complete deferred"
171esp_command_complete_unexpected(void) "SCSI command completed unexpectedly"
172esp_command_complete_fail(void) "Command failed"
173esp_transfer_data(uint32_t dma_left, int32_t ti_size) "transfer %d/%d"
174esp_handle_ti(uint32_t minlen) "Transfer Information len %d"
175esp_handle_ti_cmd(uint32_t cmdlen) "command len %d"
176esp_mem_readb(uint32_t saddr, uint8_t reg) "reg[%d]: 0x%2.2x"
177esp_mem_writeb(uint32_t saddr, uint8_t reg, uint32_t val) "reg[%d]: 0x%2.2x -> 0x%2.2x"
178esp_mem_writeb_cmd_nop(uint32_t val) "NOP (0x%2.2x)"
179esp_mem_writeb_cmd_flush(uint32_t val) "Flush FIFO (0x%2.2x)"
180esp_mem_writeb_cmd_reset(uint32_t val) "Chip reset (0x%2.2x)"
181esp_mem_writeb_cmd_bus_reset(uint32_t val) "Bus reset (0x%2.2x)"
182esp_mem_writeb_cmd_iccs(uint32_t val) "Initiator Command Complete Sequence (0x%2.2x)"
183esp_mem_writeb_cmd_msgacc(uint32_t val) "Message Accepted (0x%2.2x)"
184esp_mem_writeb_cmd_pad(uint32_t val) "Transfer padding (0x%2.2x)"
185esp_mem_writeb_cmd_satn(uint32_t val) "Set ATN (0x%2.2x)"
186esp_mem_writeb_cmd_rstatn(uint32_t val) "Reset ATN (0x%2.2x)"
187esp_mem_writeb_cmd_sel(uint32_t val) "Select without ATN (0x%2.2x)"
188esp_mem_writeb_cmd_selatn(uint32_t val) "Select with ATN (0x%2.2x)"
189esp_mem_writeb_cmd_selatns(uint32_t val) "Select with ATN & stop (0x%2.2x)"
190esp_mem_writeb_cmd_ensel(uint32_t val) "Enable selection (0x%2.2x)"
191esp_mem_writeb_cmd_dissel(uint32_t val) "Disable selection (0x%2.2x)"
192
193# esp-pci.c
194esp_pci_error_invalid_dma_direction(void) "invalid DMA transfer direction"
195esp_pci_error_invalid_read(uint32_t reg) "read access outside bounds (reg 0x%x)"
196esp_pci_error_invalid_write(uint32_t reg) "write access outside bounds (reg 0x%x)"
197esp_pci_error_invalid_write_dma(uint32_t val, uint32_t addr) "invalid write of 0x%02x at [0x%x]"
198esp_pci_dma_read(uint32_t saddr, uint32_t reg) "reg[%d]: 0x%8.8x"
199esp_pci_dma_write(uint32_t saddr, uint32_t reg, uint32_t val) "reg[%d]: 0x%8.8x -> 0x%8.8x"
200esp_pci_dma_idle(uint32_t val) "IDLE (0x%.8x)"
201esp_pci_dma_blast(uint32_t val) "BLAST (0x%.8x)"
202esp_pci_dma_abort(uint32_t val) "ABORT (0x%.8x)"
203esp_pci_dma_start(uint32_t val) "START (0x%.8x)"
204esp_pci_sbac_read(uint32_t reg) "sbac: 0x%8.8x"
205esp_pci_sbac_write(uint32_t reg, uint32_t val) "sbac: 0x%8.8x -> 0x%8.8x"
206
207# spapr_vscsi.c
208spapr_vscsi_send_rsp(uint8_t status, int32_t res_in, int32_t res_out) "status: 0x%x, res_in: %"PRId32", res_out: %"PRId32
209spapr_vscsi_fetch_desc_no_data(void) "no data descriptor"
210spapr_vscsi_fetch_desc_direct(void) "direct segment"
211spapr_vscsi_fetch_desc_indirect(uint32_t qtag, unsigned desc, unsigned local_desc) "indirect segment local tag=0x%"PRIx32" desc#%u/%u"
212spapr_vscsi_fetch_desc_out_of_range(unsigned desc, unsigned desc_offset) "#%u is ouf of range (%u bytes)"
213spapr_vscsi_fetch_desc_dma_read_error(int rc) "spapr_vio_dma_read -> %d reading ext_desc"
214spapr_vscsi_fetch_desc_indirect_seg_ext(uint32_t qtag, unsigned n, unsigned desc, uint64_t va, uint32_t len) "indirect segment ext. tag=0x%"PRIx32" desc#%u/%u { va=0x%"PRIx64" len=0x%"PRIx32" }"
215spapr_vscsi_fetch_desc_out_of_desc(void) "Out of descriptors !"
216spapr_vscsi_fetch_desc_out_of_desc_boundary(unsigned offset, unsigned desc, uint32_t len) "   offset=0x%x is out of a descriptor #%u boundary=0x%"PRIx32
217spapr_vscsi_fetch_desc_done(unsigned desc_num, unsigned desc_offset, uint64_t va, uint32_t len) "   cur=%u offs=0x%x ret { va=0x%"PRIx64" len=0x%"PRIx32" }"
218spapr_vscsi_srp_indirect_data(uint32_t len) "indirect segment 0x%"PRIx32" bytes"
219spapr_vscsi_srp_indirect_data_rw(int writing, int rc) "spapr_vio_dma_r/w(%d) -> %d"
220spapr_vscsi_srp_indirect_data_buf(unsigned a, unsigned b, unsigned c, unsigned d) "     data: %02x %02x %02x %02x..."
221spapr_vscsi_srp_transfer_data(uint32_t len) "no data desc transfer, skipping 0x%"PRIx32" bytes"
222spapr_vscsi_transfer_data(uint32_t tag, uint32_t len, void *req) "SCSI xfer complete tag=0x%"PRIx32" len=0x%"PRIx32", req=%p"
223spapr_vscsi_command_complete(uint32_t tag, uint32_t status, void *req) "SCSI cmd complete, tag=0x%"PRIx32" status=0x%"PRIx32", req=%p"
224spapr_vscsi_command_complete_sense_data1(uint32_t len, unsigned s0, unsigned s1, unsigned s2, unsigned s3, unsigned s4, unsigned s5, unsigned s6, unsigned s7) "Sense data, %d bytes: %02x %02x %02x %02x %02x %02x %02x %02x"
225spapr_vscsi_command_complete_sense_data2(unsigned s8, unsigned s9, unsigned s10, unsigned s11, unsigned s12, unsigned s13, unsigned s14, unsigned s15)         "                      %02x %02x %02x %02x %02x %02x %02x %02x"
226spapr_vscsi_command_complete_status(uint32_t status) "Command complete err=%"PRIu32
227spapr_vscsi_save_request(uint32_t qtag, unsigned desc, unsigned offset) "saving tag=%"PRIu32", current desc#%u, offset=0x%x"
228spapr_vscsi_load_request(uint32_t qtag, unsigned desc, unsigned offset) "restoring tag=%"PRIu32", current desc#%u, offset=0x%x"
229spapr_vscsi_process_login(void) "Got login, sending response !"
230spapr_vscsi_queue_cmd_no_drive(uint64_t lun) "Command for lun 0x%08" PRIx64 " with no drive"
231spapr_vscsi_queue_cmd(uint32_t qtag, unsigned cdb, const char *cmd, int lun, int ret) "Queued command tag 0x%"PRIx32" CMD 0x%x=%s LUN %d ret: %d"
232spapr_vscsi_do_crq(unsigned c0, unsigned c1) "crq: %02x %02x ..."
233
234# lsi53c895a.c
235lsi_reset(void) "Reset"
236lsi_update_irq(int level, uint8_t dstat, uint8_t sist1, uint8_t sist0) "Update IRQ level %d dstat 0x%02x sist 0x%02x0x%02x"
237lsi_update_irq_disconnected(void) "Handled IRQs & disconnected, looking for pending processes"
238lsi_script_scsi_interrupt(uint8_t stat1, uint8_t stat0, uint8_t sist1, uint8_t sist0) "SCSI Interrupt 0x%02x0x%02x prev 0x%02x0x%02x"
239lsi_script_dma_interrupt(uint8_t stat, uint8_t dstat) "DMA Interrupt 0x%x prev 0x%x"
240lsi_bad_phase_jump(uint32_t dsp) "Data phase mismatch jump to 0x%"PRIX32
241lsi_bad_phase_interrupt(void) "Phase mismatch interrupt"
242lsi_bad_selection(uint32_t id) "Selected absent target %"PRIu32
243lsi_do_dma_unavailable(void) "DMA no data available"
244lsi_do_dma(uint64_t addr, int len) "DMA addr=0x%"PRIx64" len=%d"
245lsi_queue_command(uint32_t tag) "Queueing tag=0x%"PRId32
246lsi_add_msg_byte_error(void) "MSG IN data too long"
247lsi_add_msg_byte(uint8_t data) "MSG IN 0x%02x"
248lsi_reselect(int id) "Reselected target %d"
249lsi_queue_req_error(void *p) "Multiple IO pending for request %p"
250lsi_queue_req(uint32_t tag) "Queueing IO tag=0x%"PRIx32
251lsi_command_complete(uint32_t status) "Command complete status=%"PRId32
252lsi_transfer_data(uint32_t tag, uint32_t len) "Data ready tag=0x%"PRIx32" len=%"PRId32
253lsi_do_command(uint32_t dbc) "Send command len=%"PRId32
254lsi_do_status(uint32_t dbc, uint8_t status) "Get status len=%"PRId32" status=%d"
255lsi_do_status_error(void) "Bad Status move"
256lsi_do_msgin(uint32_t dbc, int len) "Message in len=%"PRId32" %d"
257lsi_do_msgout(uint32_t dbc) "MSG out len=%"PRId32
258lsi_do_msgout_disconnect(void) "MSG: Disconnect"
259lsi_do_msgout_noop(void) "MSG: No Operation"
260lsi_do_msgout_extended(uint8_t msg, uint8_t len) "Extended message 0x%x (len %d)"
261lsi_do_msgout_ignored(const char *msg) "%s (ignored)"
262lsi_do_msgout_simplequeue(uint8_t select_tag) "SIMPLE queue tag=0x%x"
263lsi_do_msgout_abort(uint32_t tag) "MSG: ABORT TAG tag=0x%"PRId32
264lsi_do_msgout_clearqueue(uint32_t tag) "MSG: CLEAR QUEUE tag=0x%"PRIx32
265lsi_do_msgout_busdevicereset(uint32_t tag) "MSG: BUS DEVICE RESET tag=0x%"PRIx32
266lsi_do_msgout_select(int id) "Select LUN %d"
267lsi_memcpy(uint32_t dest, uint32_t src, int count) "memcpy dest 0x%"PRIx32" src 0x%"PRIx32" count %d"
268lsi_wait_reselect(void) "Wait Reselect"
269lsi_execute_script(uint32_t dsp, uint32_t insn, uint32_t addr) "SCRIPTS dsp=0x%"PRIx32" opcode 0x%"PRIx32" arg 0x%"PRIx32
270lsi_execute_script_blockmove_delayed(void) "Delayed select timeout"
271lsi_execute_script_blockmove_badphase(const char *phase, const char *expected) "Wrong phase got %s expected %s"
272lsi_execute_script_io_alreadyreselected(void) "Already reselected, jumping to alternative address"
273lsi_execute_script_io_selected(uint8_t id, const char *atn) "Selected target %d%s"
274lsi_execute_script_io_disconnect(void) "Wait Disconnect"
275lsi_execute_script_io_set(const char *atn, const char *ack, const char *tm, const char *cc) "Set%s%s%s%s"
276lsi_execute_script_io_clear(const char *atn, const char *ack, const char *tm, const char *cc) "Clear%s%s%s%s"
277lsi_execute_script_io_opcode(const char *opcode, int reg, const char *opname, uint8_t data8, uint32_t sfbr, const char *ssfbr) "%s reg 0x%x %s data8=0x%02x sfbr=0x%02x%s"
278lsi_execute_script_tc_nop(void) "NOP"
279lsi_execute_script_tc_delayedselect_timeout(void) "Delayed select timeout"
280lsi_execute_script_tc_compc(int result) "Compare carry %d"
281lsi_execute_script_tc_compp(const char *phase, char op, const char *insn_phase) "Compare phase %s %c= %s"
282lsi_execute_script_tc_compd(uint32_t sfbr, uint8_t mask, char op, int result) "Compare data 0x%"PRIx32" & 0x%x %c= 0x%x"
283lsi_execute_script_tc_jump(uint32_t addr) "Jump to 0x%"PRIx32
284lsi_execute_script_tc_call(uint32_t addr) "Call 0x%"PRIx32
285lsi_execute_script_tc_return(uint32_t addr) "Return to 0x%"PRIx32
286lsi_execute_script_tc_interrupt(uint32_t addr) "Interrupt 0x%"PRIx32
287lsi_execute_script_tc_illegal(void) "Illegal transfer control"
288lsi_execute_script_tc_cc_failed(void) "Control condition failed"
289lsi_execute_script_mm_load(int reg, int n, uint32_t addr, int data) "Load reg 0x%x size %d addr 0x%"PRIx32" = 0x%08x"
290lsi_execute_script_mm_store(int reg, int n, uint32_t addr) "Store reg 0x%x size %d addr 0x%"PRIx32
291lsi_execute_script_stop(void) "SCRIPTS execution stopped"
292lsi_awoken(void) "Woken by SIGP"
293lsi_reg_read(const char *name, int offset, uint8_t ret) "Read reg %s 0x%x = 0x%02x"
294lsi_reg_write(const char *name, int offset, uint8_t val) "Write reg %s 0x%x = 0x%02x"
295
296# scsi-disk.c
297scsi_disk_check_condition(uint32_t tag, uint8_t key, uint8_t asc, uint8_t ascq) "Command complete tag=0x%x sense=%d/%d/%d"
298scsi_disk_read_complete(uint32_t tag, size_t size) "Data ready tag=0x%x len=%zd"
299scsi_disk_read_data_count(uint32_t sector_count) "Read sector_count=%d"
300scsi_disk_read_data_invalid(void) "Data transfer direction invalid"
301scsi_disk_write_complete_noio(uint32_t tag, size_t size) "Write complete tag=0x%x more=%zd"
302scsi_disk_write_data_invalid(void) "Data transfer direction invalid"
303scsi_disk_emulate_vpd_page_00(size_t xfer) "Inquiry EVPD[Supported pages] buffer size %zd"
304scsi_disk_emulate_vpd_page_80_not_supported(void) "Inquiry (EVPD[Serial number] not supported"
305scsi_disk_emulate_vpd_page_80(size_t xfer) "Inquiry EVPD[Serial number] buffer size %zd"
306scsi_disk_emulate_vpd_page_83(size_t xfer) "Inquiry EVPD[Device identification] buffer size %zd"
307scsi_disk_emulate_vpd_page_b0_not_supported(void) "Inquiry (EVPD[Block limits] not supported for CDROM"
308scsi_disk_emulate_mode_sense(int cmd, int page, size_t xfer, int control) "Mode Sense(%d) (page %d, xfer %zd, page_control %d)"
309scsi_disk_emulate_read_toc(int start_track, int format, int msf) "Read TOC (track %d format %d msf %d)"
310scsi_disk_emulate_read_data(int buflen) "Read buf_len=%d"
311scsi_disk_emulate_write_data(int buflen) "Write buf_len=%d"
312scsi_disk_emulate_command_SAI_16(void) "SAI READ CAPACITY(16)"
313scsi_disk_emulate_command_SAI_unsupported(void) "Unsupported Service Action In"
314scsi_disk_emulate_command_SEEK_10(uint64_t lba) "Seek(10) (sector %" PRId64 ")"
315scsi_disk_emulate_command_MODE_SELECT(size_t xfer) "Mode Select(6) (len %zd)"
316scsi_disk_emulate_command_MODE_SELECT_10(size_t xfer) "Mode Select(10) (len %zd)"
317scsi_disk_emulate_command_UNMAP(size_t xfer) "Unmap (len %zd)"
318scsi_disk_emulate_command_VERIFY(int bytchk) "Verify (bytchk %d)"
319scsi_disk_emulate_command_WRITE_SAME(int cmd, size_t xfer) "WRITE SAME %d (len %zd)"
320scsi_disk_emulate_command_UNKNOWN(int cmd, const char *name) "Unknown SCSI command (0x%2.2x=%s)"
321scsi_disk_dma_command_READ(uint64_t lba, uint32_t len) "Read (sector %" PRId64 ", count %u)"
322scsi_disk_dma_command_WRITE(const char *cmd, uint64_t lba, int len) "Write %s(sector %" PRId64 ", count %u)"
323scsi_disk_new_request(uint32_t lun, uint32_t tag, const char *line) "Command: lun=%d tag=0x%x data=%s"
324
325# scsi-generic.c
326scsi_generic_command_complete_noio(void *req, uint32_t tag, int statuc) "Command complete %p tag=0x%x status=%d"
327scsi_generic_read_complete(uint32_t tag, int len) "Data ready tag=0x%x len=%d"
328scsi_generic_read_data(uint32_t tag) "scsi_read_data tag=0x%x"
329scsi_generic_write_complete(int ret) "scsi_write_complete() ret = %d"
330scsi_generic_write_complete_blocksize(int blocksize) "block size %d"
331scsi_generic_write_data(uint32_t tag) "scsi_write_data tag=0x%x"
332scsi_generic_send_command(const char *line) "Command: data=%s"
333scsi_generic_realize_type(int type) "device type %d"
334scsi_generic_realize_blocksize(int blocksize) "block size %d"
335