Skip to content

Commit 0fb0130

Browse files
committed
feat(ATF): document SCMI for AM62L
Add some more documentation talking about the transition to SCMI from TI SCI and also add what all we now support in TF-A via the SCMI interface. While at it, replace instance of ATF with TF-A throughout to align with currently recognized terminology. Signed-off-by: Dhruva Gole <[email protected]>
1 parent 0d80c6a commit 0fb0130

File tree

1 file changed

+38
-0
lines changed

1 file changed

+38
-0
lines changed

source/linux/Foundational_Components_ATF.rst

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,44 @@ on to either the Linux kernel or U-Boot in the non-secure world.
2424
The SCMI IDs used in the AM62L TF-A implementation are documented in the
2525
`TF-A documentation <https://github.com/TexasInstruments/arm-trusted-firmware/blob/ti-master/docs/plat/ti-am62l.rst>`__.
2626

27+
.. rubric:: SCMI and TI SCI
28+
29+
The AM62Lx represents a transition in Texas Instruments' approach to system control
30+
interfaces. In the previous K3 devices, the Texas Instruments System Controller Interface (TI SCI)
31+
was the primary protocol used for power, clock, and resource management. SCMI now serves
32+
as a replacement for newer devices like the AM62L, offering similar functionality through
33+
an industry-standard ARM protocol. This transition is in part due to the absence of any Device
34+
Management (R5 core) in the AM62Lx.
35+
36+
.. rubric:: Implementation Overview
37+
38+
The AM62L TF-A implementation runs a SCMI server that manages:
39+
40+
* **Power Domains**: Over 100 power domains are defined for various peripherals and subsystems
41+
* **Clock Management**: Extensive clock control for all major peripherals including:
42+
43+
- Multiple clock sources (PLLs, oscillators, external clocks)
44+
- Clock multiplexers for flexible clock routing
45+
- Clock dividers for frequency scaling
46+
- Support for dynamic clock rate configuration
47+
48+
.. rubric:: Clock Infrastructure
49+
50+
The clock management system supports:
51+
52+
* **Parent Clock Selection** - Multiple clock sources can be selected as parents for each peripheral
53+
* **Clock Multiplexing** - Dynamic switching between different clock sources
54+
* **Rate Configuration** - Flexible frequency configuration within supported ranges
55+
56+
.. rubric:: Usage in Linux
57+
58+
Linux kernel drivers can use standard SCMI client APIs to:
59+
60+
* Request power state changes for devices
61+
* Configure clock rates and parents
62+
* Query current power and clock states
63+
* Implement dynamic power management policies
64+
2765
|
2866
2967
.. rubric:: Getting the TF-A Source Code

0 commit comments

Comments
 (0)