Skip to content

Commit

Permalink
docs: Add page for device tests
Browse files Browse the repository at this point in the history
Add a page with a brief overview of device tests and how to enable them
with pointers to the relevant documentation.

Signed-off-by: Nícolas F. R. A. Prado <[email protected]>
  • Loading branch information
nfraprado authored and patersonc committed Nov 15, 2024
1 parent fa99c16 commit 6aa3d8a
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 0 deletions.
2 changes: 2 additions & 0 deletions kernelci.org/content/en/kernel-community/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,6 @@ This section of the documentation shares instructions to:
* [enable specific tests](../maestro/pipeline/developer-documentation/#enabling-a-new-test)
* [visualize the results](view-results)

For suggestions of device tests, see [device kselftests](device-tests).

We know that the documentation above may not answer all your questions. We are working to improve it. We ask you to reach out to our mailing list at [[email protected]](mailto:[email protected]) with questions and feedback. We are eager to hear from you!
30 changes: 30 additions & 0 deletions kernelci.org/content/en/kernel-community/device-tests.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
---
title: "Device kselftests"
date: 2024-10-01
description: Overview of the process of enabling device kselftests on new platforms
---

Device kselftests provide a good starting point to validate basic kernel
functionality. There are a few of them upstream, with varying coverage and
requirements. See this documentation page for more information:
https://lore.kernel.org/all/[email protected]

After deciding which test to run and satisfying its requirement (if any),
enabling the test on a new platform in KernelCI is a matter of adding the
platform to the test's scheduler entry. For example, for the DT kselftest on
ARM64, that would be adding the platform here:

https://github.com/kernelci/kernelci-pipeline/blob/08e7bce8044d04faa79028273384d9c30a1f5d9e/config/pipeline.yaml#L2495

For the other tests, just look for the entry in the ``scheduler`` that has
``collections`` set to the kselftest path as per the upstream documentation (for
example, for the error logs test, look for ``collections: devices/error_logs``).
To enable the test on a different architecture, look for the entry that has the
build corresponding to that architecture, or create it if there's none. See
https://docs.kernelci.org/maestro/pipeline/developer-documentation/#an-example-of-enabling-a-new-job
for more details on enabling tests in KernelCI.

Note: In addition to the tests described in the upstream documentation, there is
also an alternative to the DT kselftest for ACPI platforms: the ``acpi``
kselftest. It is not described there as it hasn't been merged upstream, but it
is already being run in KernelCI.

0 comments on commit 6aa3d8a

Please sign in to comment.