德州儀器 TPS6594 PFSM 驅動¶
作者:Julien Panis (jpanis@baylibre.com)
概述¶
嚴格來說,PFSM(可預配置有限狀態機)並非硬體。它是一段程式碼。
TPS6594 PMIC(電源管理積體電路)集成了一個管理操作模式的狀態機。根據當前的操作模式,一些電壓域保持通電,而其他電壓域可以關閉。
PFSM 驅動程式可用於觸發配置狀態之間的轉換。它還提供對裝置暫存器的讀/寫訪問。
支援的晶片¶
tps6594-q1
tps6593-q1
lp8764-q1
驅動位置¶
drivers/misc/tps6594-pfsm.c
驅動型別定義¶
include/uapi/linux/tps6594_pfsm.h
驅動 IOCTL¶
:c:macro::PMIC_GOTO_STANDBY 所有裝置資源都已斷電。處理器關閉,並且沒有電壓域通電。
:c:macro::PMIC_GOTO_LP_STANDBY PMIC 中不需要始終開啟的數字和模擬功能已關閉(低功耗模式)。
:c:macro::PMIC_UPDATE_PGM 觸發韌體更新。
:c:macro::PMIC_SET_ACTIVE_STATE 一種操作模式。PMIC 完全正常工作併為所有 PDN 負載供電。MCU 和主處理器部分的所有電壓域都已通電。
:c:macro::PMIC_SET_MCU_ONLY_STATE 一種操作模式。只有分配給 MCU 安全島的電源資源處於開啟狀態。
:c:macro::PMIC_SET_RETENTION_STATE 一種操作模式。根據設定的觸發器,部分 DDR/GPIO 電壓域可以保持通電,而所有其他域則關閉以最大程度地降低系統總功耗。
驅動用法¶
檢視可用的 PFSM
# ls /dev/pfsm*
轉儲頁面 0 和 1 的暫存器
# hexdump -C /dev/pfsm-0-0x48
檢視 PFSM 事件
# cat /proc/interrupts
使用者空間程式碼示例¶
samples/pfsm/pfsm-wakeup.c