Lines Matching refs:facts

1315 		    le32_to_cpu(ioc->facts.HostPageBufferSGE.FlagsLength) & 0xFFFFFF;
1357 ioc->facts.HostPageBufferSGE = ioc_init->HostPageBufferSGE;
1870 dinitprintk(ioc, printk(MYIOC_s_INFO_FMT "facts @ %p, pfacts[0] @ %p\n",
1871 ioc->name, &ioc->facts, &ioc->pfacts[0]));
2360 /* Get IOC facts! Allow 5 retries */
2394 (ioc->facts.Flags & MPI_IOCFACTS_FLAGS_FW_DOWNLOAD_BOOT)) {
2510 if ((ret == 0) && (!ioc->facts.EventState)) {
2517 if (ioc->alt_ioc && alt_ioc_ready && !ioc->alt_ioc->facts.EventState)
2556 if(ioc->facts.IOCExceptions &
2600 if (ioc->facts.MsgVersion >= MPI_VERSION_01_02)
3066 * @reason: If recovery, only update facts.
3074 IOCFactsReply_t *facts;
3090 facts = &ioc->facts;
3093 reply_sz = sizeof(*facts);
3094 memset(facts, 0, reply_sz);
3111 reply_sz, (u16*)facts, 5 /*seconds*/, sleepFlag);
3123 if (facts->MsgLength > offsetof(IOCFactsReply_t, RequestFrameSize)/sizeof(u32)) {
3129 ioc->FirstWhoInit = facts->WhoInit;
3132 facts->MsgVersion = le16_to_cpu(facts->MsgVersion);
3133 facts->MsgContext = le32_to_cpu(facts->MsgContext);
3134 facts->IOCExceptions = le16_to_cpu(facts->IOCExceptions);
3135 facts->IOCStatus = le16_to_cpu(facts->IOCStatus);
3136 facts->IOCLogInfo = le32_to_cpu(facts->IOCLogInfo);
3139 facts->ReplyQueueDepth = le16_to_cpu(facts->ReplyQueueDepth);
3140 facts->RequestFrameSize = le16_to_cpu(facts->RequestFrameSize);
3147 if (facts->MsgVersion < MPI_VERSION_01_02) {
3151 u16 oldv = le16_to_cpu(facts->Reserved_0101_FWVersion);
3152 facts->FWVersion.Word =
3156 facts->FWVersion.Word = le32_to_cpu(facts->FWVersion.Word);
3158 facts->ProductID = le16_to_cpu(facts->ProductID);
3160 if ((ioc->facts.ProductID & MPI_FW_HEADER_PID_PROD_MASK)
3164 facts->CurrentHostMfaHighAddr =
3165 le32_to_cpu(facts->CurrentHostMfaHighAddr);
3166 facts->GlobalCredits = le16_to_cpu(facts->GlobalCredits);
3167 facts->CurrentSenseBufferHighAddr =
3168 le32_to_cpu(facts->CurrentSenseBufferHighAddr);
3169 facts->CurReplyFrameSize =
3170 le16_to_cpu(facts->CurReplyFrameSize);
3171 facts->IOCCapabilities = le32_to_cpu(facts->IOCCapabilities);
3178 if (facts->MsgLength >= (offsetof(IOCFactsReply_t,FWImageSize) + 7)/4 &&
3179 facts->MsgVersion > MPI_VERSION_01_00) {
3180 facts->FWImageSize = le32_to_cpu(facts->FWImageSize);
3183 facts->FWImageSize = ALIGN(facts->FWImageSize, 4);
3185 if (!facts->RequestFrameSize) {
3192 r = sz = facts->BlockSize;
3210 ioc->req_sz = min(MPT_DEFAULT_FRAME_SIZE, facts->RequestFrameSize * 4);
3211 ioc->req_depth = min_t(int, MPT_MAX_REQ_DEPTH, facts->GlobalCredits);
3213 ioc->reply_depth = min_t(int, MPT_DEFAULT_REPLY_DEPTH, facts->ReplyQueueDepth);
3220 /* Get port facts! */
3226 "Invalid IOC facts reply, msgLength=%d offsetof=%zd!\n",
3227 ioc->name, facts->MsgLength, (offsetof(IOCFactsReply_t,
3347 if (ioc->facts.Flags & MPI_IOCFACTS_FLAGS_FW_DOWNLOAD_BOOT)
3351 ddlprintk(ioc, printk(MYIOC_s_DEBUG_FMT "upload_fw %d facts.Flags=%x\n",
3352 ioc->name, ioc->upload_fw, ioc->facts.Flags));
3357 dinitprintk(ioc, printk(MYIOC_s_DEBUG_FMT "facts.MsgVersion=%x\n",
3358 ioc->name, ioc->facts.MsgVersion));
3359 if (ioc->facts.MsgVersion >= MPI_VERSION_01_05) {
3364 if (ioc->facts.Flags & MPI_IOCFACTS_FLAGS_HOST_PAGE_BUFFER_PERSISTENT) {
3365 ioc_init.HostPageBufferSGE = ioc->facts.HostPageBufferSGE;
3383 ioc->facts.CurrentHostMfaHighAddr = ioc_init.HostMfaHighAddr;
3384 ioc->facts.CurrentSenseBufferHighAddr = ioc_init.SenseBufferHighAddr;
3385 ioc->facts.MaxDevices = ioc_init.MaxDevices;
3386 ioc->facts.MaxBuses = ioc_init.MaxBuses;
3546 sz = ioc->facts.FWImageSize;
3582 if ((sz = ioc->facts.FWImageSize) == 0)
3585 if (mpt_alloc_fw_memory(ioc, ioc->facts.FWImageSize) != 0)
3620 ioc->facts.FWImageSize, request_size));
3638 ioc->facts.FWImageSize ==
4240 ioc->facts.EventState = 0;
4243 ioc->alt_ioc->facts.EventState = 0;
4302 if (ioc->facts.Function)
4303 ioc->facts.EventState = 0;
4364 numSGE = (scale - 1) * (ioc->facts.MaxChainDepth-1) + scale +
4367 numSGE = 1 + (scale - 1) * (ioc->facts.MaxChainDepth-1) +
6710 if (ioc->facts.Flags & MPI_IOCFACTS_FLAGS_FW_DOWNLOAD_BOOT)
6712 // if (ioc->facts.IOCExceptions & MPI_IOCFACTS_EXCEPT_CONFIG_CHECKSUM_FAIL)
6716 ioc->facts.ProductID,
6718 seq_printf(m, " FWVersion = 0x%08x%s", ioc->facts.FWVersion.Word, expVer);
6719 if (ioc->facts.FWImageSize)
6720 seq_printf(m, " (fw_size=%d)", ioc->facts.FWImageSize);
6721 seq_printf(m, "\n MsgVersion = 0x%04x\n", ioc->facts.MsgVersion);
6723 seq_printf(m, " EventState = 0x%02x\n", ioc->facts.EventState);
6726 ioc->facts.CurrentHostMfaHighAddr);
6728 ioc->facts.CurrentSenseBufferHighAddr);
6730 seq_printf(m, " MaxChainDepth = 0x%02x frames\n", ioc->facts.MaxChainDepth);
6731 seq_printf(m, " MinBlockSize = 0x%02x bytes\n", 4*ioc->facts.BlockSize);
6743 4*ioc->facts.RequestFrameSize,
6744 ioc->facts.GlobalCredits);
6752 ioc->facts.CurReplyFrameSize,
6753 ioc->facts.ReplyQueueDepth);
6756 (ioc->facts.MaxDevices==0) ? 255 : ioc->facts.MaxDevices);
6757 seq_printf(m, " MaxBuses = %d\n", ioc->facts.MaxBuses);
6760 for (p=0; p < ioc->facts.NumberOfPorts; p++) {
6763 ioc->facts.NumberOfPorts);
6786 if ((ioc->facts.FWVersion.Word >> 24) == 0x0E) {
6788 (ioc->facts.FWVersion.Word >> 16) & 0x00FF, /* Month */
6789 (ioc->facts.FWVersion.Word >> 8) & 0x1F); /* Day */
6792 if ((ioc->facts.FWVersion.Word >> 8) & 0x80)
6824 ioc->facts.FWVersion.Word,
6826 ioc->facts.NumberOfPorts,
6858 ioc->facts.FWVersion.Word,
6860 ioc->facts.NumberOfPorts,
7042 /* Get IOC facts! Allow 5 retries */
7731 if (ioc->facts.Function) {
7732 ioc->facts.EventState = evState;