Alexander Motin 16614d3518 Supply SAT layer with valid transfer sizes.
This is a rework of r344701, that noticed that number of bytes passes to
8 bit sector count field gets truncated.  First decision was to not pass
anything, since ATA specs define the field as N/A.  But it appeared to be a
problem for some SAT devices, that require information about data transfer
to operate properly.  Some additional investigation shown that it is quite
a common practice to set unused fields of ATA commands (fortunately ATA
specs formally allow it) to supply the information to SAT layer.  I have
found SAS-SATA interposer that does not allow pass-through without it.

As side effect, reduce code duplication by removing ata_do_28bit_cmd()
function, replacing it with more universal ata_do_cmd().

MFC after:	1 week
Sponsored by:	iXsystems, Inc.
2019-09-07 15:56:00 +00:00
..
2019-08-13 20:06:55 +00:00
2019-02-04 21:28:25 +00:00
2019-05-23 20:12:24 +00:00
2019-08-13 20:06:55 +00:00
2019-03-08 10:03:16 +00:00
2019-08-05 00:08:25 +00:00
2019-08-08 20:56:52 +00:00
2019-07-31 16:07:16 +00:00
2019-08-27 15:34:37 +00:00
2019-01-05 16:05:39 +00:00
2019-08-13 20:06:55 +00:00
2019-06-25 04:50:09 +00:00