Can the devs give a short/expanded overview of WCN3660 and how it communicates with the driver?

Bjorn Andersson bjorn at kryo.se
Thu Feb 12 08:48:24 PST 2015


On Wed, Feb 11, 2015 at 4:52 PM, Farm Dve <farmdve at data.bg> wrote:
> I asked Mr. Bjorn and he was very helpful, but I am looking at the
> sources, all of them and I cannot wrap my head around it. I would like
> to just throw this quickly, that I am not experienced with the linux
> kernel. Lots of stuff are still hard to grasp, such as how wcn36xx
> communicates with userspace APIs for networking(such as
> socket,recv,buf).
>
> We have the wcn36xx driver, we also have drivers/staging/prima/CORE,
> how exactly are they related?
> If wcn36xx is the driver, what is the purpose of prima/CORE? I looked
> at prima and there are a bunch of folders with..awful and
> non-descriptive names, although the files are documented it leaves a
> lot to be desired. Such as HDD,VOSS,DXE and so forth.

The prima driver is the original Qualcomm/Atheros driver, the wcn36xx
driver is a reimplementation of that driver using the frameworks
provided by the Linux kernel. You can see the benefit of this by
comparing the amount of code in the two implementations. (although
wcn36xx isn't feature complete yet).

> What about wcnss in net/wireless/wcnss, is it obsolete thanks to wcn36xx?
>

The wcn36xx driver is the driver for the WiFi part of the combo ship -
also including BlueTooth and FM-receiver. The wcnss driver seems to be
the driver for the combo chip itself.

For my mainline testing I reworked the wcnss driver into something
"understandable" more to the point. You can find this hack here:

https://github.com/andersson/kernel/commit/f3b1e9ed5a803aafb4e4f76dc007fa33e38314a9

[..]
> I have not figured out if the actual firmware loaded by PIL has some
> sort of strict verfication preventing altering of the firmware.

Correct, but as far as I understand the firmware you have can work in
monitoring mode with the official driver. So you should not need to
change the firmware.

> Basically too much info is still hidden, so much for Atheros/Qualcomm
> participating in a joint open-source project.
>

Please look around the mainline kernel, Qualcomm is doing a lot of
work in the Linux kernel. That work will lead to us having the
dependencies in place for actually working on this driver in mainline.

Regards,
Bjorn



More information about the wcn36xx mailing list