scic_sds_stp_request.c (231136) | scic_sds_stp_request.c (231137) |
---|---|
1/*- 2 * This file is provided under a dual BSD/GPLv2 license. When using or 3 * redistributing this file, you may do so under either license. 4 * 5 * GPL LICENSE SUMMARY 6 * 7 * Copyright(c) 2008 - 2011 Intel Corporation. All rights reserved. 8 * --- 37 unchanged lines hidden (view full) --- 46 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 47 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 48 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 49 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 50 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 51 */ 52 53#include <sys/cdefs.h> | 1/*- 2 * This file is provided under a dual BSD/GPLv2 license. When using or 3 * redistributing this file, you may do so under either license. 4 * 5 * GPL LICENSE SUMMARY 6 * 7 * Copyright(c) 2008 - 2011 Intel Corporation. All rights reserved. 8 * --- 37 unchanged lines hidden (view full) --- 46 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 47 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 48 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 49 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 50 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 51 */ 52 53#include <sys/cdefs.h> |
54__FBSDID("$FreeBSD: head/sys/dev/isci/scil/scic_sds_stp_request.c 231136 2012-02-07 17:43:58Z jimharris $"); | 54__FBSDID("$FreeBSD: head/sys/dev/isci/scil/scic_sds_stp_request.c 231137 2012-02-07 17:45:11Z jimharris $"); |
55 56#include <dev/isci/scil/intel_sat.h> 57#include <dev/isci/scil/intel_sata.h> 58#include <dev/isci/scil/sci_types.h> 59#include <dev/isci/scil/scic_remote_device.h> 60#include <dev/isci/scil/scic_user_callback.h> 61#include <dev/isci/scil/scic_sds_controller.h> 62#include <dev/isci/scil/scic_sds_remote_device.h> --- 1056 unchanged lines hidden (view full) --- 1119 { 1120 if (this_sds_stp_request->type.pio.pio_transfer_bytes >= remaining_bytes_in_current_sgl ) 1121 { 1122 //recycle the TC and send the H2D Data FIS from (current sgl + sgl_offset) and length = remaining_bytes_in_current_sgl 1123 status = scic_sds_stp_request_pio_data_out_trasmit_data_frame (this_sds_request, remaining_bytes_in_current_sgl); 1124 if (status == SCI_SUCCESS) 1125 { 1126 this_sds_stp_request->type.pio.pio_transfer_bytes -= remaining_bytes_in_current_sgl; | 55 56#include <dev/isci/scil/intel_sat.h> 57#include <dev/isci/scil/intel_sata.h> 58#include <dev/isci/scil/sci_types.h> 59#include <dev/isci/scil/scic_remote_device.h> 60#include <dev/isci/scil/scic_user_callback.h> 61#include <dev/isci/scil/scic_sds_controller.h> 62#include <dev/isci/scil/scic_sds_remote_device.h> --- 1056 unchanged lines hidden (view full) --- 1119 { 1120 if (this_sds_stp_request->type.pio.pio_transfer_bytes >= remaining_bytes_in_current_sgl ) 1121 { 1122 //recycle the TC and send the H2D Data FIS from (current sgl + sgl_offset) and length = remaining_bytes_in_current_sgl 1123 status = scic_sds_stp_request_pio_data_out_trasmit_data_frame (this_sds_request, remaining_bytes_in_current_sgl); 1124 if (status == SCI_SUCCESS) 1125 { 1126 this_sds_stp_request->type.pio.pio_transfer_bytes -= remaining_bytes_in_current_sgl; |
1127 1128 //update the current sgl, sgl_offset and save for future 1129 current_sgl = scic_sds_stp_request_pio_get_next_sgl(this_sds_stp_request); | |
1130 sgl_offset = 0; 1131 } 1132 } 1133 else if (this_sds_stp_request->type.pio.pio_transfer_bytes < remaining_bytes_in_current_sgl ) 1134 { 1135 //recycle the TC and send the H2D Data FIS from (current sgl + sgl_offset) and length = type.pio.pio_transfer_bytes 1136 scic_sds_stp_request_pio_data_out_trasmit_data_frame (this_sds_request, this_sds_stp_request->type.pio.pio_transfer_bytes); 1137 --- 1446 unchanged lines hidden --- | 1127 sgl_offset = 0; 1128 } 1129 } 1130 else if (this_sds_stp_request->type.pio.pio_transfer_bytes < remaining_bytes_in_current_sgl ) 1131 { 1132 //recycle the TC and send the H2D Data FIS from (current sgl + sgl_offset) and length = type.pio.pio_transfer_bytes 1133 scic_sds_stp_request_pio_data_out_trasmit_data_frame (this_sds_request, this_sds_stp_request->type.pio.pio_transfer_bytes); 1134 --- 1446 unchanged lines hidden --- |