SDAA069 August   2025 TDA4VL-Q1

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. 1Introduction
    1. 1.1 Overview of TDA4VL SoC
    2. 1.2 Purpose of the Document
    3. 1.3 Target Audience and Applications
    4. 1.4 Problem Statement
  5. 2Dynamic Frequency Scaling (DFS) in Linux
    1. 2.1 What is DFS?
    2. 2.2 Linux CPUFREQ Framework
    3. 2.3 Supported CPUFREQ Governors
    4. 2.4 DFS Support Status on TI SoCs
  6. 3Linux Thermal Framework
    1. 3.1 Thermal Zones and Trip Points
    2. 3.2 Cooling Mechanisms: Passive vs Active
    3. 3.3 Role of DFS in Passive Cooling
  7. 4Thermal Support on TDA4VL Devices
    1. 4.1 VTM and Bandgap Sensor Initialization
    2. 4.2 Temperature Monitoring via k3_j7xxx_bandgap Driver
  8. 5Enabling CPU Cooling on TDA4VL
    1. 5.1 Patch to Enable CPU Cooling
    2. 5.2 Testing the Cooling Functionality on TDA4VL
  9. 6Scalability Across TDA4 and Sitara Devices
    1. 6.1 Adapting the Implementation
  10. 7Summary
  11. 8References

Linux CPUFREQ Framework

The Linux kernel provides a standardized interface called the CPUFREQ framework to enable and control DFS. The framework allows users and system software to switch between different hardware-supported CPU frequencies during runtime.

Key components of the CPUFREQ framework include:

  • CPU frequency drivers: These interface with hardware-specific mechanisms to control CPU clocks.
  • Governors: Algorithms that decide when and how to change CPU frequency
  • Sysfs Interface: Allows user-space interaction with the CPUFREQ subsystem (for example, /sys/devices/system/cpu/cpu*/cpufreq/ )