2011-04-10 19:25:35

by Xose Vazquez Perez

[permalink] [raw]
Subject: Re: Firmware files for Ralink RT28x0

Ben Hutchings wrote:

> Ralink provides multiple drivers per bus type for RT28xx and later
> chips. For PCI devices they split between RT2860 and RT309x; for USB
> devices they split between RT2870 and RT307x (I think - the chip model
> numbers don't seem to be stated consistently).
>
> In addition, the USB drivers have two separate images packed together
> and they can select different images based on the controller version:
>
> #ifdef RTMP_MAC_USB
> if ((Version != 0x2860) && (Version != 0x2872) && (Version != 0x3070))
> { // Use Firmware V2.
> //printk("KH:Use New Version,part2\n");
> pFirmwareImage = (PUCHAR)&FirmwareImage[FIRMWAREIMAGEV1_LENGTH];
> FileLength = FIRMWAREIMAGEV2_LENGTH;
> }
> else
> {
> //printk("KH:Use New Version,part1\n");
> pFirmwareImage = FirmwareImage;
> FileLength = FIRMWAREIMAGEV1_LENGTH;
> }
> #endif // RTMP_MAC_USB //
>
> The firmware blobs in RT2870 version 2009-08-20 and RT3070 version
> 2009-05-25 are all marked as version 17 (or 0.17), but *they all have
> different contents*.
>
> I attempted to maintain the same version selection logic when converting
> the staging drivers to use the firmware loader, since I assumed there
> was a good reason for it.
>

As you can see in the ralink web[1] RT28XX/RT30XX USB devices (RT2870/RT2770/RT3572/RT3070)
need _only_ the rt2870.bin fw-file.

And RT28XX/RT30XX PCI/mPCI/PCIe/CardBus devices
(RT2760/RT2790/RT2860/RT2890/RT3060/RT3062/RT3562/RT2860/RT2760/RT2890/RT2790/RT3090)
need _only_ the rt2860.bin fw-file.

> linux-firmware is supposed to have all firmware files referenced by any
> version of Linux

That's a good joke!
linux-firmware is *unmaintained* , a lot of firmwares are missing.
Even the intel ones(microcode.dat, ipw2{1,2}*), zd1211, etc...
Others are very old, really it's a mess.
Fedora puts _forty_ patches on top of linux-firmware.

[1] http://www.ralinktech.com/support.php?s=2


2011-04-11 13:33:00

by Gertjan van Wingerde

[permalink] [raw]
Subject: Re: Firmware for rt2800pci and rt2800usb

On Mon, Apr 11, 2011 at 3:01 PM, Larry Finger <[email protected]> wrote:
> On 04/11/2011 04:12 AM, Gertjan van Wingerde wrote:
>>
>> On Mon, Apr 11, 2011 at 5:06 AM, Larry Finger<[email protected]>
>> ?wrote:
>>>
>>> Hi,
>>>
>>> I am in the process of updating the firmware files for rt2800pci and
>>> rt2800usb. If you have one of the devices that use this driver, please
>>> test
>>> the firmware file.
>>>
>>
>> Cannot test these specific files right now, but Ralink does provide
>> firmware files
>> under these names that support all known devices supported by rt2800pci
>> and
>> rt2800usb (if they are recent enough).
>> Back home I'm using slightly older versions of the firmware files on all
>> devices
>> that I have (which does span RT2860 PCI, RT3090 PCIe, RT3562 PCI (driving
>> not
>> working), RT2870, RT2070, RT3070, RT3071, RT3072, RT3370, RT3572 (driver
>> not
>> working)).
>>
>> Where did you get these specific files from?
>>
>> I recommend using the ones that Ralink sent for inclusion in the since
>> these will
>> support even the newest devices (RT5370/RT5390).
>
> They came from
> http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-March/003381.html
>
> and
>
> http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-March/003382.html.
>
> These were the Ralink submissions to linux-firmware that did not get
> accepted or rejected.
>
> Once ralinktech.com.tw comes back up, I will grab the files from there and
> make a comparison.
>

Ok. Thanks. These would be the correct files. The ones on
ralinktech.com are probably outdated,
as Ralink doesn't seem to be that diligent to update the firmware that
can be downloaded from their
web-site as new versions come out. Usually the latest versions of the
firmware are included in the
newer versions of the Linux drivers they post on their website.

---
Gertjan

2011-04-11 03:01:11

by Larry Finger

[permalink] [raw]
Subject: Re: Firmware files for Ralink RT28x0

On 04/10/2011 05:56 PM, Xose Vazquez Perez wrote:
> On 04/11/2011 12:37 AM, Larry Finger wrote:
>
>> Do you still have the patch from one year ago? I would like to see what you proposed in changes to WHENCE.
>
> D?j? vu
>
> me: http://marc.info/?l=linux-wireless&m=129798073407070&w=2
>
> ivo: http://marc.info/?l=linux-wireless&m=128844402626603&w=2
>
> ralink: http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-March/003381.html
> http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-March/003382.html

I still don't see any problem with the patch that you supplied. The contribution
from Ivo and Ralink did not update WHENCE.

I pulled the binary files from the Ralink submission and have entered them into
my copy of linux-firmware. I need to test that 2860.bin will work with my
RT3090. Do you have a device that uses rt2800usb?

Larry

2011-04-10 21:30:30

by Larry Finger

[permalink] [raw]
Subject: Re: Firmware files for Ralink RT28x0

On 04/10/2011 04:03 PM, Ben Hutchings wrote:
> On Sun, 2011-04-10 at 21:25 +0200, Xose Vazquez Perez wrote:
>> Ben Hutchings wrote:
>>
>>> Ralink provides multiple drivers per bus type for RT28xx and later
>>> chips. For PCI devices they split between RT2860 and RT309x; for USB
>>> devices they split between RT2870 and RT307x (I think - the chip model
>>> numbers don't seem to be stated consistently).
>>>
>>> In addition, the USB drivers have two separate images packed together
>>> and they can select different images based on the controller version:
>>>
>>> #ifdef RTMP_MAC_USB
>>> if ((Version != 0x2860)&& (Version != 0x2872)&& (Version != 0x3070))
>>> { // Use Firmware V2.
>>> //printk("KH:Use New Version,part2\n");
>>> pFirmwareImage = (PUCHAR)&FirmwareImage[FIRMWAREIMAGEV1_LENGTH];
>>> FileLength = FIRMWAREIMAGEV2_LENGTH;
>>> }
>>> else
>>> {
>>> //printk("KH:Use New Version,part1\n");
>>> pFirmwareImage = FirmwareImage;
>>> FileLength = FIRMWAREIMAGEV1_LENGTH;
>>> }
>>> #endif // RTMP_MAC_USB //
>>>
>>> The firmware blobs in RT2870 version 2009-08-20 and RT3070 version
>>> 2009-05-25 are all marked as version 17 (or 0.17), but *they all have
>>> different contents*.
>>>
>>> I attempted to maintain the same version selection logic when converting
>>> the staging drivers to use the firmware loader, since I assumed there
>>> was a good reason for it.
>>>
>>
>> As you can see in the ralink web[1] RT28XX/RT30XX USB devices (RT2870/RT2770/RT3572/RT3070)
>> need _only_ the rt2870.bin fw-file.
>>
>> And RT28XX/RT30XX PCI/mPCI/PCIe/CardBus devices
>> (RT2760/RT2790/RT2860/RT2890/RT3060/RT3062/RT3562/RT2860/RT2760/RT2890/RT2790/RT3090)
>> need _only_ the rt2860.bin fw-file.
>
> These files aren't used by the Ralink drivers. So why should you
> believe the labels on them?
>
>>> linux-firmware is supposed to have all firmware files referenced by any
>>> version of Linux
>>
>> That's a good joke!
>> linux-firmware is *unmaintained* , a lot of firmwares are missing.
>
> linux-firmware is not *actively* maintained; it requires people to send
> submissions (repeatedly...).
>
>> Even the intel ones(microcode.dat, ipw2{1,2}*), zd1211, etc...
>
> I think there may be a problem with distribution of Intel Pro Wireless
> firmware because Intel requires users to accept a EULA.
>
>> Others are very old, really it's a mess.
>> Fedora puts _forty_ patches on top of linux-firmware.
>
> So help to make it better.

Agreed.

My experiences with linux-firmware are that they are justifiably particular
about the license. My first attempt was with in-line firmware for the staging
driver r8712u that had been distributed in a header file under GPL V2. That
source compiled into a binary was not acceptible. After Realtek sent me their
license that clearly gave the right to redistribute their firmware, my
contribution was immediately accepted. I have since add 4 more Realtek firmware
files under the same license. All were accepted without delay.

Larry

2011-04-11 03:06:28

by Larry Finger

[permalink] [raw]
Subject: Firmware for rt2800pci and rt2800usb

Hi,

I am in the process of updating the firmware files for rt2800pci and rt2800usb.
If you have one of the devices that use this driver, please test the firmware file.

Thanks,

Larry


Attachments:
rt2860.bin (8.00 kB)
rt2870.bin (8.00 kB)
Download all attachments
Subject: Re: Firmware for rt2800pci and rt2800usb

Hi,


On Mon, Apr 11, 2011 at 5:06 AM, Larry Finger <[email protected]> wrote:
> Hi,
>
> I am in the process of updating the firmware files for rt2800pci and
> rt2800usb. If you have one of the devices that use this driver, please test
> the firmware file.
>

Tested rt2870.bin on vid=07b8 pid=3071 in AP mode using HostAPD, up to
now, no problems found.

> Thanks,
>
> Larry
>



--
________________________________
Juan Carlos Garza

2011-04-11 11:23:16

by Ben Hutchings

[permalink] [raw]
Subject: Re: Firmware for rt2800pci and rt2800usb

On Mon, 2011-04-11 at 13:14 +0200, Juan Carlos Garza wrote:
> Hi,
>
>
> On Mon, Apr 11, 2011 at 5:06 AM, Larry Finger <[email protected]> wrote:
> > Hi,
> >
> > I am in the process of updating the firmware files for rt2800pci and
> > rt2800usb. If you have one of the devices that use this driver, please test
> > the firmware file.
> >
>
> Tested rt2870.bin on vid=07b8 pid=3071 in AP mode using HostAPD, up to
> now, no problems found.

Could people report versions or md5sums rather than just filenames,
please?

Ben.

--
Ben Hutchings
Once a job is fouled up, anything done to improve it makes it worse.


Attachments:
signature.asc (828.00 B)
This is a digitally signed message part
Subject: Re: Firmware for rt2800pci and rt2800usb

Larry Finger <Larry.Finger@...> writes:

> I am in the process of updating the firmware files for rt2800pci and
> rt2800usb.
> If you have one of the devices that use this driver, please test the firmware
> file.

Tested with the following device and rt2800usb driver from kernel 2.6.38:

Bus 001 Device 002: ID 148f:3071 Ralink Technology, Corp. RT3071 Wireless
Adapter

e4b60f5bb4980a26cbac32be690451d6 rt2870.bin (from linux-firmware tree)
phy0 -> rt2x00lib_request_firmware: Error - Current firmware does not support
detected chipset.

a18579be68e02caf3c879407fd8e5b82 rt2870.bin (from RT2870_Firmware_V8.zip)
phy0 -> rt2x00lib_request_firmware: Error - Current firmware does not support
detected chipset.

cfc8663dc0c671f1cf022c791b2f1283 rt2870.bin (from
2009_0820_RT2870_Linux_STA_V2.2.0.0.tar.bz2)
Works

36c944c3138125605d28c0a3a1338be9 rt2870.bin (from your email)
Works

Best regards,
Chí-Thanh Christopher Nguyễn


2011-04-11 05:48:36

by Steev Klimaszewski

[permalink] [raw]
Subject: Re: Firmware for rt2800pci and rt2800usb

On Sun, Apr 10, 2011 at 10:06 PM, Larry Finger
<[email protected]> wrote:
> Hi,
>
> I am in the process of updating the firmware files for rt2800pci and
> rt2800usb. If you have one of the devices that use this driver, please test
> the firmware file.
>
> Thanks,
>
> Larry
>

Using the firmware here on an Azurewave AW-NU706H. Multiple machines
(Genesi EfikaMX Smartbook and Smarttops) without any issues.

--
Steev Klimaszewski <[email protected]>
Senior Software Engineer, Genesi USA, Inc.

Subject: Re: Firmware for rt2800pci and rt2800usb

Hi, here the MD5...

On Mon, Apr 11, 2011 at 1:23 PM, Ben Hutchings <[email protected]> wrote:
> On Mon, 2011-04-11 at 13:14 +0200, Juan Carlos Garza wrote:
>> Hi,
>>
>>
>> On Mon, Apr 11, 2011 at 5:06 AM, Larry Finger <[email protected]> wrote:
>> > Hi,
>> >
>> > I am in the process of updating the firmware files for rt2800pci and
>> > rt2800usb. If you have one of the devices that use this driver, please test
>> > the firmware file.
>> >
>>
>> Tested rt2870.bin on vid=07b8 pid=3071 in AP mode using HostAPD, up to
>> now, no problems found.
>
> Could people report versions or md5sums rather than just filenames,
> please?

36c944c3138125605d28c0a3a1338be9 rt2870.bin

The version was not specified and I don't know how to extract it.

>
> Ben.
>
> --
> Ben Hutchings
> Once a job is fouled up, anything done to improve it makes it worse.
>



--
Juan Carlos Garza

2011-04-10 21:46:50

by Xose Vazquez Perez

[permalink] [raw]
Subject: Re: Firmware files for Ralink RT28x0

On 04/10/2011 11:03 PM, Ben Hutchings wrote:

> These files aren't used by the Ralink drivers. So why should you
> believe the labels on them?

Because the hardware manufacturer says that:
http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-March/003380.html

Anyway, the firmware in staging(or ralink web) drivers look different because
they are different _versions_ of the _same_ firmware.

rt2870.bin: before 4096 bytes, now 8192 bytes.

> linux-firmware is not *actively* maintained; it requires people to send
> submissions (repeatedly...).

On 04/06/2010, *ONE YEAR AGO* , I sent a patch to rt2870.bin rt2860.bin.
It went to /dev/null

A similar patch was sent by the *driver maintainer* on 10/30/2010.
It went to /dev/null

The same patch was sent by the *hardware manufacturer* on 03/11/2011
It went to /dev/null

Torvalds, Mozart and God are pending.

> I think there may be a problem with distribution of Intel Pro Wireless
> firmware because Intel requires users to accept a EULA.

If it's included in Fedora then there are zero issues with licenses.

2011-04-11 13:19:46

by Larry Finger

[permalink] [raw]
Subject: Re: Firmware for rt2800pci and rt2800usb

On 04/11/2011 06:23 AM, Ben Hutchings wrote:
> On Mon, 2011-04-11 at 13:14 +0200, Juan Carlos Garza wrote:
>> Hi,
>>
>>
>> On Mon, Apr 11, 2011 at 5:06 AM, Larry Finger<[email protected]> wrote:
>>> Hi,
>>>
>>> I am in the process of updating the firmware files for rt2800pci and
>>> rt2800usb. If you have one of the devices that use this driver, please test
>>> the firmware file.
>>>
>>
>> Tested rt2870.bin on vid=07b8 pid=3071 in AP mode using HostAPD, up to
>> now, no problems found.
>
> Could people report versions or md5sums rather than just filenames,
> please?

I think we can safely assume that these testing reports are on the files that I
sent yesterday, but for completeness the md5sums are

75a1da3caa0b1c95e81dfba207f834c6 rt2860.bin
36c944c3138125605d28c0a3a1338be9 rt2870.bin

The version numbers are 34.00 for rt2860.bin and 29.00 for rt2870.bin.

Larry


2011-04-10 22:37:35

by Larry Finger

[permalink] [raw]
Subject: Re: Firmware files for Ralink RT28x0

On 04/10/2011 04:46 PM, Xose Vazquez Perez wrote:
> On 04/10/2011 11:03 PM, Ben Hutchings wrote:
>
>> These files aren't used by the Ralink drivers. So why should you
>> believe the labels on them?
>
> Because the hardware manufacturer says that:
> http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-March/003380.html
>
> Anyway, the firmware in staging(or ralink web) drivers look different because
> they are different _versions_ of the _same_ firmware.
>
> rt2870.bin: before 4096 bytes, now 8192 bytes.
>
>> linux-firmware is not *actively* maintained; it requires people to send
>> submissions (repeatedly...).
>
> On 04/06/2010, *ONE YEAR AGO* , I sent a patch to rt2870.bin rt2860.bin.
> It went to /dev/null
>
> A similar patch was sent by the *driver maintainer* on 10/30/2010.
> It went to /dev/null
>
> The same patch was sent by the *hardware manufacturer* on 03/11/2011
> It went to /dev/null
>
> Torvalds, Mozart and God are pending.
>
>> I think there may be a problem with distribution of Intel Pro Wireless
>> firmware because Intel requires users to accept a EULA.
>
> If it's included in Fedora then there are zero issues with licenses.
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html

Do you still have the patch from one year ago? I would like to see what you
proposed in changes to WHENCE.

Larry

2011-04-11 15:05:42

by Johannes Stezenbach

[permalink] [raw]
Subject: Re: Firmware for rt2800pci and rt2800usb

Hi,

On Mon, Apr 11, 2011 at 08:01:06AM -0500, Larry Finger wrote:
>
> They came from
> http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-March/003381.html
>
> and
>
> http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-March/003382.html.
>
> These were the Ralink submissions to linux-firmware that did not get
> accepted or rejected.
>
> Once ralinktech.com.tw comes back up, I will grab the files from
> there and make a comparison.

I had asked Ralink guys in private mail a while ago and they
said the files on ralinktech.com.tw are older. The current
versions are those posted for linux-firmware.
(Actually I complained because each of the driver packages
contains a different version of the firmware, it's not very
clear which one is the latest one on the Ralink download site.)

Also, if you look at rt2800_check_firmware(), it seems some of
the firmware files are actually multiple different firmware
images packaged in one file. I think this makes versioning
even more confusing.


Johannes

2011-04-11 13:01:11

by Larry Finger

[permalink] [raw]
Subject: Re: Firmware for rt2800pci and rt2800usb

On 04/11/2011 04:12 AM, Gertjan van Wingerde wrote:
> On Mon, Apr 11, 2011 at 5:06 AM, Larry Finger<[email protected]> wrote:
>> Hi,
>>
>> I am in the process of updating the firmware files for rt2800pci and
>> rt2800usb. If you have one of the devices that use this driver, please test
>> the firmware file.
>>
>
> Cannot test these specific files right now, but Ralink does provide
> firmware files
> under these names that support all known devices supported by rt2800pci and
> rt2800usb (if they are recent enough).
> Back home I'm using slightly older versions of the firmware files on all devices
> that I have (which does span RT2860 PCI, RT3090 PCIe, RT3562 PCI (driving not
> working), RT2870, RT2070, RT3070, RT3071, RT3072, RT3370, RT3572 (driver not
> working)).
>
> Where did you get these specific files from?
>
> I recommend using the ones that Ralink sent for inclusion in the since
> these will
> support even the newest devices (RT5370/RT5390).

They came from
http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-March/003381.html

and

http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-March/003382.html.

These were the Ralink submissions to linux-firmware that did not get accepted or
rejected.

Once ralinktech.com.tw comes back up, I will grab the files from there and make
a comparison.

Larry



2011-04-10 21:03:36

by Ben Hutchings

[permalink] [raw]
Subject: Re: Firmware files for Ralink RT28x0

On Sun, 2011-04-10 at 21:25 +0200, Xose Vazquez Perez wrote:
> Ben Hutchings wrote:
>
> > Ralink provides multiple drivers per bus type for RT28xx and later
> > chips. For PCI devices they split between RT2860 and RT309x; for USB
> > devices they split between RT2870 and RT307x (I think - the chip model
> > numbers don't seem to be stated consistently).
> >
> > In addition, the USB drivers have two separate images packed together
> > and they can select different images based on the controller version:
> >
> > #ifdef RTMP_MAC_USB
> > if ((Version != 0x2860) && (Version != 0x2872) && (Version != 0x3070))
> > { // Use Firmware V2.
> > //printk("KH:Use New Version,part2\n");
> > pFirmwareImage = (PUCHAR)&FirmwareImage[FIRMWAREIMAGEV1_LENGTH];
> > FileLength = FIRMWAREIMAGEV2_LENGTH;
> > }
> > else
> > {
> > //printk("KH:Use New Version,part1\n");
> > pFirmwareImage = FirmwareImage;
> > FileLength = FIRMWAREIMAGEV1_LENGTH;
> > }
> > #endif // RTMP_MAC_USB //
> >
> > The firmware blobs in RT2870 version 2009-08-20 and RT3070 version
> > 2009-05-25 are all marked as version 17 (or 0.17), but *they all have
> > different contents*.
> >
> > I attempted to maintain the same version selection logic when converting
> > the staging drivers to use the firmware loader, since I assumed there
> > was a good reason for it.
> >
>
> As you can see in the ralink web[1] RT28XX/RT30XX USB devices (RT2870/RT2770/RT3572/RT3070)
> need _only_ the rt2870.bin fw-file.
>
> And RT28XX/RT30XX PCI/mPCI/PCIe/CardBus devices
> (RT2760/RT2790/RT2860/RT2890/RT3060/RT3062/RT3562/RT2860/RT2760/RT2890/RT2790/RT3090)
> need _only_ the rt2860.bin fw-file.

These files aren't used by the Ralink drivers. So why should you
believe the labels on them?

> > linux-firmware is supposed to have all firmware files referenced by any
> > version of Linux
>
> That's a good joke!
> linux-firmware is *unmaintained* , a lot of firmwares are missing.

linux-firmware is not *actively* maintained; it requires people to send
submissions (repeatedly...).

> Even the intel ones(microcode.dat, ipw2{1,2}*), zd1211, etc...

I think there may be a problem with distribution of Intel Pro Wireless
firmware because Intel requires users to accept a EULA.

> Others are very old, really it's a mess.
> Fedora puts _forty_ patches on top of linux-firmware.

So help to make it better.

Ben.

--
Ben Hutchings
Once a job is fouled up, anything done to improve it makes it worse.


Attachments:
signature.asc (828.00 B)
This is a digitally signed message part

2011-04-11 09:12:54

by Gertjan van Wingerde

[permalink] [raw]
Subject: Re: Firmware for rt2800pci and rt2800usb

On Mon, Apr 11, 2011 at 5:06 AM, Larry Finger <[email protected]> wrote:
> Hi,
>
> I am in the process of updating the firmware files for rt2800pci and
> rt2800usb. If you have one of the devices that use this driver, please test
> the firmware file.
>

Cannot test these specific files right now, but Ralink does provide
firmware files
under these names that support all known devices supported by rt2800pci and
rt2800usb (if they are recent enough).
Back home I'm using slightly older versions of the firmware files on all devices
that I have (which does span RT2860 PCI, RT3090 PCIe, RT3562 PCI (driving not
working), RT2870, RT2070, RT3070, RT3071, RT3072, RT3370, RT3572 (driver not
working)).

Where did you get these specific files from?

I recommend using the ones that Ralink sent for inclusion in the since
these will
support even the newest devices (RT5370/RT5390).

---
Gertjan