使用 kselftest 進行裝置測試¶
有幾種不同的 kselftest 可用於通用裝置測試,它們在覆蓋範圍上有所重疊,並且有不同的要求。本文件旨在概述每種測試。
注意:本文件中的路徑是相對於 kselftest 資料夾(tools/testing/selftests)的。
面向裝置的 kselftest
裝置樹(
dt)覆蓋範圍:裝置樹中描述的裝置的探測狀態
要求:無
錯誤日誌(
devices/error_logs)覆蓋範圍:來自任何裝置的錯誤(或更關鍵的)日誌訊息是否存在
要求:無
可發現匯流排(
devices/probe)覆蓋範圍:在參考檔案中描述的 USB 或 PCI 裝置是否存在及探測狀態
要求:在 YAML 參考檔案中手動描述應測試的裝置(參見
devices/probe/boards/google,spherion.yaml以獲取示例)
存在(
devices/exist)覆蓋範圍:所有裝置是否存在
要求:在已知良好的核心上生成參考檔案(詳情請參見
devices/exist/README.rst)
因此,建議在所有(基於 DT 的)平臺上啟用錯誤日誌和裝置樹測試,因為它們沒有任何要求。然後,為了大大提高覆蓋率,為每個平臺生成參考檔案並啟用存在性測試。可發現匯流排測試可用於驗證特定 USB 或 PCI 裝置的探測狀態,但在大多數情況下可能不值得。