Lines Matching refs:facts

107 static int mpr_get_iocfacts(struct mpr_softc *sc, MPI2_IOC_FACTS_REPLY *facts);
112 static void adjust_iocfacts_endianness(MPI2_IOC_FACTS_REPLY *facts);
393 prireqcr = MIN(prireqcr, sc->facts->HighPriorityCredit); in mpr_resize_queues()
396 reqcr = MIN(reqcr, sc->facts->RequestCredit); in mpr_resize_queues()
401 sc->facts->MaxReplyDescriptorPostQueueDepth) - 1; in mpr_resize_queues()
404 sc->reqframesz = sc->facts->IOCRequestFrameSize * 4; in mpr_resize_queues()
414 if (sc->facts->MsgVersion >= MPI2_VERSION_02_05) { in mpr_resize_queues()
415 chain_seg_size = sc->facts->IOCMaxChainSegmentSize; in mpr_resize_queues()
434 maxio = (sges_per_frame * sc->facts->MaxChainDepth + 1) * PAGE_SIZE; in mpr_resize_queues()
458 if (sc->facts->MaxMSIxVectors < 2) in mpr_resize_queues()
463 sc->msi_msgs = MIN(sc->msi_msgs, sc->facts->MaxMSIxVectors); in mpr_resize_queues()
491 bcopy(sc->facts, &saved_facts, sizeof(MPI2_IOC_FACTS_REPLY)); in mpr_iocfacts_allocate()
499 if ((error = mpr_get_iocfacts(sc, sc->facts)) != 0) { in mpr_iocfacts_allocate()
510 MPR_DPRINT_PAGE(sc, MPR_XINFO, iocfacts, sc->facts); in mpr_iocfacts_allocate()
514 sc->facts->FWVersion.Struct.Major, in mpr_iocfacts_allocate()
515 sc->facts->FWVersion.Struct.Minor, in mpr_iocfacts_allocate()
516 sc->facts->FWVersion.Struct.Unit, in mpr_iocfacts_allocate()
517 sc->facts->FWVersion.Struct.Dev); in mpr_iocfacts_allocate()
520 (sc->facts->MsgVersion & MPI2_IOCFACTS_MSGVERSION_MAJOR_MASK) >> in mpr_iocfacts_allocate()
522 (sc->facts->MsgVersion & MPI2_IOCFACTS_MSGVERSION_MINOR_MASK) >> in mpr_iocfacts_allocate()
528 "IOCCapabilities: %b\n", sc->facts->IOCCapabilities, in mpr_iocfacts_allocate()
541 if (attaching && ((sc->facts->IOCCapabilities & in mpr_iocfacts_allocate()
559 if (sc->facts->IOCCapabilities & in mpr_iocfacts_allocate()
574 ((saved_facts.MsgVersion != sc->facts->MsgVersion) || in mpr_iocfacts_allocate()
575 (saved_facts.HeaderVersion != sc->facts->HeaderVersion) || in mpr_iocfacts_allocate()
576 (saved_facts.MaxChainDepth != sc->facts->MaxChainDepth) || in mpr_iocfacts_allocate()
577 (saved_facts.RequestCredit != sc->facts->RequestCredit) || in mpr_iocfacts_allocate()
578 (saved_facts.ProductID != sc->facts->ProductID) || in mpr_iocfacts_allocate()
579 (saved_facts.IOCCapabilities != sc->facts->IOCCapabilities) || in mpr_iocfacts_allocate()
581 sc->facts->IOCRequestFrameSize) || in mpr_iocfacts_allocate()
583 sc->facts->IOCMaxChainSegmentSize) || in mpr_iocfacts_allocate()
584 (saved_facts.MaxTargets != sc->facts->MaxTargets) || in mpr_iocfacts_allocate()
585 (saved_facts.MaxSasExpanders != sc->facts->MaxSasExpanders) || in mpr_iocfacts_allocate()
586 (saved_facts.MaxEnclosures != sc->facts->MaxEnclosures) || in mpr_iocfacts_allocate()
587 (saved_facts.HighPriorityCredit != sc->facts->HighPriorityCredit) || in mpr_iocfacts_allocate()
589 sc->facts->MaxReplyDescriptorPostQueueDepth) || in mpr_iocfacts_allocate()
590 (saved_facts.ReplyFrameSize != sc->facts->ReplyFrameSize) || in mpr_iocfacts_allocate()
591 (saved_facts.MaxVolumes != sc->facts->MaxVolumes) || in mpr_iocfacts_allocate()
593 sc->facts->MaxPersistentEntries))) { in mpr_iocfacts_allocate()
610 if (sc->facts->IOCCapabilities & in mpr_iocfacts_allocate()
614 if (sc->facts->IOCCapabilities & in mpr_iocfacts_allocate()
618 if (sc->facts->IOCCapabilities & in mpr_iocfacts_allocate()
626 if (sc->facts->IOCCapabilities & MPI2_IOCFACTS_CAPABILITY_EEDP) in mpr_iocfacts_allocate()
628 if (sc->facts->IOCCapabilities & MPI2_IOCFACTS_CAPABILITY_TLR) in mpr_iocfacts_allocate()
630 if ((sc->facts->IOCCapabilities & in mpr_iocfacts_allocate()
1166 adjust_iocfacts_endianness(MPI2_IOC_FACTS_REPLY *facts) in adjust_iocfacts_endianness() argument
1168 facts->HeaderVersion = le16toh(facts->HeaderVersion); in adjust_iocfacts_endianness()
1169 facts->Reserved1 = le16toh(facts->Reserved1); in adjust_iocfacts_endianness()
1170 facts->IOCExceptions = le16toh(facts->IOCExceptions); in adjust_iocfacts_endianness()
1171 facts->IOCStatus = le16toh(facts->IOCStatus); in adjust_iocfacts_endianness()
1172 facts->IOCLogInfo = le32toh(facts->IOCLogInfo); in adjust_iocfacts_endianness()
1173 facts->RequestCredit = le16toh(facts->RequestCredit); in adjust_iocfacts_endianness()
1174 facts->ProductID = le16toh(facts->ProductID); in adjust_iocfacts_endianness()
1175 facts->IOCCapabilities = le32toh(facts->IOCCapabilities); in adjust_iocfacts_endianness()
1176 facts->IOCRequestFrameSize = le16toh(facts->IOCRequestFrameSize); in adjust_iocfacts_endianness()
1177 facts->IOCMaxChainSegmentSize = le16toh(facts->IOCMaxChainSegmentSize); in adjust_iocfacts_endianness()
1178 facts->MaxInitiators = le16toh(facts->MaxInitiators); in adjust_iocfacts_endianness()
1179 facts->MaxTargets = le16toh(facts->MaxTargets); in adjust_iocfacts_endianness()
1180 facts->MaxSasExpanders = le16toh(facts->MaxSasExpanders); in adjust_iocfacts_endianness()
1181 facts->MaxEnclosures = le16toh(facts->MaxEnclosures); in adjust_iocfacts_endianness()
1182 facts->ProtocolFlags = le16toh(facts->ProtocolFlags); in adjust_iocfacts_endianness()
1183 facts->HighPriorityCredit = le16toh(facts->HighPriorityCredit); in adjust_iocfacts_endianness()
1184 facts->MaxReplyDescriptorPostQueueDepth = le16toh(facts->MaxReplyDescriptorPostQueueDepth); in adjust_iocfacts_endianness()
1185 facts->MaxDevHandle = le16toh(facts->MaxDevHandle); in adjust_iocfacts_endianness()
1186 facts->MaxPersistentEntries = le16toh(facts->MaxPersistentEntries); in adjust_iocfacts_endianness()
1187 facts->MinDevHandle = le16toh(facts->MinDevHandle); in adjust_iocfacts_endianness()
1194 mpr_get_iocfacts(struct mpr_softc *sc, MPI2_IOC_FACTS_REPLY *facts) in mpr_get_iocfacts() argument
1205 reply = (MPI2_DEFAULT_REPLY *)facts; in mpr_get_iocfacts()
1224 adjust_iocfacts_endianness(facts); in mpr_get_iocfacts()
1225 mpr_dprint(sc, MPR_TRACE, "facts->IOCCapabilities 0x%x\n", facts->IOCCapabilities); in mpr_get_iocfacts()
1422 sc->replyframesz = sc->facts->ReplyFrameSize * 4; in mpr_alloc_replies()
1558 if ((sc->facts->MsgVersion >= MPI2_VERSION_02_06) && in mpr_alloc_requests()
1559 (sc->facts->ProtocolFlags & MPI2_IOCFACTS_PROTOCOL_NVME_DEVICES)) { in mpr_alloc_requests()
2165 sc->facts = malloc(sizeof(MPI2_IOC_FACTS_REPLY), M_MPR, in mpr_attach()
2167 if (!sc->facts) { in mpr_attach()
2356 if (sc->facts != NULL) in mpr_free()
2357 free(sc->facts, M_MPR); in mpr_free()