Skip to content

Commit ddc6f20

Browse files
author
Ajay Neeli
committed
doc: peripherals: Add doc for UFSHC peripheral
Add documentation for the UFS Host Controller (UFSHC) driver, which provides a generic interface for interacting with UFS host controller devices. It is used by the UFS subsystem to manage UFS-based storage devices. The documentation covers key aspects of the UFSHC, including initialization, transfer request handling, query requests, and configuration options, helping developers understand how to integrate and work with the UFS subsystem effectively. Signed-off-by: Ajay Neeli <[email protected]>
1 parent 41f3f08 commit ddc6f20

File tree

2 files changed

+62
-0
lines changed

2 files changed

+62
-0
lines changed

doc/hardware/peripherals/index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ Peripherals
5858
stepper.rst
5959
smbus.rst
6060
uart.rst
61+
ufshc.rst
6162
usbc_vbus.rst
6263
tcpc.rst
6364
tgpio.rst

doc/hardware/peripherals/ufshc.rst

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
.. _ufs_api:
2+
3+
Universal Flash Storage (UFS)
4+
#############################
5+
6+
The UFS Host Controller driver api offers a generic interface for interacting
7+
with a UFS host controller device. It is used by the UFS subsystem, and is
8+
not intended to be directly used by the application.
9+
10+
UFS Host Controller (UFSHC) Overview
11+
************************************
12+
13+
The UFS host controller driver is based on SCSI Framework. UFSHC is a low
14+
level device driver for UFS subsystem. The UFS subsystem acts as an interface
15+
between SCSI and UFS Host controllers.
16+
17+
The current UFS subsystem implementation supports the following functionality:
18+
19+
UFS controller initialization
20+
=============================
21+
22+
Prepares the UFS Host Controller to transfer commands/responses between UFSHC
23+
and UFS device.
24+
25+
.. _ufs-init-api:
26+
27+
Transfer requests
28+
=================
29+
30+
It handles SCSI commands from SCSI subsystem, form UPIUs and issues UPIUs to
31+
the UFS Host controller.
32+
33+
.. _ufs-scsi-api:
34+
35+
Query Request
36+
=============
37+
38+
It handles query requests which are used to modify and retrieve configuration
39+
information of the device.
40+
41+
.. _ufs-query-api:
42+
43+
Configuration Options
44+
*********************
45+
46+
Related configuration options:
47+
48+
* :kconfig:option:`CONFIG_UFSHC`
49+
* :kconfig:option:`CONFIG_UFS_STACK`
50+
* :kconfig:option:`CONFIG_SCSI`
51+
52+
API Reference
53+
*************
54+
55+
UFS subsystem APIs are provided by ufs.h
56+
57+
.. doxygengroup:: ufs_interface
58+
59+
UFS Host Controller (UFSHC) APIs are provided by ufshc.h
60+
61+
.. doxygengroup:: ufshc_interface

0 commit comments

Comments
 (0)