btmrvl 驅動¶
所有命令都透過 debugfs 介面使用。
設定/獲取驅動配置¶
路徑: /debug/btmrvl/config/
- gpiogap=[n], hscfgcmd
這些命令用於配置主機睡眠引數:: 位 8:0 -- Gap 位 16:8 -- GPIO
其中 GPIO 是用於喚醒主機的 GPIO 引腳號。 它可以是任何有效的 GPIO 引腳號(例如 0-7)或 0xff(將改用 SDIO 介面喚醒)。
其中 Gap 是喚醒訊號和喚醒事件之間的毫秒間隔,或者 0xff 用於特殊的主機睡眠設定。
用法
# Use SDIO interface to wake up the host and set GAP to 0x80: echo 0xff80 > /debug/btmrvl/config/gpiogap echo 1 > /debug/btmrvl/config/hscfgcmd # Use GPIO pin #3 to wake up the host and set GAP to 0xff: echo 0x03ff > /debug/btmrvl/config/gpiogap echo 1 > /debug/btmrvl/config/hscfgcmd
- psmode=[n], pscmd
這些命令用於啟用/停用自動睡眠模式
選項是
1 -- Enable auto sleep mode 0 -- Disable auto sleep mode
用法
# Enable auto sleep mode echo 1 > /debug/btmrvl/config/psmode echo 1 > /debug/btmrvl/config/pscmd # Disable auto sleep mode echo 0 > /debug/btmrvl/config/psmode echo 1 > /debug/btmrvl/config/pscmd
- hsmode=[n], hscmd
這些命令用於啟用主機睡眠或喚醒韌體
選項是
1 -- Enable host sleep 0 -- Wake up firmware
用法
# Enable host sleep echo 1 > /debug/btmrvl/config/hsmode echo 1 > /debug/btmrvl/config/hscmd # Wake up firmware echo 0 > /debug/btmrvl/config/hsmode echo 1 > /debug/btmrvl/config/hscmd
獲取驅動狀態¶
路徑: /debug/btmrvl/status/
用法
cat /debug/btmrvl/status/<args>
引數是
- curpsmode
此命令顯示當前自動睡眠狀態。
- psstate
此命令顯示省電狀態。
- hsstate
此命令顯示主機睡眠狀態。
- txdnldrdy
此命令顯示 Tx 下載就緒標誌的值。
發出原始 hci 命令¶
使用 hcitool 發出原始 hci 命令,請參考 hcitool 手冊
用法
Hcitool cmd <ogf> <ocf> [Parameters]
介面控制命令
hcitool cmd 0x3f 0x5b 0xf5 0x01 0x00 --Enable All interface
hcitool cmd 0x3f 0x5b 0xf5 0x01 0x01 --Enable Wlan interface
hcitool cmd 0x3f 0x5b 0xf5 0x01 0x02 --Enable BT interface
hcitool cmd 0x3f 0x5b 0xf5 0x00 0x00 --Disable All interface
hcitool cmd 0x3f 0x5b 0xf5 0x00 0x01 --Disable Wlan interface
hcitool cmd 0x3f 0x5b 0xf5 0x00 0x02 --Disable BT interface
SD8688 韌體¶
映象
/lib/firmware/sd8688_helper.bin
/lib/firmware/sd8688.bin
映象可以從以下位置下載
git.infradead.org/users/dwmw2/linux-firmware.git/libertas/