Re: [PATCH] mwl8k: Add 0x2a02 PCI device-id (Marvell 88W8361)

Sedat Dilek
2012-04-28T22:25:25Z

[-- Attachment #1: Type: text/plain, Size: 6908 bytes --]

On Fri, Apr 27, 2012 at 11:53 PM, Sedat Dilek
<sedat.dilek@googlemail.com> wrote:
> On Fri, Apr 27, 2012 at 8:58 PM, Lennert Buytenhek
> <buytenh@wantstofly.org> wrote:
>> On Fri, Apr 27, 2012 at 03:29:26PM +0200, Sedat Dilek wrote:
>>
>>> >>> >> >> >> Are you planning to or even working on support (for) 8361 devices?
>>> >>> >> >> >
>>> >>> >> >> > I don't have any such plans, and I don't know of anyone who does.
>>> >>> >> >>
>>> >>> >> >> Does 8361 require firmware support?
>>> >>> >> >
>>> >>> >> > What do you mean by that?
>>> >>> >>
>>> >>> >> IIRC ath5k for example needs no external firmware file.
>>> >>> >
>>> >>> > The 8361 requires firmware to be loaded into it before it'll do
>>> >>> > anything useful.
>>> >>> >
>>> >>> >
>>> >>> >> >> Does a firmware file exist (name?)?
>>> >>> >> >
>>> >>> >> > There's firmware for the 8361 out there, however, that version of
>>> >>> >> > the firmware implements a firmware API that is different from the
>>> >>> >> > one that mwl8k currently implements.
>>> >>> >> >
>>> >>> >> > You could add 8361 support to mwl8k, but then you'd have to go over
>>> >>> >> > all the firmware command invocations in mwl8k and make sure that they
>>> >>> >> > will work on the 8361 firmware that you're trying to support as well.
>>> >>> >>
>>> >>> >> Without having a 8361 this will be even harder to walk through.
>>> >>> >>
>>> >>> >> Anyway, thanks for your detailed explanations.
>>> >>> >>
>>> >>> >> What's the alternative for such affected users?
>>> >>> >> Use ndis-wrapper?
>>> >>> >
>>> >>> > I'm not sure.  I've never tried to get a 8361 work under Linux.
>>> >>>
>>> >>> Just found on [1] this same wrong patch in [2] :-).
>>> >>> Dunno if [3] worked and from where they have stolen fw-files.
>>> >>>
>>> >>> - Sedat -
>>> >>>
>>> >>> [1] https://dev.openwrt.org/ticket/7209
>>> >>> [2] https://dev.openwrt.org/attachment/ticket/7209/mwl8k_fix_pci_id.patch
>>> >>> [3] https://dev.openwrt.org/attachment/ticket/7209/mwl8k_8361p.patch
>>> >>
>>> >> I doubt that [3] is really all that's needed to make it work.  But if
>>> >> there's someone for whom it works, I'd like them to run some tests on
>>> >> mwl8k + [3] on 88w8361p.
>>> >
>>> > Just asked lautriv to do so (he will do against linux-3.3.3), lets' see.
>>> > Also, I refreshed and adapted a bit the instructions (see attachment).
>>> >
>>> > - Sedat -
>>>
>>> [ CC Jim Cromie ]
>>>
>>> Now, with extracted firmware files renamed & copied to
>>> /lib/firmware/mwl8k/ and applied patch (see attachment) against
>>> Linux-3.4-rc4+ I am seeing with modinfo:
>>>
>>> $ sudo modinfo mwl8k
>>> filename:
>>> /lib/modules/3.4.0-rc4-5-generic/kernel/drivers/net/wireless/mwl8k.ko
>>> license:        GPL
>>> author:         Lennert Buytenhek <buytenh@marvell.com>
>>> version:        0.13
>>> description:    Marvell TOPDOG(R) 802.11 Wireless Network Driver
>>> firmware:       mwl8k/fmimage_8366_ap-2.fw
>>> firmware:       mwl8k/fmimage_8366.fw
>>> firmware:       mwl8k/helper_8366.fw
>>> firmware:       mwl8k/fmimage_8687.fw
>>> firmware:       mwl8k/helper_8687.fw
>>> firmware:       mwl8k/fmimage_8363.fw
>>> firmware:       mwl8k/helper_8363.fw
>>> firmware:       mwl8k/fmimage_8361p.fw
>>> firmware:       mwl8k/helper_8361p.fw
>>> srcversion:     9E1479A05C8D67E6AE90746
>>> alias:          pci:v000011ABd00002A43sv*sd*bc*sc*i*
>>> alias:          pci:v000011ABd00002A40sv*sd*bc*sc*i*
>>> alias:          pci:v000011ABd00002A30sv*sd*bc*sc*i*
>>> alias:          pci:v000011ABd00002A2Bsv*sd*bc*sc*i*
>>> alias:          pci:v000011ABd00002A24sv*sd*bc*sc*i*
>>> alias:          pci:v000011ABd00002A0Csv*sd*bc*sc*i*
>>> alias:          pci:v000011ABd00002A0Asv*sd*bc*sc*i*
>>> alias:          pci:v000011ABd00002A02sv*sd*bc*sc*i* <--- 8361P:
>>> 0x2a02 PCI device-id
>>> depends:        mac80211,cfg80211
>>> vermagic:       3.4.0-rc4-5-generic SMP mod_unload modversions
>>> parm:           ap_mode_default:Set to 1 to make ap mode the default
>>> instead of sta mode (bool)
>>>
>>> $ ls -l /lib/firmware/mwl8k/
>>> insgesamt 456
>>> -rw-r--r-- 1 root root  75848 Apr 27 13:49 fmimage_8361p.fw <---
>>> 8361P: Firmware image
>>> -rw-r--r-- 1 root root 101780 Mär 19 19:32 fmimage_8366_ap-1.fw
>>> -rw-r--r-- 1 root root 101976 Mär 19 19:32 fmimage_8366_ap-2.fw
>>> -rw-r--r-- 1 root root  96664 Mär 19 19:32 fmimage_8366.fw
>>> -rw-r--r-- 1 root root  73252 Feb 23 20:07 fmimage_8687.fw
>>> -rw-r--r-- 1 root root   2476 Apr 27 13:49 helper_8361p.fw <--- 8361P:
>>> Helper image
>>> -rw-r--r-- 1 root root   2476 Mär 19 19:32 helper_8366.fw
>>> -rw-r--r-- 1 root root   2476 Feb 23 20:07 helper_8687.fw
>>>
>>> As said... ***compile-tested*** only here.
>>
>> Which doesn't say much at all, but..
>>
>
> As already pointed out, no Marwell WLAN hardware here. Marvell comics
> of course :-).
>
>>
>>> I had a short query with lautriv on #linux-wireless this afternoon:
>>> * mwl8k kernel-module was autoloaded
>>> * wlan0 interface got fired up
>>> * ESSID was accepted
>>> * logs reported 802.11bgn support is active
>>> * (he tested on Linux-3.3.3)
>>>
>>> With WPA/WPA2 lautriv had some problems as his installation was
>>> missing wpasupplicant.
>>> He setup a classic /etc/network/interfaces.
>>> After resetting his router mwl8k worked nicely.
>>>
>>> Unfortunately, he was on the run and promised me to send logs and do
>>> more testing this evening.
>>
>> ..but this is pretty interesting.  I thought that the only available
>> 8361p firmware used an incompatible firmware API, and I didn't know
>> of the existence of an apparently compatible firmware.
>>
>>
>>> So, Lennert if you want more testing - What? How? etc.
>>
>> For one, the output of 'iw phy', please.
>>
>> Also, does monitor mode work?  Do you get plausible channel/rxpower
>> values in tcpdump in monitor mode?
>>
>> Are there any messages in the syslog about failing commands?
>>
>>
>> thanks,
>> Lennert
>
> On 1st sight, logs look fine:
>
> [21:52:52] <lautriv> [    6.050967] ieee80211 phy0: 88w8361p v4,
> 00173f3bdde3, STA firmware 2.1.4.25
>
> But WLAN connection is not that fast and stable as lautriv reports
> (several abnormalities were observed).
>
> I requested a tarball which includes:
> * dmesg (Linux-3.3.3)
> * e_n_a (/etc/network/interfaces)
> * ifconfig output
> * iwconfig output
> * iw_phy output
> * ps_axu (WPA) output
>
> lautriv will be so kind to be around on #linux-wireless/Freenode the
> next days (UTC+2: German/Swiss local-time).
> Just ping him.
>
> Hope you have fun, together!
>
> - Sedat -

A new tarball from lautriv with same outputs as before, but now tested
with Linux-3.4-rc4.

- Sedat -

[-- Attachment #2: 8361p_3.4.0-rc4.tar.xz --]
[-- Type: application/octet-stream, Size: 9944 bytes --]