The UFS 2.1 Host Stack is a stack developed for UFS Host Controllers that are used to connect to UFS devices via UniPro/M-PHY. The stack can also be used for validating a UFS device during its development and integration life cycles thereby helping designers to reduce the time to market for their product.
The modular UFS 2.1 Host Stack is architected to be OS and platform independent which eases porting effort. It has thin OS and hardware abstraction layers making it highly portable.
The UFS 2.1 Host Stack has a low-level hardware layer that is purely OS independent and users can use this layer alone for UFS host/device validation with no driver complexity. The UFS stack provides a generic API set to access, control, and configure the bus driver, host controller driver, and the underlying hardware. The stack includes functions for UFS initialization, UniPro attributes configuration, sending/Receiving of commands/tasks in the form of UPIUs, data transfer, UFS interrupt handling, UFS device configuration, and UFS host controller hardware configuration. The UFS 2.1 Host Stack can support a single UFS host controller with a single UFS Device.