Lines Matching refs:ioc
111 MPT_ADAPTER *ioc = hd->ioc; in mptspi_setTargetNegoParms() local
112 SpiCfgData *pspi_data = &ioc->spi_data; in mptspi_setTargetNegoParms()
143 ddvprintk(ioc, in mptspi_setTargetNegoParms()
145 "byte56=%02x on id=%d!\n", ioc->name, in mptspi_setTargetNegoParms()
237 ddvprintk(ioc, printk(MYIOC_s_DEBUG_FMT in mptspi_setTargetNegoParms()
238 "Disabling QAS due to noQas=%02x on id=%d!\n", ioc->name, noQas, id)); in mptspi_setTargetNegoParms()
256 MPT_ADAPTER *ioc = hd->ioc; in mptspi_writeIOCPage4() local
268 if ((mf = mpt_get_msg_frame(ioc->DoneCtx, ioc)) == NULL) { in mptspi_writeIOCPage4()
269 dfailprintk(ioc, printk(MYIOC_s_WARN_FMT in mptspi_writeIOCPage4()
270 "writeIOCPage4 : no msg frames!\n",ioc->name)); in mptspi_writeIOCPage4()
280 frameOffset = ioc->req_sz - sizeof(IOCPage4_t); in mptspi_writeIOCPage4()
295 IOCPage4Ptr = ioc->spi_data.pIocPg4; in mptspi_writeIOCPage4()
296 dataDma = ioc->spi_data.IocPg4_dma; in mptspi_writeIOCPage4()
308 ioc->add_sge((char *)&pReq->PageBufferSGE, flagsLength, dataDma); in mptspi_writeIOCPage4()
310 ddvprintk(ioc, printk(MYIOC_s_DEBUG_FMT in mptspi_writeIOCPage4()
312 ioc->name, IOCPage4Ptr->MaxSEP, IOCPage4Ptr->ActiveSEP, id, channel)); in mptspi_writeIOCPage4()
314 mpt_put_msg_frame(ioc->DoneCtx, ioc, mf); in mptspi_writeIOCPage4()
348 if ((sdev->type == TYPE_PROCESSOR) && (hd->ioc->spi_data.Saf_Te)) { in mptspi_initTarget()
384 MPT_ADAPTER *ioc = hd->ioc; in mptspi_is_raid() local
386 if (!ioc->raid_data.pIocPg2) in mptspi_is_raid()
389 if (!ioc->raid_data.pIocPg2->NumActiveVolumes) in mptspi_is_raid()
391 for (i=0; i < ioc->raid_data.pIocPg2->NumActiveVolumes; i++) { in mptspi_is_raid()
392 if (ioc->raid_data.pIocPg2->RaidVolume[i].VolumeID == id) { in mptspi_is_raid()
407 MPT_ADAPTER *ioc; in mptspi_target_alloc() local
412 ioc = hd->ioc; in mptspi_target_alloc()
417 vtarget->ioc_id = ioc->id; in mptspi_target_alloc()
425 if (mptscsih_is_phys_disk(ioc, 0, starget->id) == 0) in mptspi_target_alloc()
431 vtarget->id = mptscsih_raid_id_to_num(ioc, 0, in mptspi_target_alloc()
438 ddvprintk(ioc, printk(MYIOC_s_DEBUG_FMT in mptspi_target_alloc()
439 "RAID Volume @ channel=%d id=%d\n", ioc->name, starget->channel, in mptspi_target_alloc()
443 if (ioc->spi_data.nvram && in mptspi_target_alloc()
444 ioc->spi_data.nvram[starget->id] != MPT_HOST_NVRAM_INVALID) { in mptspi_target_alloc()
445 u32 nvram = ioc->spi_data.nvram[starget->id]; in mptspi_target_alloc()
449 spi_min_period(starget) = ioc->spi_data.minSyncFactor; in mptspi_target_alloc()
450 spi_max_width(starget) = ioc->spi_data.maxBusWidth; in mptspi_target_alloc()
452 spi_max_offset(starget) = ioc->spi_data.maxSyncOffset; in mptspi_target_alloc()
478 ddvprintk(hd->ioc, printk(MYIOC_s_DEBUG_FMT "id=%d Requested = 0x%08x" in mptspi_print_write_nego()
480 hd->ioc->name, starget->id, ii, in mptspi_print_write_nego()
503 ddvprintk(hd->ioc, printk(MYIOC_s_DEBUG_FMT "id=%d Read = 0x%08x" in mptspi_print_read_nego()
505 hd->ioc->name, starget->id, ii, in mptspi_print_read_nego()
523 struct _MPT_ADAPTER *ioc = hd->ioc; in mptspi_read_spi_device_pg0() local
536 size = ioc->spi_data.sdp0length * 4; in mptspi_read_spi_device_pg0()
543 spi_dev_pg0 = dma_alloc_coherent(&ioc->pcidev->dev, size, &spi_dev_pg0_dma, GFP_KERNEL); in mptspi_read_spi_device_pg0()
546 "dma_alloc_coherent for parameters failed\n", ioc->name); in mptspi_read_spi_device_pg0()
552 hdr.PageVersion = ioc->spi_data.sdp0version; in mptspi_read_spi_device_pg0()
553 hdr.PageLength = ioc->spi_data.sdp0length; in mptspi_read_spi_device_pg0()
566 if (mpt_config(ioc, &cfg)) { in mptspi_read_spi_device_pg0()
567 starget_printk(KERN_ERR, starget, MYIOC_s_FMT "mpt_config failed\n", ioc->name); in mptspi_read_spi_device_pg0()
576 dma_free_coherent(&ioc->pcidev->dev, size, spi_dev_pg0, spi_dev_pg0_dma); in mptspi_read_spi_device_pg0()
625 MPT_ADAPTER *ioc = hd->ioc; in mptscsih_quiesce_raid() local
631 mutex_lock(&ioc->internal_cmds.mutex); in mptscsih_quiesce_raid()
635 if ((mf = mpt_get_msg_frame(ioc->InternalCtx, ioc)) == NULL) { in mptscsih_quiesce_raid()
636 dfailprintk(hd->ioc, printk(MYIOC_s_WARN_FMT in mptscsih_quiesce_raid()
637 "%s: no msg frames!\n", ioc->name, __func__)); in mptscsih_quiesce_raid()
656 ioc->add_sge((char *)&pReq->ActionDataSGE, in mptscsih_quiesce_raid()
659 ddvprintk(ioc, printk(MYIOC_s_DEBUG_FMT "RAID Volume action=%x channel=%d id=%d\n", in mptscsih_quiesce_raid()
660 ioc->name, pReq->Action, channel, id)); in mptscsih_quiesce_raid()
662 INITIALIZE_MGMT_STATUS(ioc->internal_cmds.status) in mptscsih_quiesce_raid()
663 mpt_put_msg_frame(ioc->InternalCtx, ioc, mf); in mptscsih_quiesce_raid()
664 timeleft = wait_for_completion_timeout(&ioc->internal_cmds.done, 10*HZ); in mptscsih_quiesce_raid()
665 if (!(ioc->internal_cmds.status & MPT_MGMT_STATUS_COMMAND_GOOD)) { in mptscsih_quiesce_raid()
667 dfailprintk(ioc, printk(MYIOC_s_DEBUG_FMT "%s: TIMED OUT!\n", in mptscsih_quiesce_raid()
668 ioc->name, __func__)); in mptscsih_quiesce_raid()
669 if (ioc->internal_cmds.status & MPT_MGMT_STATUS_DID_IOCRESET) in mptscsih_quiesce_raid()
673 ioc->name, __func__); in mptscsih_quiesce_raid()
674 mpt_HardResetHandler(ioc, CAN_SLEEP); in mptscsih_quiesce_raid()
675 mpt_free_msg_frame(ioc, mf); in mptscsih_quiesce_raid()
680 ret = ioc->internal_cmds.completion_code; in mptscsih_quiesce_raid()
683 CLEAR_MGMT_STATUS(ioc->internal_cmds.status) in mptscsih_quiesce_raid()
684 mutex_unlock(&ioc->internal_cmds.mutex); in mptscsih_quiesce_raid()
692 MPT_ADAPTER *ioc = hd->ioc; in mptspi_dv_device() local
703 "Integrated RAID quiesce failed\n", ioc->name); in mptspi_dv_device()
714 "Integrated RAID resume failed\n", ioc->name); in mptspi_dv_device()
727 MPT_ADAPTER *ioc = hd->ioc; in mptspi_slave_alloc() local
730 mptscsih_is_phys_disk(ioc, 0, sdev->id) == 0) in mptspi_slave_alloc()
736 ioc->name, sizeof(VirtDevice)); in mptspi_slave_alloc()
767 ddvprintk(hd->ioc, printk(MYIOC_s_DEBUG_FMT "id=%d min_period=0x%02x" in mptspi_slave_configure()
768 " max_offset=0x%02x max_width=%d\n", hd->ioc->name, in mptspi_slave_configure()
786 MPT_ADAPTER *ioc = hd->ioc; in mptspi_qcmd() local
795 mptscsih_is_phys_disk(ioc, 0, SCpnt->device->id) == 0) { in mptspi_qcmd()
802 ddvprintk(ioc, scsi_print_command(SCpnt)); in mptspi_qcmd()
860 struct _MPT_ADAPTER *ioc = hd->ioc; in mptspi_write_spi_device_pg1() local
877 size = ioc->spi_data.sdp1length * 4; in mptspi_write_spi_device_pg1()
879 pg1 = dma_alloc_coherent(&ioc->pcidev->dev, size, &pg1_dma, GFP_KERNEL); in mptspi_write_spi_device_pg1()
882 "dma_alloc_coherent for parameters failed\n", ioc->name); in mptspi_write_spi_device_pg1()
888 hdr.PageVersion = ioc->spi_data.sdp1version; in mptspi_write_spi_device_pg1()
889 hdr.PageLength = ioc->spi_data.sdp1length; in mptspi_write_spi_device_pg1()
917 "IDP:ON\n", ioc->name); in mptspi_write_spi_device_pg1()
928 if (mpt_config(ioc, &cfg)) { in mptspi_write_spi_device_pg1()
930 "mpt_config failed\n", ioc->name); in mptspi_write_spi_device_pg1()
936 dma_free_coherent(&ioc->pcidev->dev, size, pg1, pg1_dma); in mptspi_write_spi_device_pg1()
1074 hd->ioc->spi_data.noQas) in MPTSPI_SIMPLE_TRANSPORT_PARM()
1121 MPT_ADAPTER *ioc = hd->ioc; in mpt_work_wrapper() local
1122 struct Scsi_Host *shost = ioc->sh; in mpt_work_wrapper()
1129 mpt_findImVolumes(ioc); in mpt_work_wrapper()
1130 pg3 = ioc->raid_data.pIocPg3; in mpt_work_wrapper()
1148 "Integrated RAID requests DV of new device\n", ioc->name); in mpt_work_wrapper()
1152 "Integrated RAID detects new device %d\n", ioc->name, disk); in mpt_work_wrapper()
1153 scsi_scan_target(&ioc->sh->shost_gendev, 1, disk, 0, 1); in mpt_work_wrapper()
1160 MPT_ADAPTER *ioc = hd->ioc; in mpt_dv_raid() local
1163 shost_printk(KERN_ERR, ioc->sh, MYIOC_s_FMT in mpt_dv_raid()
1165 ioc->name, disk); in mpt_dv_raid()
1176 mptspi_event_process(MPT_ADAPTER *ioc, EventNotificationReply_t *pEvReply) in mptspi_event_process() argument
1179 struct _MPT_SCSI_HOST *hd = shost_priv(ioc->sh); in mptspi_event_process()
1181 if (ioc->bus_type != SPI) in mptspi_event_process()
1193 return mptscsih_event_process(ioc, pEvReply); in mptspi_event_process()
1271 MPT_ADAPTER *ioc = hd->ioc; in mptspi_dv_renegotiate_work() local
1276 shost_for_each_device(sdev, ioc->sh) { in mptspi_dv_renegotiate_work()
1287 shost_for_each_device(sdev, ioc->sh) in mptspi_dv_renegotiate_work()
1310 mptspi_ioc_reset(MPT_ADAPTER *ioc, int reset_phase) in mptspi_ioc_reset() argument
1314 rc = mptscsih_ioc_reset(ioc, reset_phase); in mptspi_ioc_reset()
1315 if ((ioc->bus_type != SPI) || (!rc)) in mptspi_ioc_reset()
1321 ioc->sh) { in mptspi_ioc_reset()
1322 struct _MPT_SCSI_HOST *hd = shost_priv(ioc->sh); in mptspi_ioc_reset()
1337 MPT_ADAPTER *ioc = pci_get_drvdata(pdev); in mptspi_resume() local
1338 struct _MPT_SCSI_HOST *hd = shost_priv(ioc->sh); in mptspi_resume()
1362 MPT_ADAPTER *ioc; in mptspi_probe() local
1374 ioc = pci_get_drvdata(pdev); in mptspi_probe()
1375 ioc->DoneCtx = mptspiDoneCtx; in mptspi_probe()
1376 ioc->TaskCtx = mptspiTaskCtx; in mptspi_probe()
1377 ioc->InternalCtx = mptspiInternalCtx; in mptspi_probe()
1381 if (ioc->last_state != MPI_IOC_STATE_OPERATIONAL) { in mptspi_probe()
1384 ioc->name); in mptspi_probe()
1389 if (!ioc->active) { in mptspi_probe()
1391 ioc->name); in mptspi_probe()
1399 for (ii=0; ii < ioc->facts.NumberOfPorts; ii++) { in mptspi_probe()
1400 if (ioc->pfacts[ii].ProtocolFlags & in mptspi_probe()
1408 ioc->name, ioc); in mptspi_probe()
1417 ioc->name); in mptspi_probe()
1427 spin_lock_irqsave(&ioc->FreeQlock, flags); in mptspi_probe()
1431 ioc->sh = sh; in mptspi_probe()
1450 sh->max_id = ioc->devices_per_bus; in mptspi_probe()
1456 if (ioc->ir_firmware) in mptspi_probe()
1460 sh->this_id = ioc->pfacts[0].PortSCSIID; in mptspi_probe()
1464 sh->unique_id = ioc->id; in mptspi_probe()
1475 scale = ioc->req_sz/ioc->SGE_size; in mptspi_probe()
1476 if (ioc->sg_addr_size == sizeof(u64)) { in mptspi_probe()
1478 (ioc->facts.MaxChainDepth-1) + scale + in mptspi_probe()
1479 (ioc->req_sz - 60) / ioc->SGE_size; in mptspi_probe()
1482 (ioc->facts.MaxChainDepth-1) + scale + in mptspi_probe()
1483 (ioc->req_sz - 64) / ioc->SGE_size; in mptspi_probe()
1488 dprintk(ioc, printk(MYIOC_s_DEBUG_FMT in mptspi_probe()
1490 ioc->name, numSGE, sh->sg_tablesize)); in mptspi_probe()
1494 spin_unlock_irqrestore(&ioc->FreeQlock, flags); in mptspi_probe()
1497 hd->ioc = ioc; in mptspi_probe()
1502 ioc->ScsiLookup = kcalloc(ioc->req_depth, sizeof(void *), GFP_ATOMIC); in mptspi_probe()
1503 if (!ioc->ScsiLookup) { in mptspi_probe()
1507 spin_lock_init(&ioc->scsi_lookup_lock); in mptspi_probe()
1509 dprintk(ioc, printk(MYIOC_s_DEBUG_FMT "ScsiLookup @ %p\n", in mptspi_probe()
1510 ioc->name, ioc->ScsiLookup)); in mptspi_probe()
1512 ioc->spi_data.Saf_Te = mpt_saf_te; in mptspi_probe()
1513 ddvprintk(ioc, printk(MYIOC_s_DEBUG_FMT in mptspi_probe()
1515 ioc->name, in mptspi_probe()
1517 ioc->spi_data.noQas = 0; in mptspi_probe()
1524 if (ioc->spi_data.sdp0length != 0) in mptspi_probe()
1527 error = scsi_add_host (sh, &ioc->pcidev->dev); in mptspi_probe()
1529 dprintk(ioc, printk(MYIOC_s_ERR_FMT in mptspi_probe()
1530 "scsi_add_host failed\n", ioc->name)); in mptspi_probe()
1537 if (ioc->spi_data.bus_reset) in mptspi_probe()