mav added a comment.
In https://reviews.freebsd.org/D5473#117346, @iateaca wrote:
> The motivation is to run older versions of operating systems such as
FreeBSD 4 which does not have AHCI drivers.
> What do you mean by code duplication ? I think only the ATAPI CDROM logic
could be common but the current implementation from AHCI can not be used with
the ATA data strcutures. If we want to achive this, I think a redesign of AHCI
ATAPI is required too.
I personally see quite little sense in supporting so old legacy guests. I
agree that there can be "some cases", but I am not sure they worth the time
spent and code size growth. Other then legacy guests support this code does
not give us anything useful -- legacy ATA will be by definition much slower and
less functional then its AHCI counterpart. It will require dozens of emulated
register accesses per I/O, comparing to only several for AHCI, and won't
support command queuing.
Though obviously nice and clean unified implementation would look better. In
your patch you are one more time reimplementing some subsets of ATA and ATAPI
commands handling, already done much wider for AHCI. It would be much better to
have single device emulation code, interfacing with different controller code
parts. But it would also take much more time (you are rigth that it would
require existing code redesign), for the same little reason, so I am not sure
how good is that idea. It needs investigation.
To: iateaca, grehan, neel, tychon, mav
email@example.com mailing list
To unsubscribe, send any mail to