Lines Matching defs:request

59 #include "request.h"
211 * This method is will fill in the SCU Task Context for any type of SSP request.
411 * This method is will fill in the SCU Task Context for a SSP IO request.
455 * the SCU Task Context for a SSP Task request. The following important
457 * ensures that the task request is issued ahead of other task destined
459 * simply indicates that a normal request type (i.e. non-raw frame) is
463 * @ireq: This parameter specifies the task request object being constructed.
483 * request. This is called from the various SATA constructors.
484 * @ireq: The general IO request object which is to be used in
489 * The general io request construction is complete. The buffer assignment for
593 * @ireq: This parameter specifies the request to be constructed as an
594 * optimized request.
595 * @optimized_task_type: This parameter specifies whether the request is to be
596 * an UDMA request or a NCQ request. - A value of 0 indicates UDMA. - A
599 * This method will perform request construction common to all types of STP
621 * The difference between the DMA IN and DMA OUT request task type
778 * sci_req_tx_bytes - bytes transferred when reply underruns request
779 * @ireq: request that was terminated early
888 * abort the request and complete it immediately
898 /* If the request is only waiting on the remote device
920 "isci: request completion from wrong state (%s)\n",
957 "%s: pio request unexpected event %#x\n",
960 /* TODO Should we fail the PIO request when we get an
970 * @sci_req: This parameter specifies the request object for which to copy
1008 * response because the io request specified more data than is
1011 * truly a failed request or a good request that just got
1162 /* Currently, the decision is to simply allow the task request
1178 * the request.
1212 * we ask ihost user to retry the request.
1220 * was received, then it is up to the user to retry the request
1244 * the user to retry the request.
1302 * the user to retry the request.
1316 * parameter length. current sgl and offset is alreay stored in the IO request
1396 * @stp_req: The request that is used for the SGL processing.
1400 * Copy the data from the buffer for the length specified to the IO request SGL
1443 * @stp_req: The PIO DATA IN request that is to receive the data.
1446 * Copy the data buffer to the io request data region. enum sci_status
1455 * If there is less than 1K remaining in the transfer request
1489 * the user to retry the request.
1538 * the request.
1931 * request was PIO Data-in or Data out
2158 * the request.
2213 * request upon pending resume
2367 "%s: request %p has no valid protocol\n",
2449 * response iu, in the task struct, from the request object for the upper
2452 * @resp_iu: This parameter points to the response iu of the completed request.
2483 * @request: This parameter is the completed isci_request object.
2493 struct isci_request *request,
2500 set_bit(IREQ_COMPLETE_IN_TARGET, &request->flags);
2510 * @request: This parameter is the completed isci_request object.
2519 struct isci_request *request,
2526 cstatus = request->scu_status;
2528 dev_dbg(&request->isci_host->pdev->dev,
2531 __func__, request, cstatus);
2562 set_bit(IREQ_COMPLETE_IN_TARGET, &request->flags);
2572 clear_bit(IREQ_COMPLETE_IN_TARGET, &request->flags);
2600 set_bit(IREQ_COMPLETE_IN_TARGET, &request->flags);
2610 request, task, response_ptr, status_ptr,
2620 request, task, response_ptr, status_ptr,
2627 request, task, response_ptr, status_ptr,
2634 request, task, response_ptr, status_ptr,
2641 request, task, response_ptr, status_ptr,
2648 request, task, response_ptr, status_ptr,
2655 request, task, response_ptr, status_ptr,
2662 request, task, response_ptr, status_ptr,
2669 request, task, response_ptr, status_ptr,
2703 set_bit(IREQ_COMPLETE_IN_TARGET, &request->flags);
2705 clear_bit(IREQ_COMPLETE_IN_TARGET, &request->flags);
2729 struct isci_request *request,
2732 struct sas_task *task = isci_request_access_task(request);
2735 struct isci_remote_device *idev = request->target_device;
2740 "%s: request = %p, task = %p, "
2742 __func__, request, task, task->data_dir, completion_status);
2744 /* The request is done from an SCU HW perspective. */
2746 /* This is an active request being completed from the core. */
2752 __func__, request, task);
2755 isci_process_stp_response(task, &request->stp.rsp);
2759 resp_iu = &request->ssp.rsp;
2777 set_bit(IREQ_COMPLETE_IN_TARGET, &request->flags);
2787 set_bit(IREQ_COMPLETE_IN_TARGET, &request->flags);
2795 u32 transferred_length = sci_req_tx_bytes(request);
2819 __func__, request, task);
2821 /* The request was terminated explicitly. */
2822 set_bit(IREQ_COMPLETE_IN_TARGET, &request->flags);
2837 isci_request_handle_controller_specific_errors(idev, request,
2858 clear_bit(IREQ_COMPLETE_IN_TARGET, &request->flags);
2870 set_bit(IREQ_COMPLETE_IN_TARGET, &request->flags);
2879 __func__, completion_status, request);
2893 set_bit(IREQ_COMPLETE_IN_TARGET, &request->flags);
2895 clear_bit(IREQ_COMPLETE_IN_TARGET, &request->flags);
2906 request->zero_scatter_daddr,
2910 request->num_sg_entries, task->data_dir);
2935 if (test_bit(IREQ_COMPLETE_IN_TARGET, &request->flags)) {
2942 /* complete the io request to the core. */
2943 sci_controller_complete_io(ihost, request->target_device, request);
2949 set_bit(IREQ_TERMINATED, &request->flags);
2951 ireq_done(ihost, request, task);
2966 /* all unaccelerated request types (non ssp or ncq) handled with
2997 /* Tell the SCI_USER that the IO request is complete */
3086 /* Build the common part of the request */
3113 /* Build the common part of the request */
3132 struct isci_request *request)
3136 dev_dbg(&request->isci_host->pdev->dev,
3137 "%s: request = %p\n",
3139 request);
3140 status = sci_io_request_construct_basic_ssp(request);
3193 * functions under SAS 2.0, a zero request length really indicates
3222 /* byte swap the smp request. */
3300 * isci_smp_request_build() - This function builds the smp request.
3302 * request construct function.
3323 * isci_io_request_build() - This function builds the io request object.
3325 * @request: This parameter points to the isci_request object allocated in the
3326 * request construct function.
3328 * object that is the destination for this request.
3333 struct isci_request *request,
3337 struct sas_task *task = isci_request_access_task(request);
3340 "%s: idev = 0x%p; request = %p, "
3344 request,
3349 * before we get the request.
3355 request->num_sg_entries = dma_map_sg(
3362 if (request->num_sg_entries == 0)
3366 status = sci_io_request_construct(ihost, idev, request);
3370 "%s: failed request construct\n",
3377 status = isci_smp_request_build(request);
3380 status = isci_request_ssp_request_construct(request);
3385 status = isci_request_stp_request_construct(request);
3459 * request on the task side. Note that it will
3460 * complete on the I/O request side because the
3461 * request was built that way (ie.
3471 /* send the request, let the core assign the IO TAG. */
3479 "%s: failed request start (0x%x)\n",
3488 /* The request did not really start in the
3489 * hardware, so clear the request handle