MPR_PRINTFIELD
MPR_PRINTFIELD(sc, facts, MsgVersion, 0x%x);
MPR_PRINTFIELD(sc, facts, HeaderVersion, 0x%x);
MPR_PRINTFIELD(sc, facts, IOCNumber, %d);
MPR_PRINTFIELD(sc, facts, IOCExceptions, 0x%x);
MPR_PRINTFIELD(sc, facts, MaxChainDepth, %d);
MPR_PRINTFIELD(sc, facts, NumberOfPorts, %d);
MPR_PRINTFIELD(sc, facts, MaxMSIxVectors, %d);
MPR_PRINTFIELD(sc, facts, RequestCredit, %d);
MPR_PRINTFIELD(sc, facts, ProductID, 0x%x);
MPR_PRINTFIELD(sc, facts, IOCRequestFrameSize, %d);
MPR_PRINTFIELD(sc, facts, MaxInitiators, %d);
MPR_PRINTFIELD(sc, facts, MaxTargets, %d);
MPR_PRINTFIELD(sc, facts, MaxSasExpanders, %d);
MPR_PRINTFIELD(sc, facts, MaxEnclosures, %d);
MPR_PRINTFIELD(sc, facts, HighPriorityCredit, %d);
MPR_PRINTFIELD(sc, facts, MaxReplyDescriptorPostQueueDepth, %d);
MPR_PRINTFIELD(sc, facts, ReplyFrameSize, %d);
MPR_PRINTFIELD(sc, facts, MaxVolumes, %d);
MPR_PRINTFIELD(sc, facts, MaxDevHandle, %d);
MPR_PRINTFIELD(sc, facts, MaxPersistentEntries, %d);
MPR_PRINTFIELD(sc, facts, PortNumber, %d);
MPR_PRINTFIELD(sc, facts, PortType, 0x%x);
MPR_PRINTFIELD(sc, facts, MaxPostedCmdBuffers, %d);
MPR_PRINTFIELD(sc, event, EventDataLength, %d);
MPR_PRINTFIELD(sc, event, AckRequired, %d);
MPR_PRINTFIELD(sc, event, EventContext, 0x%x);
MPR_PRINTFIELD(sc, buf, Slot, %d);
MPR_PRINTFIELD(sc, buf, EnclosureHandle, 0x%x);
MPR_PRINTFIELD(sc, buf, ParentDevHandle, 0x%x);
MPR_PRINTFIELD(sc, buf, PhyNum, %d);
MPR_PRINTFIELD(sc, buf, AccessStatus, 0x%x);
MPR_PRINTFIELD(sc, buf, DevHandle, 0x%x);
MPR_PRINTFIELD(sc, buf, AttachedPhyIdentifier, 0x%x);
MPR_PRINTFIELD(sc, buf, ZoneGroup, %d);
MPR_PRINTFIELD(sc, buf, Flags, 0x%x);
MPR_PRINTFIELD(sc, buf, PhysicalPort, %d);
MPR_PRINTFIELD(sc, buf, MaxPortConnections, %d);
MPR_PRINTFIELD(sc, buf, PortGroups, %d);
MPR_PRINTFIELD(sc, buf, DmaGroup, %d);
MPR_PRINTFIELD(sc, buf, ControlGroup, %d);
MPR_PRINTFIELD(sc, data, PhysicalPort, %d);
MPR_PRINTFIELD(sc, data, EnclosureHandle, 0x%x);
MPR_PRINTFIELD(sc, data, ExpanderDevHandle, 0x%x);
MPR_PRINTFIELD(sc, data, NumPhys, %d);
MPR_PRINTFIELD(sc, data, NumEntries, %d);
MPR_PRINTFIELD(sc, data, StartPhyNum, %d);
MPR_PRINTFIELD(sc, data, PhysicalPort, %d);
MPR_PRINTFIELD(sc, data, EnclosureHandle, 0x%x);
MPR_PRINTFIELD(sc, data, PhysicalPort, %d);
MPR_PRINTFIELD(sc, data, NumSlots, %d);
MPR_PRINTFIELD(sc, data, StartSlot, %d);
MPR_PRINTFIELD(sc, data, PhyBits, 0x%x);
MPR_PRINTFIELD(sc, data, TaskTag, 0x%x);
MPR_PRINTFIELD(sc, data, ASC, 0x%x);
MPR_PRINTFIELD(sc, data, ASCQ, 0x%x);
MPR_PRINTFIELD(sc, data, DevHandle, 0x%x);
MPR_PRINTFIELD(sc, buf, PhysicalPort, %d);
MPR_PRINTFIELD(sc, buf, NumPhys, %d);
MPR_PRINTFIELD(sc, buf, Phy, %d);
MPR_PRINTFIELD(sc, buf, NumTableEntriesProgrammed, %d);
MPR_PRINTFIELD(sc, buf, AttachedDevHandle, 0x%04x);
MPR_PRINTFIELD(sc, buf, ExpanderDevHandle, 0x%04x);
MPR_PRINTFIELD(sc, buf, ChangeCount, %d);
MPR_PRINTFIELD(sc, buf, PhyIdentifier, %d);
MPR_PRINTFIELD(sc, buf, AttachedPhyIdentifier, %d);
MPR_PRINTFIELD(sc, buf, DiscoveryInfo, 0x%x);
MPR_PRINTFIELD(sc, buf, AttachedPhyInfo, 0x%x);
MPR_PRINTFIELD(sc, buf, ZoneGroup, %d);
MPR_PRINTFIELD(sc, buf, SelfConfigStatus, 0x%x);
MPR_PRINTFIELD(sc, buf, OwnerDevHandle, 0x%04x);
MPR_PRINTFIELD(sc, buf, AttachedDevHandle, 0x%04x);
MPR_PRINTFIELD(sc, buf, AttachedPhyIdentifier, %d);
MPR_PRINTFIELD(sc, buf, ChangeCount, %d);
MPR_PRINTFIELD(sc, buf, Flags, 0x%x);