[PATCH 0/6] Add documentation for Documentation/features at the built docs
Mauro Carvalho Chehab
mchehab+huawei at kernel.org
Mon Nov 30 10:36:29 EST 2020
Hi Jon,
This series got already submitted last year:
https://lore.kernel.org/lkml/cover.1561222784.git.mchehab+samsung@kernel.org/
Yet, on that time, there were too many other patches related to ReST
conversion floating around. So, at the end, I guess this one got missed.
So, I did a rebase on the top of upstream, and added a few new changes.
Patch 1 contains the original implementation back then. It adds a
get_feat.pl script that parses the contents of Documentation/features.
Patch 2 is new: it re-implements the output of the full contents of the
features table as a set of per-subsystem tables.
Patch 3 replaces the existing Documentation/features/list-arch.sh
by a call to the new script, in order to avoid having two scripts
doing the same thing.
Patch 4 is a sphinx extension to allow generating features output
via a meta-tag.
Patch 5 adds a complete feature list covering all archs at the
admin guide.
Patch 6 adds a per-arch feature list on each architecture book.
-
The scripts/get_feat.pl supports several types of output:
- $ scripts/get_feat.pl current
Outputs the supported feadures by the architecture of the
running Kernel, as an ASCII table;
- $ scripts/get_feat.pl list
Outputs the supported features on an easy to be parsed
format. By default, it uses the current architecture as well;
- $ scripts/get_feat.pl rest --feature jump-labels
Output what architecture supports a given feature
(on the above example, "jump-labels" feature)
- $ scripts/get_feat.pl rest --arch um
Outputs the features support for an specific architecture
(on the above example, for "um" architecture.
- $ scripts/get_feat.pl rest
Outputs a text file with ASCII tables (ReST compatible)
with all features, grouped per subsystem.
E. g. something like:
===================================
Feature status on all architectures
===================================
Subsystem: core
===============
+---------------------+---------------------------------+-------------------------------------------------------------------------+------------+------+
|Feature |Kconfig |Description |Architecture|Status|
+=====================+=================================+=========================================================================+============+======+
|cBPF-JIT |HAVE_CBPF_JIT |arch supports cBPF JIT optimizations |alpha |TODO |
| | | +------------+------+
| | | |arc |TODO |
| | | +------------+------+
| | | |arm |TODO |
| | | +------------+------+
| | | |arm64 |TODO |
| | | +------------+------+
| | | |c6x |TODO |
| | | +------------+------+
| | | |csky |TODO |
| | | +------------+------+
| | | |h8300 |TODO |
| | | +------------+------+
| | | |hexagon |TODO |
...
Adding those patchsets will basically place the contents of all
files under Documentation/features (currently, 45 files) at the
Kernel documentation, which is, IMO, a good thing to do.
Regards,
Mauro
Mauro Carvalho Chehab (6):
scripts: get_feat.pl: add a script to handle Documentation/features
scripts: get_feat.pl: improve matrix output
scripts: get_feat.pl: use its implementation for list-arch.sh
sphinx: kernel_feat.py: add a script to parse feature files
docs: admin-guide: add a features list
docs: archis: add a per-architecture features list
Documentation/admin-guide/features.rst | 3 +
Documentation/admin-guide/index.rst | 1 +
Documentation/arm/features.rst | 3 +
Documentation/arm/index.rst | 2 +
Documentation/arm64/features.rst | 3 +
Documentation/arm64/index.rst | 2 +
Documentation/conf.py | 2 +-
Documentation/features/list-arch.sh | 17 +-
Documentation/ia64/features.rst | 3 +
Documentation/ia64/index.rst | 2 +
Documentation/index.rst | 2 +-
Documentation/m68k/features.rst | 3 +
Documentation/m68k/index.rst | 2 +
Documentation/mips/features.rst | 3 +
Documentation/mips/index.rst | 2 +
Documentation/nios2/index.rst | 12 +
Documentation/openrisc/features.rst | 3 +
Documentation/openrisc/index.rst | 2 +
Documentation/parisc/features.rst | 3 +
Documentation/parisc/index.rst | 2 +
Documentation/powerpc/features.rst | 3 +
Documentation/powerpc/index.rst | 2 +
Documentation/riscv/features.rst | 3 +
Documentation/riscv/index.rst | 2 +
Documentation/s390/features.rst | 3 +
Documentation/s390/index.rst | 2 +
Documentation/sh/features.rst | 3 +
Documentation/sh/index.rst | 2 +
Documentation/sparc/features.rst | 3 +
Documentation/sparc/index.rst | 2 +
Documentation/sphinx/kernel_feat.py | 169 ++++++++
Documentation/x86/features.rst | 3 +
Documentation/x86/index.rst | 1 +
Documentation/xtensa/features.rst | 3 +
Documentation/xtensa/index.rst | 2 +
scripts/get_feat.pl | 552 +++++++++++++++++++++++++
36 files changed, 810 insertions(+), 17 deletions(-)
create mode 100644 Documentation/admin-guide/features.rst
create mode 100644 Documentation/arm/features.rst
create mode 100644 Documentation/arm64/features.rst
create mode 100644 Documentation/ia64/features.rst
create mode 100644 Documentation/m68k/features.rst
create mode 100644 Documentation/mips/features.rst
create mode 100644 Documentation/nios2/index.rst
create mode 100644 Documentation/openrisc/features.rst
create mode 100644 Documentation/parisc/features.rst
create mode 100644 Documentation/powerpc/features.rst
create mode 100644 Documentation/riscv/features.rst
create mode 100644 Documentation/s390/features.rst
create mode 100644 Documentation/sh/features.rst
create mode 100644 Documentation/sparc/features.rst
create mode 100644 Documentation/sphinx/kernel_feat.py
create mode 100644 Documentation/x86/features.rst
create mode 100644 Documentation/xtensa/features.rst
create mode 100755 scripts/get_feat.pl
--
2.28.0
More information about the linux-riscv
mailing list