aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/siis/siis.c
diff options
context:
space:
mode:
authorAlexander Motin <mav@FreeBSD.org>2012-06-06 06:52:51 +0000
committerAlexander Motin <mav@FreeBSD.org>2012-06-06 06:52:51 +0000
commitbc1bf6e84298e9a3d7c790ac99fbf9810f8bdfd6 (patch)
tree4a291a92409c3b2f5d1945f6fcc0dde4efa2df88 /sys/dev/siis/siis.c
parent73a4b7a9d8e79124c48c08143ca67d4fa88b5700 (diff)
downloadsrc-bc1bf6e84298e9a3d7c790ac99fbf9810f8bdfd6.tar.gz
src-bc1bf6e84298e9a3d7c790ac99fbf9810f8bdfd6.zip
ATA/SATA controllers have no idea about protocol of the connected device
until transport will do some probe actions (at least soft reset). Make ATA/SATA SIMs to not report bogus and confusing PROTO_ATA protocol. Make ATA/SATA transport to fill that gap by reporting protocol to SIM with XPT_SET_TRAN_SETTINGS and patching XPT_GET_TRAN_SETTINGS results if needed.
Notes
Notes: svn path=/head/; revision=236666
Diffstat (limited to 'sys/dev/siis/siis.c')
-rw-r--r--sys/dev/siis/siis.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/siis/siis.c b/sys/dev/siis/siis.c
index 2b709cd9693d..caf493a9bd08 100644
--- a/sys/dev/siis/siis.c
+++ b/sys/dev/siis/siis.c
@@ -1884,7 +1884,7 @@ siisaction(struct cam_sim *sim, union ccb *ccb)
d = &ch->curr[ccb->ccb_h.target_id];
else
d = &ch->user[ccb->ccb_h.target_id];
- cts->protocol = PROTO_ATA;
+ cts->protocol = PROTO_UNSPECIFIED;
cts->protocol_version = PROTO_VERSION_UNSPECIFIED;
cts->transport = XPORT_SATA;
cts->transport_version = XPORT_VERSION_UNSPECIFIED;
@@ -1960,7 +1960,7 @@ siisaction(struct cam_sim *sim, union ccb *ccb)
cpi->unit_number = cam_sim_unit(sim);
cpi->transport = XPORT_SATA;
cpi->transport_version = XPORT_VERSION_UNSPECIFIED;
- cpi->protocol = PROTO_ATA;
+ cpi->protocol = PROTO_UNSPECIFIED;
cpi->protocol_version = PROTO_VERSION_UNSPECIFIED;
cpi->maxio = MAXPHYS;
cpi->hba_vendor = pci_get_vendor(parent);