Re: wl1251 & mac address & calibration data
From: Arend Van Spriel <arend.vanspriel@broadcom.com>
Date: 2016-12-15 20:13:03
Also in:
lkml, netdev
On 15-12-2016 16:33, Pali Rohár wrote:
On Thu Dec 15 09:18:44 2016 Kalle Valo [off-list ref] wrote:quoted
(Adding Luis because he has been working on request_firmware() lately) Pali Rohár [off-list ref] writes:quoted
quoted
quoted
So no, there is no argument against... request_firmware() in fallback mode with userspace helper is by design blocking and waiting for userspace. But waiting for some change in DTS in kernel is just nonsense.I would just mark the wlan device with status = "disabled" and enable it in the overlay together with adding the NVS & MAC info.So if you think that this solution make sense, we can wait what net wireless maintainers say about it... For me it looks like that solution can be: extending request_firmware() to use only userspace helperI haven't followed the discussion very closely but this is my preference what drivers should do: 1) First the driver should do try to get the calibration data and mac address from the device tree.Ok, but there is no (dynamic, device specific) data in DTS for N900. So 1) is noop.
Uhm. What do you mean? You can propose a patch to the DT bindings [1] to get it in there and create your N900 DTB or am I missing something here. Are there hardware restrictions that do not allow you to boot with your own DTB.
quoted
2) If they are not in DT the driver should retrieve the calibration data with request_firmware(). BUT with an option for user space to implement that with a helper script so that the data can be created dynamically, which I believe openwrt does with ath10k calibration data right now.Currently there is flag for request_firmware() that it should fallback to user helper if direct VFS access not find needed firmware. But this flag is not suitable as /lib/firmware already provides default (not device specific) calibration data. So I would suggest to add another flag/function which will primary use user helper.
I recall Luis saying that user-mode helper (fallback) should be discouraged, because there is no assurance that there is a user-mode helper so you might just be pissing in the wind. The idea was to have a dedicated API call that explicitly does the request towards user-space. By the way, are we talking here about wl1251 device or driver as you also mentioned wl12xx? I did not read the entire thread. Regards, Arend