* [RFC] drivers/staging/axis-fifo: TODO file and subsystem direction
@ 2026-05-31 14:50 Grewstad
2026-05-31 15:25 ` Greg KH
2026-05-31 19:52 ` Andrew Lunn
0 siblings, 2 replies; 3+ messages in thread
From: Grewstad @ 2026-05-31 14:50 UTC (permalink / raw)
To: gregkh
Cc: jic23, jacobsfeder, linux-staging, linux-arm-kernel, linux-kernel,
hjk, davem, netdev
Dear Maintainers,
I am interested in contributing to the Xilinx AXI-Stream FIFO driver
located in drivers/staging/axis-fifo.
While reviewing the driver, I noticed that it does not currently
contain a TODO file describing the work required for graduation from
staging. I would like to create such a file, but before doing so I
would appreciate guidance on the expected long-term direction for the
driver.
The driver currently exposes a custom userspace ABI through a
miscdevice. While this provides a generic interface to the FIFO, it
does not integrate with existing kernel subsystem tooling. One possible
incremental improvement in this area could be a transition from
miscdevice to a proper character device (cdev) interface, to allow for
a more clearly defined and maintainable userspace ABI.
Some possible directions that came to mind are:
- UIO, if the intent is to provide userspace control over a generic
AXI-stream FIFO with minimal kernel policy.
- IIO, for data acquisition or SDR-oriented applications that could
benefit from existing buffer infrastructure and userspace tooling.
- Networking, for packet-oriented AXI-stream use cases.
Before drafting a TODO file and proposing patches, I would like to
understand whether there is a preferred subsystem model for this
hardware, or whether the current architecture is expected to remain in
place.
Any guidance would be greatly appreciated.
Thank you,
Arihan Bhor
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [RFC] drivers/staging/axis-fifo: TODO file and subsystem direction
2026-05-31 14:50 [RFC] drivers/staging/axis-fifo: TODO file and subsystem direction Grewstad
@ 2026-05-31 15:25 ` Greg KH
2026-05-31 19:52 ` Andrew Lunn
1 sibling, 0 replies; 3+ messages in thread
From: Greg KH @ 2026-05-31 15:25 UTC (permalink / raw)
To: Grewstad
Cc: jic23, jacobsfeder, linux-staging, linux-arm-kernel, linux-kernel,
hjk, davem, netdev
On Sun, May 31, 2026 at 08:20:35PM +0530, Grewstad wrote:
> Dear Maintainers,
>
> I am interested in contributing to the Xilinx AXI-Stream FIFO driver
> located in drivers/staging/axis-fifo.
>
> While reviewing the driver, I noticed that it does not currently
> contain a TODO file describing the work required for graduation from
> staging. I would like to create such a file, but before doing so I
> would appreciate guidance on the expected long-term direction for the
> driver.
>
> The driver currently exposes a custom userspace ABI through a
> miscdevice. While this provides a generic interface to the FIFO, it
> does not integrate with existing kernel subsystem tooling. One possible
> incremental improvement in this area could be a transition from
> miscdevice to a proper character device (cdev) interface, to allow for
> a more clearly defined and maintainable userspace ABI.
There really is no difference between a miscdevice and a character
device, the interaction from user/kernel is the same.
> Some possible directions that came to mind are:
>
> - UIO, if the intent is to provide userspace control over a generic
> AXI-stream FIFO with minimal kernel policy.
UIO provides a mmap of a device to userspace where it is controlled
directly. Probably not what you want to do here right?
> - IIO, for data acquisition or SDR-oriented applications that could
> benefit from existing buffer infrastructure and userspace tooling.
Is that what this device is?
> - Networking, for packet-oriented AXI-stream use cases.
WHat really is this device for? What is the goal of this hardware and
how is it used today? Do you have the hardware to test with it? Who
uses it?
thanks,
greg k-h
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [RFC] drivers/staging/axis-fifo: TODO file and subsystem direction
2026-05-31 14:50 [RFC] drivers/staging/axis-fifo: TODO file and subsystem direction Grewstad
2026-05-31 15:25 ` Greg KH
@ 2026-05-31 19:52 ` Andrew Lunn
1 sibling, 0 replies; 3+ messages in thread
From: Andrew Lunn @ 2026-05-31 19:52 UTC (permalink / raw)
To: Grewstad
Cc: gregkh, jic23, jacobsfeder, linux-staging, linux-arm-kernel,
linux-kernel, hjk, davem, netdev
On Sun, May 31, 2026 at 08:20:35PM +0530, Grewstad wrote:
> Dear Maintainers,
>
> I am interested in contributing to the Xilinx AXI-Stream FIFO driver
> located in drivers/staging/axis-fifo.
>
> While reviewing the driver, I noticed that it does not currently
> contain a TODO file describing the work required for graduation from
> staging. I would like to create such a file, but before doing so I
> would appreciate guidance on the expected long-term direction for the
> driver.
>
> The driver currently exposes a custom userspace ABI through a
> miscdevice. While this provides a generic interface to the FIFO, it
> does not integrate with existing kernel subsystem tooling. One possible
> incremental improvement in this area could be a transition from
> miscdevice to a proper character device (cdev) interface, to allow for
> a more clearly defined and maintainable userspace ABI.
In addition to what GregKH said, look at the vendor information:
https://docs.amd.com/r/en-US/pg080-axi-fifo-mm-s/Core-Overview
The AXI4-Stream FIFO core was designed to provide memory-mapped
access to an AXI4-Stream interface connected to other IP (such as
the AXI Ethernet core). Systems must be built through the AMD
Vivado™ Design Suite to attach the AXI4-Stream FIFO core, AXI
Ethernet core ...
when used for Ethernet, a uAPI is not needed. The FIFO driver would
just expose an kernel internal API the Ethernet driver would use. Are
there any Ethernet devices using it? Is there a driver for the AXI
Ethernet core? Does drivers/net/ethernet/xilinx/* duplicate the same
code? xilinx_axienet_main.c says:
* TODO:
* - Add Axi Fifo support.
which could be this.
As GregKH said, find some hardware using these IP cores, or synthesise
your own, and then work on the driver.
Andrew
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-05-31 19:52 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-31 14:50 [RFC] drivers/staging/axis-fifo: TODO file and subsystem direction Grewstad
2026-05-31 15:25 ` Greg KH
2026-05-31 19:52 ` Andrew Lunn
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox