如何使用CPU cooling API

2021-09-02 22:16:38 字數 1563 閱讀 4509

2.電源模型

通用cpu cooling(freq clipping)子系統為呼叫者提供registration/unregistration api。cooling devices與trip point的繫結留給使用者。註冊api返回cooling device指標。

1.1.1 struct thermal_cooling_device * cpufreq_cooling_register(

struct cpumask * clip_cpus)

此介面函式將cpufreq cooling裝置註冊為名稱「thermal-cpufreq-%x」。

這個api可以支援多個cpufreq冷卻裝置例項。

clip_cpus:cpus的cpumask,其中將發生頻率限制。

1.1.2 struct thermal_cooling_device * of_cpufreq_cooling_register(

struct cpufreq_policy * policy)

此介面函式將cpufreq cooling裝置註冊為名稱「thermal-cpufreq-%x」,

將其與裝置樹節點鏈結,以便通過thermal dt**繫結它。

這個api可以支援多個cpufreq cooling裝置例項。

策略:cpufreq策略。

1.1.3 void cpufreq_cooling_unregister(struct thermal_cooling_device * cdev)

該介面功能取消註冊「thermal-cpufreq-%x」冷卻裝置。

cdev:必須取消註冊的冷卻裝置指標。

電源api註冊函式為cpu提供了簡單的電源模型。功率計算為動態功率(當前不支援靜態功率)。此功耗模型要求使用核心的opp庫註冊cpu的頻點,並將cpufreq_frequency_table分配給cpu的struct device。如果你正在使用config_cpufreq_dt,那麼應該將cpufreq_frequency_table分配給cpu裝置。

處理器的動態功耗取決於許多因素。對於給定的處理器實現,主要因素是:

所以,高階動態功耗模型可表示為:

pdyn = f(run) * voltage^2 * frequency * utilisation

f(run) 此處表示所描述的執行行為,其結果的單位為watts/hz/volt^2

(這通常以mw/mhz/uvolt^2表示)

在此簡化表示中,我們的模型變為:

pdyn = capacitance * voltage^2 * frequency * utilisation

其中capacitance是乙個常數,表示基本單位為mw / mhz / uvolt ^ 2的指示執行時間動態功率係數。移動cpu的典型值可能在100到500之間。作為參考,arm的juno開發平台中soc的近似值對於cortex-a57群集為530,對於cortex-a53群集為140。

如何使用 滅火器如何使用

滅火器的種類不同使用方法也不相同,下面單獨針對乾粉滅火器 泡沫滅火器和二氧化碳滅火器使用方法說明。一 乾粉滅火器的使用方法 適用範圍 適用於撲救各種易燃 可燃液體和易燃 可燃氣體火災,以及電器裝置火災。1 右手拖著壓把,左手拖著滅火器底部,輕輕取下滅火器。2 右手提著滅火器到現場。3 除掉鉛封。4 ...

如何使用 如何正確使用定速巡航

現在隨著造車技術的不斷創新和改進,越來越多的高科技功能都應用到了汽車上,不僅提供了實用性,也讓我們享受到了科技的快感。今天我們就聊一聊一項可以實現車輛自動駕駛的功能 定速巡航。定速巡航 cruise control system 簡稱ccs,簡單的理解就是給車子設定乙個速度值,駕駛員只需要掌握方向,...

如何使用CFileDialog

cfiledialog的語法 cfiledialog bool bopenfiledialog,lpctstr lpszdefext null,lpctstr lpszfilename null,dword dwflags ofn hidereadonly ofn overwriteprompt,l...