2. 遙控器的 sysfs 節點

正如在ABI 檔案測試/sysfs-class-rc中定義的那樣,這些是控制遙控器的 sysfs 節點

2.1. /sys/class/rc/

/sys/class/rc/ 類子目錄屬於遙控器核心,併為配置紅外遙控器接收器提供了一個 sysfs 介面。

2.2. /sys/class/rc/rcN/

為每個遙控接收器裝置建立一個 /sys/class/rc/rcN 目錄,其中 N 是接收器的編號。

2.3. /sys/class/rc/rcN/protocols

讀取此檔案會返回可用協議的列表,例如

rc5 [rc6] nec jvc [sony]

啟用的協議顯示在 [] 括號中。

寫入“+proto”會將協議新增到已啟用協議的列表中。

寫入“-proto”會將協議從已啟用協議的列表中刪除。

寫入“proto”將僅啟用“proto”。

寫入“none”將停用所有協議。

如果使用了無效的協議組合或未知的協議名稱,寫入操作將失敗並返回 EINVAL

2.4. /sys/class/rc/rcN/filter

設定掃描碼過濾器的期望值。

/sys/class/rc/rcN/filter_mask 結合使用,以設定在過濾器掩碼中設定的位的期望值。如果硬體支援,則將忽略與過濾器不匹配的掃描碼。 否則,寫入操作將失敗並顯示錯誤。

如果當前協議已更改,則此值可能會重置為 0。

2.5. /sys/class/rc/rcN/filter_mask

設定要比較的位的掃描碼過濾器掩碼。 與 /sys/class/rc/rcN/filter 結合使用,以設定掃描碼的位,該掃描碼應與期望值進行比較。值為 0 會停用過濾器,以允許處理所有有效的掃描碼。

如果硬體支援,則將忽略與過濾器不匹配的掃描碼。 否則,寫入操作將失敗並顯示錯誤。

如果當前協議已更改,則此值可能會重置為 0。

2.6. /sys/class/rc/rcN/wakeup_protocols

讀取此檔案會返回可用於喚醒過濾器的可用協議列表,例如

rc-5 nec nec-x rc-6-0 rc-6-6a-24 [rc-6-6a-32] rc-6-mce

請注意,協議變體已列出,因此如果可用,則 necsonyrc-5rc-6 列出了它們的不同位長度編碼。

請注意,所有協議變體都已列出。

啟用的喚醒協議顯示在 [] 括號中。

一次只能選擇一種協議。

寫入“proto”會將“proto”用於喚醒事件。

寫入“none”將停用喚醒。

如果使用了無效的協議組合或未知的協議名稱,或者硬體不支援喚醒,則寫入操作將失敗並返回 EINVAL

2.7. /sys/class/rc/rcN/wakeup_filter

設定掃描碼喚醒過濾器的期望值。 與 /sys/class/rc/rcN/wakeup_filter_mask 結合使用,以設定喚醒過濾器掩碼中設定的位的期望值,以觸發系統喚醒事件。

如果硬體支援且 wakeup_filter_mask 不為 0,則與過濾器匹配的掃描碼將使系統從例如掛起到 RAM 或斷電狀態喚醒。 否則,寫入操作將失敗並顯示錯誤。

如果喚醒協議已更改,則此值可能會重置為 0。

2.8. /sys/class/rc/rcN/wakeup_filter_mask

設定要比較的位的掃描碼喚醒過濾器掩碼。 與 /sys/class/rc/rcN/wakeup_filter 結合使用,以設定掃描碼的位,該掃描碼應與期望值進行比較,以觸發系統喚醒事件。

如果硬體支援且 wakeup_filter_mask 不為 0,則與過濾器匹配的掃描碼將使系統從例如掛起到 RAM 或斷電狀態喚醒。 否則,寫入操作將失敗並顯示錯誤。

如果喚醒協議已更改,則此值可能會重置為 0。