Revision c5bf71a9 hw/scsi.h
b/hw/scsi.h | ||
---|---|---|
43 | 43 |
} cmd; |
44 | 44 |
BlockDriverAIOCB *aiocb; |
45 | 45 |
bool enqueued; |
46 |
void *hba_private; |
|
46 | 47 |
QTAILQ_ENTRY(SCSIRequest) next; |
47 | 48 |
}; |
48 | 49 |
|
... | ... | |
67 | 68 |
DeviceInfo qdev; |
68 | 69 |
scsi_qdev_initfn init; |
69 | 70 |
void (*destroy)(SCSIDevice *s); |
70 |
SCSIRequest *(*alloc_req)(SCSIDevice *s, uint32_t tag, uint32_t lun); |
|
71 |
SCSIRequest *(*alloc_req)(SCSIDevice *s, uint32_t tag, uint32_t lun, |
|
72 |
void *hba_private); |
|
71 | 73 |
void (*free_req)(SCSIRequest *req); |
72 | 74 |
int32_t (*send_command)(SCSIRequest *req, uint8_t *buf); |
73 | 75 |
void (*read_data)(SCSIRequest *req); |
... | ... | |
138 | 140 |
int scsi_build_sense(SCSISense sense, uint8_t *buf, int len, int fixed); |
139 | 141 |
int scsi_sense_valid(SCSISense sense); |
140 | 142 |
|
141 |
SCSIRequest *scsi_req_alloc(size_t size, SCSIDevice *d, uint32_t tag, uint32_t lun); |
|
142 |
SCSIRequest *scsi_req_new(SCSIDevice *d, uint32_t tag, uint32_t lun); |
|
143 |
SCSIRequest *scsi_req_alloc(size_t size, SCSIDevice *d, uint32_t tag, |
|
144 |
uint32_t lun, void *hba_private); |
|
145 |
SCSIRequest *scsi_req_new(SCSIDevice *d, uint32_t tag, uint32_t lun, |
|
146 |
void *hba_private); |
|
143 | 147 |
int32_t scsi_req_enqueue(SCSIRequest *req, uint8_t *buf); |
144 | 148 |
void scsi_req_free(SCSIRequest *req); |
145 | 149 |
SCSIRequest *scsi_req_ref(SCSIRequest *req); |
Also available in: Unified diff