dprintk((MYIOC_s_WARN_FMT "writeIOCPage4 : no msg frames!\n", 
dfailprintk((MYIOC_s_WARN_FMT "writeIOCPage4 : no msg frames!\n", 
mptscsih_writeIOCPage4(MPT_SCSI_HOST *hd, int target_id, int bus){	MPT_ADAPTER		*ioc = hd->ioc;	Config_t		*pReq;	IOCPage4_t		*IOCPage4Ptr;	MPT_FRAME_HDR		*mf;	dma_addr_t		 dataDma;	u16			 req_idx;	u32			 frameOffset;	u32			 flagsLength;	int			 ii;	/* Get a MF for this command.	 */	if ((mf = mpt_get_msg_frame(ioc->DoneCtx, ioc)) == NULL) {		dprintk((MYIOC_s_WARN_FMT "writeIOCPage4 : no msg frames!\n",					ioc->name));		return -EAGAIN;	}	/* Set the request and the data pointers.	 * Place data at end of MF.	 */	pReq = (Config_t *)mf;	req_idx = le16_to_cpu(mf->u.frame.hwhdr.msgctxu.fld.req_idx);	frameOffset = ioc->req_sz - sizeof(IOCPage4_t);	/* Complete the request frame (same for all requests).	 */	pReq->Action = MPI_CONFIG_ACTION_PAGE_WRITE_CURRENT;	pReq->Reserved = 0;	pReq->ChainOffset = 0;	pReq->Function = MPI_FUNCTION_CONFIG;	pReq->ExtPageLength = 0;	pReq->ExtPageType = 0;	pReq->MsgFlags = 0;	for (ii=0; ii < 8; ii++) {		pReq->Reserved2[ii] = 0;	}       	IOCPage4Ptr = ioc->spi_data.pIocPg4;       	dataDma = ioc->spi_data.IocPg4_dma;       	ii = IOCPage4Ptr->ActiveSEP++;       	IOCPage4Ptr->SEP[ii].SEPTargetID = target_id;       	IOCPage4Ptr->SEP[ii].SEPBus = bus;       	pReq->Header = IOCPage4Ptr->Header;	pReq->PageAddress = cpu_to_le32(target_id | (bus << 8 ));	/* Add a SGE to the config request.	 */	flagsLength = MPT_SGE_FLAGS_SSIMPLE_WRITE |		(IOCPage4Ptr->Header.PageLength + ii) * 4;	mpt_add_sge((char *)&pReq->PageBufferSGE, flagsLength, dataDma);	dinitprintk((MYIOC_s_INFO_FMT		"writeIOCPage4: MaxSEP=%d ActiveSEP=%d id=%d bus=%d\n",			ioc->name, IOCPage4Ptr->MaxSEP, IOCPage4Ptr->ActiveSEP, target_id, bus));	mpt_put_msg_frame(ioc->DoneCtx, ioc, mf);	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/c6678e0cfb41b029c3600c54b5bb65954de1230a/mptscsih.c/buggy/drivers/message/fusion/mptscsih.c