dinitprintk((KERN_WARNING MYNAM ": FW Image  @ %p[%p], sz=%d[%x] bytes\n", 
dinitprintk((KERN_INFO MYNAM ": FW Image  @ %p[%p], sz=%d[%x] bytes\n", 
mpt_do_upload(MPT_ADAPTER *ioc, int sleepFlag){	u8			 request[ioc->req_sz];	u8			 reply[sizeof(FWUploadReply_t)];	FWUpload_t		*prequest;	FWUploadReply_t		*preply;	FWUploadTCSGE_t		*ptcsge;	int			 sgeoffset;	u32			 flagsLength;	int			 ii, sz, reply_sz;	int			 cmdStatus;	/* If the image size is 0, we are done.	 */	if ((sz = ioc->facts.FWImageSize) == 0)		return 0;	mpt_alloc_fw_memory(ioc, sz);	dinitprintk((KERN_WARNING MYNAM ": FW Image  @ %p[%p], sz=%d[%x] bytes\n",		 ioc->cached_fw, (void *)(ulong)ioc->cached_fw_dma, sz, sz));		if (ioc->cached_fw == NULL) {		/* Major Failure.		 */		return -ENOMEM;	}	prequest = (FWUpload_t *)&request;	preply = (FWUploadReply_t *)&reply;	/*  Destination...  */	memset(prequest, 0, ioc->req_sz);	reply_sz = sizeof(reply);	memset(preply, 0, reply_sz);	prequest->ImageType = MPI_FW_UPLOAD_ITYPE_FW_IOC_MEM;	prequest->Function = MPI_FUNCTION_FW_UPLOAD;	ptcsge = (FWUploadTCSGE_t *) &prequest->SGL;	ptcsge->DetailsLength = 12;	ptcsge->Flags = MPI_SGE_FLAGS_TRANSACTION_ELEMENT;	ptcsge->ImageSize = cpu_to_le32(sz);	sgeoffset = sizeof(FWUpload_t) - sizeof(SGE_MPI_UNION) + sizeof(FWUploadTCSGE_t);	flagsLength = MPT_SGE_FLAGS_SSIMPLE_READ | sz;	mpt_add_sge(&request[sgeoffset], flagsLength, ioc->cached_fw_dma);	sgeoffset += sizeof(u32) + sizeof(dma_addr_t);	dinitprintk((KERN_WARNING MYNAM "Sending FW Upload (req @ %p) sgeoffset=%d \n",			prequest, sgeoffset));	DBG_DUMP_FW_REQUEST_FRAME(prequest)	ii = mpt_handshake_req_reply_wait(ioc, sgeoffset, (u32*)prequest,				reply_sz, (u16*)preply, 65 /*seconds*/, sleepFlag);	dinitprintk((KERN_WARNING MYNAM "FW Upload completed rc=%x \n", ii));	cmdStatus = -EFAULT;	if (ii == 0) {		/* Handshake transfer was complete and successful.		 * Check the Reply Frame.		 */		int status, transfer_sz;		status = le16_to_cpu(preply->IOCStatus);		if (status == MPI_IOCSTATUS_SUCCESS) {			transfer_sz = le32_to_cpu(preply->ActualImageSize);			if (transfer_sz == sz)				cmdStatus = 0;		}	}	dinitprintk((MYIOC_s_INFO_FMT ": do_upload status %d \n",			ioc->name, cmdStatus));		if (cmdStatus) {		ddlprintk((MYIOC_s_INFO_FMT ": fw upload failed, freeing image \n",			ioc->name));		mpt_free_fw_memory(ioc);	}	return cmdStatus;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/c6678e0cfb41b029c3600c54b5bb65954de1230a/mptbase.c/clean/drivers/message/fusion/mptbase.c