SPRUIL1D May 2019 – December 2024 DRA829J , DRA829J-Q1 , DRA829V , DRA829V-Q1 , TDA4VM , TDA4VM-Q1
This section provides details on the transactions, protocol elements, and data structures which need to be used to control the UFS host controller, MIPI UniPro stack, and external device. The transactions are built by the system hosts and sent to the UFS controller via the UTP Transfer Request List, the UTP Task Management Request List, and the UTP Command Descriptors.
While some transactions are already prepared as UPIU packets by the host software, for some other transactions (mainly the transfer of the raw data), the UPIU packets need to be constructed first. The construction takes place on the fly in the UFS Controller as listed in Table 12-401.
Command | Format | Action |
---|---|---|
UTP Command | UTP Transfer Request List | Send to device |
DME Command | Register Access | Access UniPro stack |
Task Management Command | UTP Task Management Request List | Send to device |
To send commands to the UFS host controller, UniPro stack, and UFS device, the system host needs to perform a series of setup and configurations steps. The following list gives a brief summary on the necessary sequence:
For a detailed description, refer to Section 12.3.7.5.2.2, UFS Theory of Operation.
The UFS host controller starts processing the UTP Transfer Request List and UTP Task Management Request List.
Once the UFS host controller has finished processing a command, it updates the status field in the UTP Transfer Request List (UTP Task Management Request List) or UTP Command Descriptor respectively.
The UFS Transport Protocol (UTP) commands are commands based on UPIU packets. To set up the communication, both the transaction lists as well as the command descriptors need to be programmed.