mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-12-29 09:16:33 +00:00
48 lines
1.6 KiB
ReStructuredText
48 lines
1.6 KiB
ReStructuredText
|
.. SPDX-License-Identifier: GPL-2.0
|
||
|
.. Copyright (c) 2024 Collabora Ltd
|
||
|
|
||
|
=============================
|
||
|
Device testing with kselftest
|
||
|
=============================
|
||
|
|
||
|
|
||
|
There are a few different kselftests available for testing devices generically,
|
||
|
with some overlap in coverage and different requirements. This document aims to
|
||
|
give an overview of each one.
|
||
|
|
||
|
Note: Paths in this document are relative to the kselftest folder
|
||
|
(``tools/testing/selftests``).
|
||
|
|
||
|
Device oriented kselftests:
|
||
|
|
||
|
* Devicetree (``dt``)
|
||
|
|
||
|
* **Coverage**: Probe status for devices described in Devicetree
|
||
|
* **Requirements**: None
|
||
|
|
||
|
* Error logs (``devices/error_logs``)
|
||
|
|
||
|
* **Coverage**: Error (or more critical) log messages presence coming from any
|
||
|
device
|
||
|
* **Requirements**: None
|
||
|
|
||
|
* Discoverable bus (``devices/probe``)
|
||
|
|
||
|
* **Coverage**: Presence and probe status of USB or PCI devices that have been
|
||
|
described in the reference file
|
||
|
* **Requirements**: Manually describe the devices that should be tested in a
|
||
|
YAML reference file (see ``devices/probe/boards/google,spherion.yaml`` for
|
||
|
an example)
|
||
|
|
||
|
* Exist (``devices/exist``)
|
||
|
|
||
|
* **Coverage**: Presence of all devices
|
||
|
* **Requirements**: Generate the reference (see ``devices/exist/README.rst``
|
||
|
for details) on a known-good kernel
|
||
|
|
||
|
Therefore, the suggestion is to enable the error log and devicetree tests on all
|
||
|
(DT-based) platforms, since they don't have any requirements. Then to greatly
|
||
|
improve coverage, generate the reference for each platform and enable the exist
|
||
|
test. The discoverable bus test can be used to verify the probe status of
|
||
|
specific USB or PCI devices, but is probably not worth it for most cases.
|