Skip to content

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

Description

@grandixximo

While investigating missing links in the CI docs build (see #4471, components_gen.adoc lacks pcl720, pluto_servo, pluto_step), I found the root cause: these three driver comps have not been built on uspace since 2b0c9aa (June 2014), when the BUILD_SYS=uspace whitelist in src/hal/components/Submakefile was introduced with only serport (later also mesa_7i65, mesa_uart).

Since every modern install (preempt-rt) is a uspace build, these drivers are effectively unavailable to all current users. Only an RTAI/kbuild build produces them. Their man pages are also absent from the published docs (linuxcnc.org returns 404 for pluto_servo.9.html and pcl720.9.html), so the entries in components.adoc point to nothing.

The situation differs per driver:

  • pluto_servo / pluto_step: no technical blocker. pluto_common.h has had a userspace I/O path (sys/io.h) since 2007, the comp compiles cleanly with uspace flags, and its dependency hal_parport builds on uspace. It was simply never whitelisted and never hardware-tested on uspace.
  • pcl720: genuinely kernel-only. It includes <asm/io.h> unconditionally and uses kernel types, so a uspace build needs an actual port.

Questions for direction:

  1. pluto_servo/pluto_step: whitelist for uspace (compile-tested, needs someone with Pluto-P hardware to verify), or leave as-is?
  2. pcl720: worth a port, or formally deprecate?
  3. Independently: should the docs note that these drivers are only available on kbuild/RTAI builds? Right now the docs present them as normal components.

Side note: make clean-manpages only removes $(GENERATED_MANPAGES), which on uspace excludes these drivers' man pages, so stale pluto_servo.9 etc. survive forever in old build trees and confuse the generated component list (that is why a local Trixie build showed links the CI build did not).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions