Re: [PATCH 0/7] Documentation: gpio: add character device userspace API documentation
From: Kent Gibson
Date: Thu Jan 11 2024 - 20:03:23 EST
On Wed, Jan 10, 2024 at 01:10:51PM +0200, Andy Shevchenko wrote:
> On Wed, Jan 10, 2024 at 10:16 AM Vegard Nossum <vegard.nossum@xxxxxxxxxx> wrote:
> > On 10/01/2024 00:45, Kent Gibson wrote:
> > > On Tue, Jan 09, 2024 at 10:00:26PM +0200, Andy Shevchenko wrote:
> > >> On Tue, Jan 9, 2024 at 4:00 PM Kent Gibson <warthog618@xxxxxxxxx> wrote:
> > >>
> > >> May we actually state in the documentation that sysfs is subject to
> > >> remove at some point?
> > >
> > > So formally define what "deprecated" means?
> > > Is that covered in the higher level documentation somewhere?
> > > If so I'm more than happy to provide a reference.
> >
> > We have a few files that may be relevant here, that I'm aware of:
> >
> > 1) https://docs.kernel.org/admin-guide/sysfs-rules.html
> >
> > documents some general assumptions that userspace can make about the
> > stability of sysfs and its files
> >
> > 2) https://docs.kernel.org/admin-guide/abi.html
> >
> > This is the public-facing, somewhat machine-readable repository of what
> > is supposed to be the kernel's ABI/API, including "obsolete" and
> > "removed" interfaces.
> >
> > 3) Documentation/ABI/README
> >
> > describes the process of deprecating an interface
>
> Yes and GPIO currently is under obsolete section with also this:
>
> "This ABI is deprecated and will be removed after 2020. It is replaced
> with the GPIO character device."
>
> https://docs.kernel.org/admin-guide/abi-obsolete.html#symbols-under-sys-class
>
> So, proposed cleanup series should probably rely on this documentation
> among other existing descriptions of sysfs GPIO.
>
The sysfs doc already references the doc (sysfs-gpio) that generates the
HTML that link points to, so not sure what to change.
I can't include a direct reference to the HTML, AFAICT, as that HTML is
generated using kernel-abi makefile magic so the usual doc path
cross-references don't work - you just get the path as plain text.
If there is some way to provide a cross-reference that generates to that
link then I'll change it, but I don't know how.
>>> + - - ``EFAULT``
> Wondering if these constants can be referenced via % and if it makes sense.
That would be great and I do want to do that, particularly for the
uAPI v1 docs that use a lot of consts rather than enums, but, AFAICT, you
can't create cross-references for consts, you can only add formatting[1].
And the % formatting only works in kernel-doc, in rst you have to add it
explicitly yourself, hence the ``EFAULT`` .
Cheers,
Kent.
[1] https://www.kernel.org/doc/html/latest/doc-guide/kernel-doc.html#highlights-and-cross-references