2010-11-08 16:10:50

by Denis Kirjanov

[permalink] [raw]
Subject: Bringing up Marvell 88W8300

Hi Andrea and wireless folks!

I'm trying to bring up my WiFi card under Linux. I've found the code
for the mac80211 (mrv8kng).
My card is Asus Wi-Fi-Tv card (integrated tv capturing+WiFi adapter:
01:0f.0 Ethernet controller: Marvell Technology Group Ltd. 88W8335
[Libertas] 802.11b/g Wireless (rev 43).


My current problem is that I can't load the firmware on the chip.
There are two files (Win drivers) on the Asus CDROM:

denis@denis-desktop:~/Downloads$ ls -al CB55N50.sys CB55N51.sys
-rw-r--r-- 1 denis denis 297856 2005-04-16 13:27 CB55N50.sys
-rw-r--r-- 1 denis denis 297856 2005-04-16 13:26 CB55N51.sys

The FW cutter can't find the the main FW:
denis@denis-desktop:~/Downloads$ ./mrv8k_extract_fw CB55N51.sys
Bootloader found at 282088
Firmware not found

I also tried the firmware from the *BSD (malo firmware), but also
without success.

Current problem that after loading the 'main' firmware the
MRV_REG_STATUS register is not
equal to MRV_FW_SIGNATURE.


PS: Looks like that this tree no longer available
git://git.infradead.org/mrv8k.git :/

Thanks in advance.

--
Regards,
Denis


2010-11-13 16:45:41

by Denis Kirjanov

[permalink] [raw]
Subject: Re: Bringing up Marvell 88W8300

On Sat, Nov 13, 2010 at 3:22 AM, Dan Williams <[email protected]> wrote:
> On Mon, 2010-11-08 at 19:10 +0300, Denis Kirjanov wrote:
>> Hi Andrea and wireless folks!
>>
>> I'm trying to bring up my WiFi card under Linux. I've found the code
>> for the mac80211 (mrv8kng).
>> My card is Asus Wi-Fi-Tv card (integrated tv capturing+WiFi adapter:
>> 01:0f.0 Ethernet controller: Marvell Technology Group Ltd. 88W8335
>> [Libertas] 802.11b/g Wireless (rev 43).
>
> I'd been using a Netgear WG311v3 which apparently ships with v3.1.1.7
> firmware for screwing around with the driver. ?I've got about 3 or 4
> 8335 CardBus cards lying around.
>
>>
>> My current problem is that I can't load the firmware on the chip.
>> There are two files (Win drivers) on the Asus CDROM:
>
> I played with these a long time back based on mrv8k. ?I found it tricky
> to find the right firmware combo. ?The firmware I got from the card's
> drivers worked, but the firmware I tried to extract from the official
> Marvell 8335 drivers did not work. ?I've still got all the stuff around
> though.
>
>> denis@denis-desktop:~/Downloads$ ls -al CB55N50.sys CB55N51.sys
>> -rw-r--r-- 1 denis denis 297856 2005-04-16 13:27 CB55N50.sys
>> -rw-r--r-- 1 denis denis 297856 2005-04-16 13:26 CB55N51.sys
>
> Hmm, one file I have (MRV8335.sys) is 339968 bytes in size. ?I think the
> Netgear drivers were smaller though.
>
>> The FW cutter can't find the the main FW:
>> denis@denis-desktop:~/Downloads$ ./mrv8k_extract_fw CB55N51.sys
>> Bootloader found at 282088
>> Firmware not found
>
> It's pretty clear where the main firmware starts if you poke around.
> The extractor has a whitelist of known firmwares and yours may not be on
> it. ?You might need to spend a bit of time with the hex editor and find
> out approximately where your firmware starts and ends, and add that to
> the list. ?No guarantee that it'll actually boot on the card though.
>
>> I also tried the firmware from the *BSD (malo firmware), but also
>> without success.
>
> Yeah, this is a problem. ?Not all firmware is the same; different builds
> have different things turned on or off and could well be customized by
> the vendor for their specific part. ?It's unclear how generic the
> firmwares actually are.
>
>> Current problem that after loading the 'main' firmware the
>> MRV_REG_STATUS register is not
>> equal to MRV_FW_SIGNATURE.
>
> Yup, that means the bootloader firmware either failed to load the main
> firmware correctly, that the main firmware you extracted was not in the
> correct format, or that the main firmware simply failed to boot. ?I've
> had that problem before too.
>
>>
>> PS: Looks like that this tree no longer available
>> git://git.infradead.org/mrv8k.git :/
>
> So I've actually got a Marvell GPL-ed 8335 "duplex" driver and firmware
> (ie, STA and AP mode in one firmware file) lying around. ?It's the
> standard Marvell net80211-based driver built for 2.6.18 or something,
> but I'm happy to post it and then you could try to (1) port the existing
> net80211 stuff to 2.6.3x to make sure the card + firmware actually work,
> then (2) fix up mrv8k or write a new mac80211 driver once we have the
> baseline from #1.

Ok, I think that I also found this one (Don't know exactly where, but
I think that on the OpenWRT forum):
* Name: img_cb35_fw_duplex.h
* Project: Linux SoftAP for Marvell CB32/CB35 cardbus adapter
* Version: $Revision: 1.12.01 $

I will try to load the firmware that comes with the driver source.

> Does that sound like a plan? ?I have no time for it, but I'm happy to
> put the driver up somewhere that others can make use of it. ?I'll
> recheck the provenience of the driver but it's got MODULE_LICENSE("GPL")
> and GPL headers all over, including on the firmware file. ?I might have
> grabbed it off the Extranet but I'll check.
>
> Dan
>




--
Regards,
Denis

2010-11-13 00:23:32

by Dan Williams

[permalink] [raw]
Subject: Re: Bringing up Marvell 88W8300

On Mon, 2010-11-08 at 19:10 +0300, Denis Kirjanov wrote:
> Hi Andrea and wireless folks!
>
> I'm trying to bring up my WiFi card under Linux. I've found the code
> for the mac80211 (mrv8kng).
> My card is Asus Wi-Fi-Tv card (integrated tv capturing+WiFi adapter:
> 01:0f.0 Ethernet controller: Marvell Technology Group Ltd. 88W8335
> [Libertas] 802.11b/g Wireless (rev 43).

I'd been using a Netgear WG311v3 which apparently ships with v3.1.1.7
firmware for screwing around with the driver. I've got about 3 or 4
8335 CardBus cards lying around.

>
> My current problem is that I can't load the firmware on the chip.
> There are two files (Win drivers) on the Asus CDROM:

I played with these a long time back based on mrv8k. I found it tricky
to find the right firmware combo. The firmware I got from the card's
drivers worked, but the firmware I tried to extract from the official
Marvell 8335 drivers did not work. I've still got all the stuff around
though.

> denis@denis-desktop:~/Downloads$ ls -al CB55N50.sys CB55N51.sys
> -rw-r--r-- 1 denis denis 297856 2005-04-16 13:27 CB55N50.sys
> -rw-r--r-- 1 denis denis 297856 2005-04-16 13:26 CB55N51.sys

Hmm, one file I have (MRV8335.sys) is 339968 bytes in size. I think the
Netgear drivers were smaller though.

> The FW cutter can't find the the main FW:
> denis@denis-desktop:~/Downloads$ ./mrv8k_extract_fw CB55N51.sys
> Bootloader found at 282088
> Firmware not found

It's pretty clear where the main firmware starts if you poke around.
The extractor has a whitelist of known firmwares and yours may not be on
it. You might need to spend a bit of time with the hex editor and find
out approximately where your firmware starts and ends, and add that to
the list. No guarantee that it'll actually boot on the card though.

> I also tried the firmware from the *BSD (malo firmware), but also
> without success.

Yeah, this is a problem. Not all firmware is the same; different builds
have different things turned on or off and could well be customized by
the vendor for their specific part. It's unclear how generic the
firmwares actually are.

> Current problem that after loading the 'main' firmware the
> MRV_REG_STATUS register is not
> equal to MRV_FW_SIGNATURE.

Yup, that means the bootloader firmware either failed to load the main
firmware correctly, that the main firmware you extracted was not in the
correct format, or that the main firmware simply failed to boot. I've
had that problem before too.

>
> PS: Looks like that this tree no longer available
> git://git.infradead.org/mrv8k.git :/

So I've actually got a Marvell GPL-ed 8335 "duplex" driver and firmware
(ie, STA and AP mode in one firmware file) lying around. It's the
standard Marvell net80211-based driver built for 2.6.18 or something,
but I'm happy to post it and then you could try to (1) port the existing
net80211 stuff to 2.6.3x to make sure the card + firmware actually work,
then (2) fix up mrv8k or write a new mac80211 driver once we have the
baseline from #1.

Does that sound like a plan? I have no time for it, but I'm happy to
put the driver up somewhere that others can make use of it. I'll
recheck the provenience of the driver but it's got MODULE_LICENSE("GPL")
and GPL headers all over, including on the firmware file. I might have
grabbed it off the Extranet but I'll check.

Dan



2010-11-18 11:37:36

by Julian Calaby

[permalink] [raw]
Subject: Re: Bringing up Marvell 88W8300

On Thu, Nov 18, 2010 at 08:07, Dan Williams <[email protected]> wrote:
> On Wed, 2010-11-17 at 20:15 +0300, Denis Kirjanov wrote:
>> >
>> > I will try to load the firmware that comes with the driver source.
>> >
>> >> Does that sound like a plan? ?I have no time for it, but I'm happy to
>> >> put the driver up somewhere that others can make use of it. ?I'll
>> >> recheck the provenience of the driver but it's got MODULE_LICENSE("GPL")
>> >> and GPL headers all over, including on the firmware file. ?I might have
>> >> grabbed it off the Extranet but I'll check.
>> >>
>> Marvell firmware is OK for me and I can successfully boot in .
>> I believe that we can now port driver to the new wireless stuff such
>> as cfg80211.
>
> Yeah, that's the driver, the MSI thing or whatever linked from openwrt
> forums. ?Basically, I think we should get that driver working so we know
> that *something* works on these cards, and then use it and mwl8k as a
> guide to writing a new mac80211 driver for the 8335.

I have a card with this chipset (A Netgear WG311v3) and have a spare
machine to test it in. I'm quite happy to test the driver at any stage
of development.

Thanks,

--
Julian Calaby

Email: [email protected]
Profile: http://www.google.com/profiles/julian.calaby/
.Plan: http://sites.google.com/site/juliancalaby/

2010-11-17 17:15:23

by Denis Kirjanov

[permalink] [raw]
Subject: Re: Bringing up Marvell 88W8300

>
> I will try to load the firmware that comes with the driver source.
>
>> Does that sound like a plan? ?I have no time for it, but I'm happy to
>> put the driver up somewhere that others can make use of it. ?I'll
>> recheck the provenience of the driver but it's got MODULE_LICENSE("GPL")
>> and GPL headers all over, including on the firmware file. ?I might have
>> grabbed it off the Extranet but I'll check.
>>
Marvell firmware is OK for me and I can successfully boot in .
I believe that we can now port driver to the new wireless stuff such
as cfg80211.

@David, is it possible to use infraded.org form mrv8k as it was before?


--
Regards,
Denis

2010-11-17 21:08:55

by Dan Williams

[permalink] [raw]
Subject: Re: Bringing up Marvell 88W8300

On Wed, 2010-11-17 at 20:15 +0300, Denis Kirjanov wrote:
> >
> > I will try to load the firmware that comes with the driver source.
> >
> >> Does that sound like a plan? I have no time for it, but I'm happy to
> >> put the driver up somewhere that others can make use of it. I'll
> >> recheck the provenience of the driver but it's got MODULE_LICENSE("GPL")
> >> and GPL headers all over, including on the firmware file. I might have
> >> grabbed it off the Extranet but I'll check.
> >>
> Marvell firmware is OK for me and I can successfully boot in .
> I believe that we can now port driver to the new wireless stuff such
> as cfg80211.

Yeah, that's the driver, the MSI thing or whatever linked from openwrt
forums. Basically, I think we should get that driver working so we know
that *something* works on these cards, and then use it and mwl8k as a
guide to writing a new mac80211 driver for the 8335.

Dan



2010-12-15 00:39:23

by Yuhong Bao

[permalink] [raw]
Subject: Re: Bringing up Marvell 88W8300

> I have a card with this chipset (A Netgear WG311v3) and have a spare
> machine to test it in. I'm quite happy to test the driver at any stage
> of development.
>
> Thanks,
>
I have a WG511v2 card from the same vendor with this chipset too and I remember
the pain of using
Linux without a driver for it. Any ETA for getting a driver merged onto the
driver tree? Unfortunately I have no laptop with CardBus slots with Linux
installed on the hard drive at this point.