Linux廣泛應(yīng)用于娛樂電子領(lǐng)域,節(jié)能是電子消費品的重要課題。
Linux電源管理非常復(fù)雜,牽扯到系統(tǒng)級的待機、頻率電壓變換、系統(tǒng)空閑時的處理以及每個設(shè)備驅(qū)動對于系統(tǒng)待機的支持和每個設(shè)備的運行時電源管理,可以說和系統(tǒng)中的每個設(shè)備驅(qū)動都息息相關(guān)。
對于消費電子產(chǎn)品來說,電源管理相當(dāng)重要。因此,這部分工作往往在開發(fā)周期中占據(jù)相當(dāng)大的比重,圖1呈現(xiàn)了Linux內(nèi)核電源管理的整體架構(gòu)。大體可以歸納為如下幾類:
1.CPU在運行時根據(jù)系統(tǒng)負(fù)載進(jìn)行動態(tài)電壓和頻率變換的CPUFreq。
2.CPU在系統(tǒng)空閑時根據(jù)空閑的情況進(jìn)行低功耗模式的CPUIdle。
3.多核系統(tǒng)下CPU的熱插拔支持。
4.系統(tǒng)和設(shè)備對于延遲的特別需求而提出申請的PMQoS,它會作用于CPUIdle的具體策略。
5.設(shè)備驅(qū)動針對系統(tǒng)SuspendtoRAM/Disk的一系列入口函數(shù)。
6.SoC進(jìn)入suspend狀態(tài)、SDRAM自刷新的入口。
7.設(shè)備的runtime(運行時)動態(tài)電源管理,根據(jù)使用情況動態(tài)開關(guān)設(shè)備。
8.底層的時鐘、穩(wěn)壓器、頻率/電壓表(OPP模塊完成)支撐,各驅(qū)動子系統(tǒng)都可能用到。
負(fù)責(zé)人:CC