diff options
author | Kevin O'Connor <kevin@koconnor.net> | 2014-12-29 09:45:15 -0500 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2014-12-29 09:45:15 -0500 |
commit | f0a22eb69ba62f937e5fb236d1a8ad9291ff81d6 (patch) | |
tree | 17a8f3f6cfa7117db44891423f09b2094f2f15d1 /src/hw | |
parent | feeb1c240a7ba7e064076cf533b35d4a4288e903 (diff) | |
download | seabios-f0a22eb69ba62f937e5fb236d1a8ad9291ff81d6.zip seabios-f0a22eb69ba62f937e5fb236d1a8ad9291ff81d6.tar.gz seabios-f0a22eb69ba62f937e5fb236d1a8ad9291ff81d6.tar.bz2 |
scsi: Move process_scsi_op() to hw/blockcmd.c and rename
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'src/hw')
-rw-r--r-- | src/hw/blockcmd.c | 19 | ||||
-rw-r--r-- | src/hw/blockcmd.h | 1 |
2 files changed, 20 insertions, 0 deletions
diff --git a/src/hw/blockcmd.c b/src/hw/blockcmd.c index bbcc08f..ad8814c 100644 --- a/src/hw/blockcmd.c +++ b/src/hw/blockcmd.c @@ -165,6 +165,25 @@ cdb_write(struct disk_op_s *op) * Main SCSI commands ****************************************************************/ +int VISIBLE32FLAT +scsi_process_op(struct disk_op_s *op) +{ + switch (op->command) { + case CMD_READ: + return cdb_read(op); + case CMD_WRITE: + return cdb_write(op); + case CMD_FORMAT: + case CMD_RESET: + case CMD_ISREADY: + case CMD_VERIFY: + case CMD_SEEK: + return DISK_RET_SUCCESS; + default: + return DISK_RET_EPARAM; + } +} + int scsi_is_ready(struct disk_op_s *op) { diff --git a/src/hw/blockcmd.h b/src/hw/blockcmd.h index 8bacfcf..429b669 100644 --- a/src/hw/blockcmd.h +++ b/src/hw/blockcmd.h @@ -111,6 +111,7 @@ int cdb_inquiry(struct disk_op_s *op, struct cdbres_inquiry *data); int cdb_read(struct disk_op_s *op); int cdb_write(struct disk_op_s *op); +int scsi_process_op(struct disk_op_s *op); int scsi_is_ready(struct disk_op_s *op); struct drive_s; int scsi_drive_setup(struct drive_s *drive, const char *s, int prio); |