Skip to content

Commit e1f4f89

Browse files
mwaskodeb-intel
authored andcommitted
arch: fw: sof-zephyr io drivers
sof-zephyr rtos architecture chapter for io drivers Signed-off-by: Michal Wasko <[email protected]>
1 parent e5a27a4 commit e1f4f89

File tree

3 files changed

+38
-0
lines changed

3 files changed

+38
-0
lines changed

architectures/firmware/sof-zephyr/rtos_layer/index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,3 +11,4 @@ workloads.
1111
:maxdepth: 1
1212

1313
zephyr_kernel_overview
14+
io_drivers/index
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
frame "SOF" {
2+
component Gateway
3+
component GatewayExtension <<type>>
4+
}
5+
6+
frame "Zephyr" {
7+
component IoDriver <<type>>
8+
component DMA
9+
}
10+
11+
Gateway *-right- GatewayExtension
12+
13+
Gateway -down- IoDriver
14+
Gateway -down- DMA
15+
16+
GatewayExtension ..> IoDriver
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
.. _io_drivers:
2+
3+
IO Drivers
4+
##########
5+
6+
The IO Drivers provide access to an IO HW Interfaces connected to the DSP, e.g.
7+
I2S, DMIC, etc. and are managed as a part of the Zephyr RTOS. The Audio IO
8+
Drivers share generic `Zephyr DAI interface <https://docs.zephyrproject.org/apidoc/latest/group__dai__interface.html>`__.
9+
For a full list of IO drivers available on the specific platform, refer to
10+
:ref:`platforms`. HW IO is accessed via the `Gateway` interface inside the FW.
11+
The actual implementation of that interface depends on the underlying HW IO
12+
mechanism. Gateways use the Zephyr DMA interface to transmit the data to/from
13+
the represented HW IO. DMA interface implementation depends on the underlying
14+
DMA method (HDA-DMA, GPDMA, etc.).
15+
16+
**NOTE:** The introduction of Gateways concept to SOF with Zephyr is a work in
17+
progress. In existing implementation the SOF Host and DAI implementation is
18+
still in use as a substitute of Gateways.
19+
20+
.. uml:: images/io_drivers_diagram.pu
21+
:caption: IO Drivers diagram

0 commit comments

Comments
 (0)