|
InfiniBand Test Specification
1.0.38
|
Inherits MadTest.
Public Member Functions | |
| boolean | nvramNotUsed () throws TestException |
Private Member Functions | |
| boolean | nvramUsed () throws TestException |
24.1.4.7 V1C14-023 M_KEY COMPONENTS IN NVRAM
NOTE: this test is in 2 parts, with and w/o nvram. w/o is implemented, need to first query portinfo to see if nvram is being used, then execute the appropriate test (that is what agilent does)
Abstract: Check that PortInfo:M_Key, PortInfo:M_KeyProtectBits, and Port-
Info:M_KeyLeasePeriod are properly initialized either from NVRAM (if used) or with default values. Also check that these PortInfo components are modified with a single SubnSet(PortInfo).
Coverage: v1c13-024,v1c14-022, v1c14-023
Topology Configuration: SimpleLink: Tester=MAD Tester; Width=1X, 2X, 4X, 8X, or 12X; Speed=SDR, DDR, QDR, FDR, EDR, HDR; DUT=Node.
DUT Qualifiers: See Algorithm, depends on whether NVRAM initializes M_Key Components.
Notes: 1. SMP_DATA is a variable of type MadPacketSpec.
| boolean nvramNotUsed | ( | ) | throws TestException |
14.1.4.7.1 M_KEY COMPONENT INITIALIZATION WHEN NVRAM IS NOT USED
Assertions: v1c14-023#01, v1c14-022#01
DUT Qualifiers: NVRAM not used
Notes:
Initialization:
DUT PortInfo:PortState = Initialize, Armed, or Active for both MADTester and DUT.
Bring port state to active.
Test Procedure:
SendDirectedRoutMad( SubnGet(PortInfo) )
SMP_DATA = ReceiveMad( SubnGetResp(PortInfo) )
Verify SMP_DATA format:
SendMad( SubnSet(PortInfo, where PortInfo:M_Key, PortInfo:M_KeyProtectBits, and Port-Info:M_KeyLeasePeriod are non-zero ) )
SMP_DATA = ReceiveMad( SubnGetResp(PortInfo) )
Verify SMP_DATA format:
Verify SMP_DATA format:
Power on or reset DUT.
Wait for DUT PortInfo:PortState = Initialize.
SendDirectedRoutMad( SubnGet(PortInfo) )
SMP_DATA = ReceiveMad( SubnGetResp(PortInfo) )
Verify SMP_DATA format:
Reset M_Key values back to there original values
|
private |
14.1.4.7.2 M_KEY COMPONENT INITIALIZATION WHEN NVRAM IS USED
Assertions: v1c13-024#01 (cont), v1c14-023#02, v1c14-022#01
DUT Qualifiers: NVRAM used
Notes:
Initialization:
DUT PortInfo:PortState = Initialize, Armed, or Active for both MADTester and DUT.
Test Procedure:
SendDirectedRouteMad( SubnGet(PortInfo) whereMADHeader:M_Key=NVRAM_MKEY )
SMP_DATA = ReceiveMad( SubnGetResp(PortInfo) )
VerifyMad( SMP_DATA, MADHeader:Status == 0 ) // v1c13-024#01 (cont)
SendMad( SubnSet(PortInfo, where PortInfo:M_Key, PortInfo:M_KeyProtectBits, and PortInfo:M_KeyLeasePeriod are non-zero) where MAD- Header:M_Key=NVRAM_MKEY )
SMP_DATA = ReceiveMad( SubnGetResp(PortInfo) )
Verify SMP_DATA format:
NVRAM_MKEY = SMP_DATA.PortInfo:M_Key
NVRAM_MKEY_PROTECTBITS = SMP_Data.PortInfo:M_KeyProtectBits
NVRAM_MKEY_LEASEPERIOD = SMP_Data.PortInfo:M_KeyLeasePeriod
Power on or reset DUT.
Wait for DUT PortInfo:PortState = Initialize.
SendDirectedRouteMad( SubnGet(PortInfo) where MADHeader:M_Key=NVRAM_MKEY )
SMP_DATA = ReceiveMad( SubnGetResp(PortInfo) )
Verify SMP_DATA format:
Reset M_Key values back to there original values