The GET_EVENT_STATUS_NOTIFICATION ATAPI command is listed as a
mandatory command in the spec but we don't really implement it any of
its sub-commands.
The commit message for the last commit explains why implementing just
the media subcommand is helpful and how it goes a long way in getting
guests to behave as expected.
The difference from the RFC series sent earlier is:
- Split into more patches
- Add tray open/close notification (from Markus)
There certainly is much more work to be done for the other commands
and also for state change handling (tray open / close / new media)
overall for the block layer, but this is a good first step in being
spec-compliant and at the same time making guests work.
v2:
- Update comments
- Use struct instead of enum for cdb packet
- Add a new subsection to vmstate for new fields for save/restore
v1:
- Split into more patches
- Add tray open/close notification (from Markus)
RFC:
- Orig. series
Amit Shah (6):
atapi: Allow GET_EVENT_STATUS_NOTIFICATION after media change
atapi: Move GET_EVENT_STATUS_NOTIFICATION command handling to its own
function
atapi: GESN: Spin off No Event Available handling into own function
atapi: GESN: Use structs for commonly-used field types
atapi: GESN: implement 'media' subcommand
atapi: Save / load the new GESN event states during migration
hw/ide/core.c | 186 +++++++++++++++++++++++++++++++++++++++++++++++------
hw/ide/internal.h | 6 ++
2 files changed, 173 insertions(+), 19 deletions(-)
--
1.7.4.2