Commit Graph

22 Commits

Author SHA1 Message Date
Uwe Seimet
b3862c4726
Disk ID handling improvements (#149)
* Replaced DWORD ID by string

* Signature update

* Removed unused code

* Added getters for all device types

* Renaming

* Removed unused code

* Renaming

* Updated more ID checks

* Removed unused code

* Use IsSCSI()
2021-07-23 19:41:55 -05:00
uweseimet
3c5a0003a4
Feature baremetal removal (#140)
* Removed all BAREMETAL ifdefs

* Cleaned up subfolders

* Fixed regression

* Re-added underscores

* Fixed merge conflicts

* Assume RASCSI is always defined

* Fixed mege issue

* Re-added result message

* Fix typo

Co-authored-by: akuker <34318535+akuker@users.noreply.github.com>
2021-07-20 08:32:44 -05:00
uweseimet
fef21a6cf5
Support for providing sense data for REQUEST SENSE (#120)
* Error() supports passing Sense Key and ASC, REQUEST SENSE returns these data

* Synchronized error handlign with sasidev_ctrl

* Added warning for missing sense key

* Logging and comment update

* Updated invalid LUN handling

* Updated REQUEST SENSE

* Revert "Updated REQUEST SENSE"

This reverts commit 61a1ecbca7.

* Report MEDIUM NOT PRESENT if capacity cannot be determined

* Updated handling of non-existing LUNs. This change results issue #124.

* Log a warning if drive capacity cannot be determined

* Added enums for sense keys and ASCs

* Updated Error() signature to use enums

* Fixed compiler warnings

* Merge with develop branch
2021-07-15 19:49:54 -05:00
uweseimet
910d3af525
Changed scsi_command enum base type so that the dispatcher can use enum again (#128) 2021-07-09 11:37:46 -05:00
uweseimet
6d1f661ab8
Removed useless assertions (#125)
* Removed useless assertions

* Finalized removal

* Pointer was passed instead of integer value

* Fixed data type issue on 64 bit compile platforms

* Added missing virtual destructor (gcc warning)
2021-07-08 11:40:31 -05:00
uweseimet
da3629510d
Removed meaningless assertions, minor code locality cleanup (#122)
* Removed meaningless assertions, locality of code cleanup

* More assertion and code locality cleanup

* Added TODO

* More assertion and code locality cleanup

* Added missing initializations in constructors

* Added FIXMEs

* Revert "Added FIXMEs"

This reverts commit 2c83626862.
2021-07-07 16:46:45 -05:00
uweseimet
9898cb1a13
SCSI command dispatcher update, reduction of circular dependencies (#117)
* Unified command handling of SCSI command dispatcher

* Added missing cast

* Updated casts

* Comment update

* Moved enums to base class to reduce circular dependencies

* Added EXTRA_FLAGS to Makefile and fixed typo (#118)

* scsidev_ctrl inherited from sasidev without any need

* Reverted last change ...

* Removed unused include

* Added missing field initialization in constructor

* Formatting update

* Fixed command names used for logging

* Replaced SCSI command dispatch switch

* Source code formatting update

* Renaming

* Renaming

* Renaming

* Renaming

* For SCSI (scsidev_ctrl) the scsi_command enum is not relevant anymore

* Always log status code in status phase

* Log additional sense code (ASC)
2021-07-04 19:50:24 -05:00
uweseimet
e2409098dd
Added EXTRA_FLAGS to Makefile and fixed typo (#118) 2021-06-26 22:26:04 -05:00
uweseimet
86aeeb0a31
Segmentation fault fix for missing unit 0 (#115)
* Removed unused code, added some translations

* Fixed segmentation fault when there is no unit 0

* Removed unrelated changes
2021-06-23 12:16:27 -05:00
uweseimet
51210a7002
Use exception for unsupported LUN handling, reduces duplicate code (#111)
* Use exception for unsupported LUN handling in order to reduce duplicate code

* Code improvements based on review

* Added header
2021-06-22 19:05:47 -05:00
Tony Kuker
4a72d2ecea Updates for pull request comments 2021-05-23 14:44:34 -05:00
Tony Kuker
61c7644250 Merge branch 'develop' into daynaport3 2021-04-05 16:11:54 -05:00
Tony Kuker
a05c7f34d4 Added short delay after the DaynaPort reports its metadeta during a READ operation 2021-04-05 14:17:05 -05:00
Quentin Smith
5f7a0a0d86 Fix CD support on DaynaPort branch
The CD device relies on SASIDEV.buf being at least 0x800 long.
2021-03-18 03:36:08 +00:00
PhrAx
1fb0269645
Update controllers
Includes comment alignment, and added RESERVE(6), RESERVE(10), RELEASE(6) and RELEASE(10) for SCSI, along with RESERVE(16) and RELEASE(17) for SASI.
2021-03-07 17:11:17 -08:00
Tony Kuker
99538d8225 Merged latest develop branch with the daynaport functionality 2021-02-07 13:00:48 -06:00
akuker
852f4f11fd
Revert "Add Daynaport SCSI/Link Functionality" (#78) 2021-02-02 19:55:38 -06:00
Tony Kuker
bc561d65dd Changed system call to use fork/wait. Moved some disk functions out of the header 2021-01-30 12:36:18 -06:00
Tony Kuker
788b2a3b46 Added DaynaPort SCSI/Link emulation functionality 2021-01-27 15:16:52 -06:00
akuker
96673a44b0
Updated to match new versioning structure (#73)
* Updated to match new versioning structure

* fix version number

Co-authored-by: Tony Kuker <akuker@gmail.com>
2021-01-25 10:07:30 -06:00
akuker
1118c344cc
Issue #7 - implement a scsi monitor function for RaSCSI to log SCSI traffic (#46)
* #7 Re-merge scsimon functionality with latest master. The old scsimon branch was waaaaay too out of date

* #7 Re-merge scsimon functionality with latest master. The old scsimon branch was waaaaay too out of date

* Added libspdlog-dev as a required package

* Cleanup from master re-base

* Updated to use GCC version 8, to match the raspberry pi

Co-authored-by: akuker <akuker@gmail.com>
2020-10-19 07:31:06 -05:00
akuker
5def9e3dfe
Break up disk.h and disk.cpp to be smaller files (#22) 2020-08-28 09:18:02 -05:00