Thread (12 messages) 12 messages, 3 authors, 2017-10-25

Re: A good way to get CSI info to user-space?

From: Zefir Kurtisi <hidden>
Date: 2017-10-25 14:30:26

Hi Ben,

On 10/24/2017 03:55 PM, Johannes Berg wrote:
On Tue, 2017-10-24 at 06:50 -0700, Ben Greear wrote:
[...]
quoted
Anyone know if there is a useful way to stream events from debugfs
and/or sysfs w/out having to busy-poll on it?
There's relayfs, which is kinda built for that. You could even use
netlink vendor events, but I don't really think netlink is appropriate
here.
This is what I would also suggest, alas it is not clear if the events need to be
processed realtime.

The relayfs is used to stream the spectral data from ath9k (and afaik also from
ath10k) to userspace. Very easy to implement: kernel pushes TLVs into the relayfs,
userspace pulls them.

It is 'realtime-enough' to display realtime spectral graphs, but since you are
reading the stream in buffer-slices, you have to wait for a slice to fill up
before it is available at userspace (or you flush every TLV at kernel side, which
kills efficiency).

That is: if you need to immediately process events, relayfs is maybe not the right
choice, if you can process them in bulk, that's the most efficient way to go.

Cheers,
Zefir
johannes
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help