Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 27 Jun 2009 20:22:04 +0300
From:      Alexander Motin <mav@FreeBSD.org>
To:        gary.jennejohn@freenet.de
Cc:        FreeBSD-Current <freebsd-current@freebsd.org>
Subject:   Re: RFC: ATA to CAM integration patch
Message-ID:  <4A46553C.4000504@FreeBSD.org>
In-Reply-To: <20090627164406.155f002d@ernst.jennejohn.org>
References:  <4A4517BE.9040504@FreeBSD.org> <20090627164406.155f002d@ernst.jennejohn.org>

next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
--------------050304090601030407060503
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit

Gary Jennejohn wrote:
>     - remove atapicam from you kernel config file, otherwise the kernel
>       pancis in xpt (at least, mine did)

Thank you for report. Problem is that atapicam provides fake emulated 
SPI transport, but not a native ATA in terms of updated CAM. Small 
attached patch fixes this for me:

# camcontrol devlist
<OCZ-VERTEX 1.30>                  at scbus0 target 0 lun 0 (pass0,ada0)
<Slimtype DVD A  DS8A1P CA11>      at scbus3 target 0 lun 0 (cd0,pass1)

-- 
Alexander Motin

--------------050304090601030407060503
Content-Type: text/plain;
 name="atapicam.port.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="atapicam.port.patch"

--- /usr/src/sys/dev/ata/atapi-cam.c.prev	2009-05-26 09:28:25.000000000 +0300
+++ atapi-cam.c	2009-06-27 20:04:17.000000000 +0300
@@ -376,7 +376,7 @@ atapi_action(struct cam_sim *sim, union 
 	cpi->unit_number = cam_sim_unit(sim);
 	cpi->bus_id = cam_sim_bus(sim);
 	cpi->base_transfer_speed = 3300;
-	cpi->transport = XPORT_ATA;
+	cpi->transport = XPORT_SPI;
 	cpi->transport_version = 2;
 	cpi->protocol = PROTO_SCSI;
 	cpi->protocol_version = SCSI_REV_2;
@@ -456,7 +456,7 @@ atapi_action(struct cam_sim *sim, union 
 	struct ccb_trans_settings *cts = &ccb->cts;
 	cts->protocol = PROTO_SCSI;
 	cts->protocol_version = SCSI_REV_2;
-	cts->transport = XPORT_ATA;
+	cts->transport = XPORT_SPI;
 	cts->transport_version = XPORT_VERSION_UNSPECIFIED;
     	cts->proto_specific.valid = 0;
     	cts->xport_specific.valid = 0;

--------------050304090601030407060503--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4A46553C.4000504>