Skip to content

Remove the RTAI-kernel-only hardware drivers - #4513

Merged
BsAtHome merged 2 commits into
LinuxCNC:masterfrom
grandixximo:rtai-driver-deprecate
Sep 13, 2026
Merged

BsAtHome merged 2 commits into
LinuxCNC:masterfrom
grandixximo:rtai-driver-deprecate

Conversation

@grandixximo

@grandixximo grandixximo commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

Reshaped after the weekly-meeting decision: remove the drivers outright instead of deprecating. Zero users found in the poll, no testers, Vital Systems has no Motenc cards left.

Two commits:

  1. build: wipe generated manpage tree on clean. clean-manpages removed manpages by the BUILD_SYS-dependent $(GENERATED_MANPAGES) list, so kbuild-only driver manpages survived forever on uspace trees and confused gen_complist.py (the local-vs-CI divergence hdiethelm hit in ci: Enable fail on htmlcheck error #4471). Everything under docs/build/man is generated, so wipe the tree.
  2. Remove the RTAI-kernel-only hardware drivers. hal_stg, hal_motenc, hal_vti, hal_evoreg, hal_tiro, hal_ax5214h, opto_ac5, pci_8255, pcl720, pluto_servo, pluto_step, all excluded from uspace builds since 2014 and serving early-2000s ISA/PCI/parport cards. Also removes hal_skeleton (kbuild-era code template), rbf2h.py (only used by the pluto firmware rules), the pluto firmware trees (unbuildable without an ancient Quartus), the driver doc pages and man pages, the po4a master entries, and the components.adoc rows. Sample configs for these cards are removed too (by_interface/pluto, servotogo, vigilant, vitalsystems, by_machine/boss, attic/demo_mazak).

Verified: full build plus htmldocs pass, components_gen no longer mentions any of the removed drivers, repo-wide grep finds only historical comments.

Closes #4505.

Comment thread src/hal/drivers/pcl720.comp Outdated
Comment thread src/hal/drivers/pluto_servo.comp Outdated
Comment thread src/hal/drivers/pluto_step.comp Outdated
Comment thread docs/src/drivers/ax5214h.adoc Outdated
Comment thread docs/src/hal/components.adoc Outdated
Comment thread debian/changelog
@BsAtHome

Copy link
Copy Markdown
Contributor

Remove the drivers completely.

GENERATED_MANPAGES depends on BUILD_SYS, so removing manpages by list
leaves stale files behind on uspace trees (e.g. the kbuild-only driver
manpages pluto_servo.9, pluto_step.9, pcl720.9).  gen_complist.py then
picks up the stale files and generates links to manpages the current
build configuration cannot produce, making local doc builds diverge
from CI.

Everything under docs/build/man is generated (halcompile output,
asciidoctor output from docs/src/man, alias pages, translations), so
wipe the whole tree in both clean-manpages and genclean.
@grandixximo grandixximo changed the title docs: deprecate RTAI-kernel-only hardware drivers, fix stale manpage trap Remove the RTAI-kernel-only hardware drivers Sep 13, 2026
@BsAtHome

Copy link
Copy Markdown
Contributor

Why move the sample configs? They are no longer necessary and not used in any meaningful way. The "Attic" is an old CVS construct. Why do we need it, at all?

These drivers only ever built for RTAI kernels and were excluded from
uspace builds since 2014, so no current install could load them:

  hal_stg, hal_motenc, hal_vti, hal_evoreg, hal_tiro, hal_ax5214h,
  opto_ac5, pci_8255, pcl720, pluto_servo, pluto_step

All serve early-2000s ISA/PCI/parport cards.  A poll on the forum and
emc-developers found zero users with the hardware, Vital Systems
reports no Motenc cards remaining and none known in use, and no
testers are available, so a uspace port cannot be validated either.
At the weekly meeting the decision was to remove them outright rather
than deprecate.

Also remove hal_skeleton (a kbuild-era code template), the now unused
rbf2h.py firmware header generator, the pluto firmware trees
(unbuildable without an ancient Quartus), and the sample configs for
these cards (by_interface/pluto, servotogo, vigilant, vitalsystems,
by_machine/boss, attic/demo_mazak).

Driver docs, man pages, component-list rows and po4a masters go with
the drivers.
@grandixximo

Copy link
Copy Markdown
Contributor Author

Wrong call, fixed in dd394d9: the configs are deleted outright, demo_mazak included.

@BsAtHome
BsAtHome merged commit 552f1d4 into LinuxCNC:master Sep 13, 2026
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

pluto_servo / pluto_step / pcl720: not built on uspace since 2014, docs links silently missing

2 participants