• Home
  • Raw
  • Download

Lines Matching refs:scb

126 		       le64_to_cpu(ascb->scb->ssp_task.sg_element[0].bus_addr);  in asd_unmap_scatterlist()
350 struct scb *scb; in asd_build_ata_ascb() local
354 scb = ascb->scb; in asd_build_ata_ascb()
357 scb->header.opcode = CONTROL_ATA_DEV; in asd_build_ata_ascb()
359 scb->header.opcode = INITIATE_ATAPI_TASK; in asd_build_ata_ascb()
361 scb->header.opcode = INITIATE_ATA_TASK; in asd_build_ata_ascb()
363 scb->ata_task.proto_conn_rate = (1 << 5); /* STP */ in asd_build_ata_ascb()
365 scb->ata_task.proto_conn_rate |= dev->linkrate; in asd_build_ata_ascb()
367 scb->ata_task.total_xfer_len = cpu_to_le32(task->total_xfer_len); in asd_build_ata_ascb()
368 scb->ata_task.fis = task->ata_task.fis; in asd_build_ata_ascb()
370 scb->ata_task.fis.flags |= 0x80; /* C=1: update ATA cmd reg */ in asd_build_ata_ascb()
371 scb->ata_task.fis.flags &= 0xF0; /* PM_PORT field shall be 0 */ in asd_build_ata_ascb()
373 memcpy(scb->ata_task.atapi_packet, task->ata_task.atapi_packet, in asd_build_ata_ascb()
375 scb->ata_task.sister_scb = cpu_to_le16(0xFFFF); in asd_build_ata_ascb()
376 scb->ata_task.conn_handle = cpu_to_le16( in asd_build_ata_ascb()
387 scb->ata_task.ata_flags = flags; in asd_build_ata_ascb()
389 scb->ata_task.retry_count = task->ata_task.retry_count; in asd_build_ata_ascb()
396 scb->ata_task.flags = flags; in asd_build_ata_ascb()
401 res = asd_map_scatterlist(task, scb->ata_task.sg_element, in asd_build_ata_ascb()
419 struct scb *scb; in asd_build_smp_ascb() local
426 scb = ascb->scb; in asd_build_smp_ascb()
428 scb->header.opcode = INITIATE_SMP_TASK; in asd_build_smp_ascb()
430 scb->smp_task.proto_conn_rate = dev->linkrate; in asd_build_smp_ascb()
432 scb->smp_task.smp_req.bus_addr = in asd_build_smp_ascb()
434 scb->smp_task.smp_req.size = in asd_build_smp_ascb()
437 scb->smp_task.smp_resp.bus_addr = in asd_build_smp_ascb()
439 scb->smp_task.smp_resp.size = in asd_build_smp_ascb()
442 scb->smp_task.sister_scb = cpu_to_le16(0xFFFF); in asd_build_smp_ascb()
443 scb->smp_task.conn_handle = cpu_to_le16((u16) in asd_build_smp_ascb()
468 struct scb *scb; in asd_build_ssp_ascb() local
471 scb = ascb->scb; in asd_build_ssp_ascb()
473 scb->header.opcode = INITIATE_SSP_TASK; in asd_build_ssp_ascb()
475 scb->ssp_task.proto_conn_rate = (1 << 4); /* SSP */ in asd_build_ssp_ascb()
476 scb->ssp_task.proto_conn_rate |= dev->linkrate; in asd_build_ssp_ascb()
477 scb->ssp_task.total_xfer_len = cpu_to_le32(task->total_xfer_len); in asd_build_ssp_ascb()
478 scb->ssp_task.ssp_frame.frame_type = SSP_DATA; in asd_build_ssp_ascb()
479 memcpy(scb->ssp_task.ssp_frame.hashed_dest_addr, dev->hashed_sas_addr, in asd_build_ssp_ascb()
481 memcpy(scb->ssp_task.ssp_frame.hashed_src_addr, in asd_build_ssp_ascb()
483 scb->ssp_task.ssp_frame.tptt = cpu_to_be16(0xFFFF); in asd_build_ssp_ascb()
485 memcpy(scb->ssp_task.ssp_cmd.lun, task->ssp_task.LUN, 8); in asd_build_ssp_ascb()
487 scb->ssp_task.ssp_cmd.efb_prio_attr |= EFB_MASK; in asd_build_ssp_ascb()
488 scb->ssp_task.ssp_cmd.efb_prio_attr |= (task->ssp_task.task_prio << 3); in asd_build_ssp_ascb()
489 scb->ssp_task.ssp_cmd.efb_prio_attr |= (task->ssp_task.task_attr & 7); in asd_build_ssp_ascb()
490 memcpy(scb->ssp_task.ssp_cmd.cdb, task->ssp_task.cmd->cmnd, in asd_build_ssp_ascb()
493 scb->ssp_task.sister_scb = cpu_to_le16(0xFFFF); in asd_build_ssp_ascb()
494 scb->ssp_task.conn_handle = cpu_to_le16( in asd_build_ssp_ascb()
496 scb->ssp_task.data_dir = data_dir_flags[task->data_dir]; in asd_build_ssp_ascb()
497 scb->ssp_task.retry_count = scb->ssp_task.retry_count; in asd_build_ssp_ascb()
501 res = asd_map_scatterlist(task, scb->ssp_task.sg_element, gfp_flags); in asd_build_ssp_ascb()