xref: /linux/Documentation/rust/index.rst (revision 7f71507851fc7764b36a3221839607d3a45c2025)
1.. SPDX-License-Identifier: GPL-2.0
2
3Rust
4====
5
6Documentation related to Rust within the kernel. To start using Rust
7in the kernel, please read the quick-start.rst guide.
8
9
10The Rust experiment
11-------------------
12
13The Rust support was merged in v6.1 into mainline in order to help in
14determining whether Rust as a language was suitable for the kernel, i.e. worth
15the tradeoffs.
16
17Currently, the Rust support is primarily intended for kernel developers and
18maintainers interested in the Rust support, so that they can start working on
19abstractions and drivers, as well as helping the development of infrastructure
20and tools.
21
22If you are an end user, please note that there are currently no in-tree
23drivers/modules suitable or intended for production use, and that the Rust
24support is still in development/experimental, especially for certain kernel
25configurations.
26
27
28Code documentation
29------------------
30
31Given a kernel configuration, the kernel may generate Rust code documentation,
32i.e. HTML rendered by the ``rustdoc`` tool.
33
34.. only:: rustdoc and html
35
36	This kernel documentation was built with `Rust code documentation
37	<rustdoc/kernel/index.html>`_.
38
39.. only:: not rustdoc and html
40
41	This kernel documentation was not built with Rust code documentation.
42
43A pregenerated version is provided at:
44
45	https://rust.docs.kernel.org
46
47Please see the :ref:`Code documentation <rust_code_documentation>` section for
48more details.
49
50.. toctree::
51    :maxdepth: 1
52
53    quick-start
54    general-information
55    coding-guidelines
56    arch-support
57    testing
58
59You can also find learning materials for Rust in its section in
60:doc:`../process/kernel-docs`.
61
62.. only::  subproject and html
63
64   Indices
65   =======
66
67   * :ref:`genindex`
68