Thread (10 messages) 10 messages, 4 authors, 2021-11-02

Re: wireless: guidelines for user space interfaces

From: Arend van Spriel <arend.vanspriel@broadcom.com>
Date: 2021-10-11 09:40:47

On 10/11/2021 11:23 AM, Kalle Valo wrote:
(changing subject, was "Re: [PATCH v2 2/2] rtw88: add debugfs to force lowest basic rate")

Brian Norris [off-list ref] writes:
quoted
BTW, if we have clear guidelines on debugfs, module parameters, etc.,
maybe those should be going on the wiki? I know this came up before:

https://lore.kernel.org/linux-wireless/87d09u7tyr.fsf@codeaurora.org/ (local)

At this point, I'm willing to write such guidelines, if I get an ack
from the relevant folks (I guess that's just Kalle?). It probably
belongs somewhere in this tree:

https://wireless.wiki.kernel.org/en/developers/documentation

similar to this:
https://wireless.wiki.kernel.org/en/developers/documentation/nl80211#vendor-specific_api
except it's not really an nl80211 thing. Suggestions welcome.
I think this is a very good idea. Having general guidelines for wireless
drivers using user space interfaces would help both people submitting
patches and also people like me reviewing the patches.

We should try to get an ack for the guidelines at least from Johannes,
but I would prefer also involve Jakub and Dave (CCed) as they might have
some input from the network subsystem point of view.

Just to get this started, here's a draft list I came up of different
user space interfaces upstream wireless drivers are using:

* generic nl80211 (excluding testmode and vendor commands)

* nl80211 testmode commands

* nl80211 vendor commands

* sysfs[1]

* debugfs

* relayfs

* configfs[1]

* module parameters

* thermal subsystem

* firmware_request()

I'm not saying that we need to document all these in the first version,
I'm just trying to come up a comprehensive overview how wireless drivers
interact with the user space. And I'm sure I missed something. so please
do fill in.
Not sure if all of the above can be considered user-space interfaces, 
but wireless driver developers could benefit from guidelines for them 
regardless. Maybe following needs to be considered as well although I 
think cfg80211 is taking care of it:

* rfkill

Regards,
Arend
quoted
Side note: it could really use some cleanup -- like this page:
https://wireless.wiki.kernel.org/en/developers/process
Heh, that is old information. TBH in practise I maintain only the
submittingpatches page (link in the signature), other pages I rarely
touch. And naturally I also look after ath10k and ath11k pages.

Any volunteers to clean that up?

[1] Actually I don't know if there are any valid use cases for sysfs and
     configfs at the moment, but I'll include them in the list for
     completeness.
-- 
This electronic communication and the information and any files transmitted 
with it, or attached to it, are confidential and are intended solely for 
the use of the individual or entity to whom it is addressed and may contain 
information that is confidential, legally privileged, protected by privacy 
laws, or otherwise restricted from disclosure to anyone else. If you are 
not the intended recipient or the person responsible for delivering the 
e-mail to the intended recipient, you are hereby notified that any use, 
copying, distributing, dissemination, forwarding, printing, or copying of 
this e-mail is strictly prohibited. If you received this e-mail in error, 
please return the e-mail to the sender, delete it from your computer, and 
destroy any printed copy of it.

Attachments

  • smime.p7s [application/pkcs7-signature] 4219 bytes
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help