.. SPDX-License-Identifier: GPL-2.0 ======================== Device Frequency Scaling ======================== Introduction ------------ This framework provides a standard kernel interface for Dynamic Voltage and Frequency Switching on arbitrary devices. It exposes controls for adjusting frequency through sysfs files which are similar to the cpufreq subsystem. Devices for which current usage can be measured can have their frequency automatically adjusted by governors. API --- Device drivers need to initialize a :c:type:`devfreq_profile` and call the :c:func:`devfreq_add_device` function to create a :c:type:`devfreq` instance. .. kernel-doc:: include/linux/devfreq.h .. kernel-doc:: include/linux/devfreq-event.h .. kernel-doc:: drivers/devfreq/devfreq.c :export: .. kernel-doc:: drivers/devfreq/devfreq-event.c :export: