5.DeviceInterfaceState.md
July 10, 2024 ยท View on GitHub
5. Test Case for DEVICE_INTERFACE_STATE
Case 5.1
Description: TDISP responder shall return valid DEVICE_INTERFACE_STATE, if it receives a GET_DEVICE_INTERFACE_STATE in CONFIG_UNLOCKED state.
TestSetup:
- Requester -> GET_TDISP_VERSION {TDISPVersion=0x10, INTERFACE_ID=TDI_ID}
- TDISP_VERSION <- Responder
- Requester -> GET_TDISP_CAPABILITIES {TDISPVersion=0x10, INTERFACE_ID=TDI_ID}
- TDISP_CAPABILITIES <- Responder
TestTeardown:
- Requester -> STOP_INTERFACE_REQUEST {TDISPVersion=0x10, INTERFACE_ID=TDI_ID}
- STOP_INTERFACE_RESPONSE <- Responder
Steps:
- Requester -> GET_DEVICE_INTERFACE_STATE {TDISPVersion=0x10, INTERFACE_ID=TDI_ID}
- TdispMessage <- Responder
Assertion 5.1.1: sizeof(TdispMessage) == sizeof(DEVICE_INTERFACE_STATE)
Assertion 5.1.2: TdispMessage.MessageType == DEVICE_INTERFACE_STATE
Assertion 5.1.3: TdispMessage.TDISPVersion == 0x10
Assertion 5.1.4: TdispMessage.INTERFACE_ID == GET_DEVICE_INTERFACE_STATE.INTERFACE_ID
Assertion 5.1.5: TdispMessage.TDI_STATE == CONFIG_UNLOCKED
Case 5.2
Description: TDISP responder shall return valid DEVICE_INTERFACE_STATE, if it receives a GET_DEVICE_INTERFACE_STATE in CONFIG_LOCKED state.
TestSetup:
- Requester -> GET_TDISP_VERSION {TDISPVersion=0x10, INTERFACE_ID=TDI_ID}
- TDISP_VERSION <- Responder
- Requester -> GET_TDISP_CAPABILITIES {TDISPVersion=0x10, INTERFACE_ID=TDI_ID}
- TDISP_CAPABILITIES <- Responder
- Setup IDE Key with IDE_KM protocol for default_Selective_IDE_Stream_ID.
- Requester -> LOCK_INTERFACE_REQUEST {TDISPVersion=0x10, INTERFACE_ID=TDI_ID, FLAGS=TDISP_CAPABILITIES.LOCK_INTERFACE_FLAGS_SUPPORTED, StreamID=default_Selective_IDE_Stream_ID, MMIO_REPORTING_OFFSET, BIND_P2P_ADDRESS_MASK=0}
- LOCK_INTERFACE_RESPONSE <- Responder
TestTeardown:
- Requester -> STOP_INTERFACE_REQUEST {TDISPVersion=0x10, INTERFACE_ID=TDI_ID}
- STOP_INTERFACE_RESPONSE <- Responder
Steps:
- Requester -> GET_DEVICE_INTERFACE_STATE {TDISPVersion=0x10, INTERFACE_ID=TDI_ID}
- TdispMessage <- Responder
Assertion 5.2.1: sizeof(TdispMessage) == sizeof(DEVICE_INTERFACE_STATE)
Assertion 5.2.2: TdispMessage.MessageType == DEVICE_INTERFACE_STATE
Assertion 5.2.3: TdispMessage.TDISPVersion == 0x10
Assertion 5.2.4: TdispMessage.INTERFACE_ID == GET_DEVICE_INTERFACE_STATE.INTERFACE_ID
Assertion 5.2.5: TdispMessage.TDI_STATE == CONFIG_LOCKED
Case 5.3
Description: TDISP responder shall return valid DEVICE_INTERFACE_STATE, if it receives a GET_DEVICE_INTERFACE_STATE in RUN state.
TestSetup:
- Requester -> GET_TDISP_VERSION {TDISPVersion=0x10, INTERFACE_ID=TDI_ID}
- TDISP_VERSION <- Responder
- Requester -> GET_TDISP_CAPABILITIES {TDISPVersion=0x10, INTERFACE_ID=TDI_ID}
- TDISP_CAPABILITIES <- Responder
- Setup IDE Key with IDE_KM protocol for default_Selective_IDE_Stream_ID.
- Requester -> LOCK_INTERFACE_REQUEST {TDISPVersion=0x10, INTERFACE_ID=TDI_ID, FLAGS=TDISP_CAPABILITIES.LOCK_INTERFACE_FLAGS_SUPPORTED, StreamID=default_Selective_IDE_Stream_ID, MMIO_REPORTING_OFFSET, BIND_P2P_ADDRESS_MASK=0}
- LOCK_INTERFACE_RESPONSE <- Responder
- Requester -> START_INTERFACE_REQUEST {TDISPVersion=0x10, INTERFACE_ID=TDI_ID, START_INTERFACE_NONCE=LOCK_INTERFACE_RESPONSE.START_INTERFACE_NONCE}
- START_INTERFACE_RESPONSE <- Responder
TestTeardown:
- Requester -> STOP_INTERFACE_REQUEST {TDISPVersion=0x10, INTERFACE_ID=TDI_ID}
- STOP_INTERFACE_RESPONSE <- Responder
Steps:
- Requester -> GET_DEVICE_INTERFACE_STATE {TDISPVersion=0x10, INTERFACE_ID=TDI_ID}
- TdispMessage <- Responder
Assertion 5.3.1: sizeof(TdispMessage) == sizeof(DEVICE_INTERFACE_STATE)
Assertion 5.3.2: TdispMessage.MessageType == DEVICE_INTERFACE_STATE
Assertion 5.3.3: TdispMessage.TDISPVersion == 0x10
Assertion 5.3.4: TdispMessage.INTERFACE_ID == GET_DEVICE_INTERFACE_STATE.INTERFACE_ID
Assertion 5.3.5: TdispMessage.TDI_STATE == RUN
Case 5.4
Description: TDISP responder shall return valid DEVICE_INTERFACE_STATE, if it receives a GET_DEVICE_INTERFACE_STATE in CONFIG_UNLOCKED state after STOP_INTERFACE_REQUEST.
TestSetup:
- Requester -> GET_TDISP_VERSION {TDISPVersion=0x10, INTERFACE_ID=TDI_ID}
- TDISP_VERSION <- Responder
- Requester -> GET_TDISP_CAPABILITIES {TDISPVersion=0x10, INTERFACE_ID=TDI_ID}
- TDISP_CAPABILITIES <- Responder
- Setup IDE Key with IDE_KM protocol for default_Selective_IDE_Stream_ID.
- Requester -> LOCK_INTERFACE_REQUEST {TDISPVersion=0x10, INTERFACE_ID=TDI_ID, FLAGS=TDISP_CAPABILITIES.LOCK_INTERFACE_FLAGS_SUPPORTED, StreamID=default_Selective_IDE_Stream_ID, MMIO_REPORTING_OFFSET, BIND_P2P_ADDRESS_MASK=0}
- LOCK_INTERFACE_RESPONSE <- Responder
- Requester -> START_INTERFACE_REQUEST {TDISPVersion=0x10, INTERFACE_ID=TDI_ID, START_INTERFACE_NONCE=LOCK_INTERFACE_RESPONSE.START_INTERFACE_NONCE}
- START_INTERFACE_RESPONSE <- Responder
- Requester -> STOP_INTERFACE_REQUEST {TDISPVersion=0x10, INTERFACE_ID=TDI_ID}
- STOP_INTERFACE_RESPONSE <- Responder
TestTeardown:
- Requester -> STOP_INTERFACE_REQUEST {TDISPVersion=0x10, INTERFACE_ID=TDI_ID}
- STOP_INTERFACE_RESPONSE <- Responder
Steps:
- Requester -> GET_DEVICE_INTERFACE_STATE {TDISPVersion=0x10, INTERFACE_ID=TDI_ID}
- TdispMessage <- Responder
Assertion 5.4.1: sizeof(TdispMessage) == sizeof(DEVICE_INTERFACE_STATE)
Assertion 5.4.2: TdispMessage.MessageType == DEVICE_INTERFACE_STATE
Assertion 5.4.3: TdispMessage.TDISPVersion == 0x10
Assertion 5.4.4: TdispMessage.INTERFACE_ID == GET_DEVICE_INTERFACE_STATE.INTERFACE_ID
Assertion 5.4.5: TdispMessage.TDI_STATE == CONFIG_UNLOCKED