Re: b43-fwcutter patch for new firmware versions (508.1107 and 508.102)

2009-09-03 Thread Gábor Stefanik
On Fri, Sep 4, 2009 at 12:02 AM, Daniel Lenski wrote:
> On Thu, 2009-09-03 at 16:37 -0500, Larry Finger wrote:
>> Daniel Lenski wrote:
>> > Larry,
>> > I agree on the ridiculously poor packaging... did I mention they're 1gb+
>> > extracted?
>>
>> I didn't look at what is contained within that package, but we
>> certainly don't need it.
>
> It appears to be the complete toolchain used to build the firmware,
> complete with a bunch of random binaries floating around.
>
>> > I have not found any other source of these, unfortunately.  I am happy
>> > to send the extracted firmware to developers off-list if desired.
>> > Linksys's less-than-helpful GPL source code page gives no indication of
>> > the age or date of the various files, so it's hard for me to tell which
>> > might be newer without downloading many Gb and extracting many
>> > firmwares.  I have half a mind to write a Python script...
>>
>> Not necessary to send the extracted software. If and when I want to
>> see the new firmware, I'm perfectly happy to download that big file;
>> however, it does not make sense for some user who is using the
>> openSUSE script to wait through a large download just to install firmware.
>
> Good point.  I'm not really familiar with the legal intricacies of the
> licensing issues involved.  The LICENSE files strewn throughout the
> tarball *seem* to indicate that it'd be permissible to cut out the
> relevant binaries and distribute them, but I'm in way over my head
> here...
>
>> >> I notice in your extraction that there are now ucode files for
>> >> revisions 16, 17, 19, 20, and 21.
>> >
>> > Yes, indeed.  So are these the source of the FW12/13/14/... numbering?
>>
>> No. Michael assigns a new number whenever he releases a new version.
>> All the new files are supposed to be listed with that number. At least
>> I think that is the way it works. Version 12 is the last one released.
>
> Hmm... I think we might be talking about two different things.  I'm
> wondering about the source of the .id = "FWxx" tags in fwcutter_list.h.

They have no source - everytime a new version is added to fwcutter,
it's FWxx ID is incremented. E.g. if the most recent version is FW15,
then adding a new entry should be done as FW16.

-- 
Vista: [V]iruses, [I]ntruders, [S]pyware, [T]rojans and [A]dware. :-)
___
Bcm43xx-dev mailing list
Bcm43xx-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev


Re: b43-fwcutter patch for new firmware versions (508.1107 and 508.102)

2009-09-03 Thread Daniel Lenski
On Thu, 2009-09-03 at 16:37 -0500, Larry Finger wrote:
> Daniel Lenski wrote:
> > Larry,
> > I agree on the ridiculously poor packaging... did I mention they're 1gb+
> > extracted?
> 
> I didn't look at what is contained within that package, but we
> certainly don't need it.

It appears to be the complete toolchain used to build the firmware,
complete with a bunch of random binaries floating around.

> > I have not found any other source of these, unfortunately.  I am happy
> > to send the extracted firmware to developers off-list if desired.
> > Linksys's less-than-helpful GPL source code page gives no indication of
> > the age or date of the various files, so it's hard for me to tell which
> > might be newer without downloading many Gb and extracting many
> > firmwares.  I have half a mind to write a Python script...
> 
> Not necessary to send the extracted software. If and when I want to
> see the new firmware, I'm perfectly happy to download that big file;
> however, it does not make sense for some user who is using the
> openSUSE script to wait through a large download just to install firmware.

Good point.  I'm not really familiar with the legal intricacies of the
licensing issues involved.  The LICENSE files strewn throughout the
tarball *seem* to indicate that it'd be permissible to cut out the
relevant binaries and distribute them, but I'm in way over my head
here...

> >> I notice in your extraction that there are now ucode files for
> >> revisions 16, 17, 19, 20, and 21.
> > 
> > Yes, indeed.  So are these the source of the FW12/13/14/... numbering?
> 
> No. Michael assigns a new number whenever he releases a new version.
> All the new files are supposed to be listed with that number. At least
> I think that is the way it works. Version 12 is the last one released.

Hmm... I think we might be talking about two different things.  I'm
wondering about the source of the .id = "FWxx" tags in fwcutter_list.h.

Dan

___
Bcm43xx-dev mailing list
Bcm43xx-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev


Re: b43-fwcutter patch for new firmware versions (508.1107 and 508.102)

2009-09-03 Thread Larry Finger
Daniel Lenski wrote:
> Larry,
> I agree on the ridiculously poor packaging... did I mention they're 1gb+
> extracted?

I didn't look at what is contained within that package, but we
certainly don't need it.

> I have not found any other source of these, unfortunately.  I am happy
> to send the extracted firmware to developers off-list if desired.
> Linksys's less-than-helpful GPL source code page gives no indication of
> the age or date of the various files, so it's hard for me to tell which
> might be newer without downloading many Gb and extracting many
> firmwares.  I have half a mind to write a Python script...

Not necessary to send the extracted software. If and when I want to
see the new firmware, I'm perfectly happy to download that big file;
however, it does not make sense for some user who is using the
openSUSE script to wait through a large download just to install firmware.
> 
>> I notice in your extraction that there are now ucode files for
>> revisions 16, 17, 19, 20, and 21.
> 
> Yes, indeed.  So are these the source of the FW12/13/14/... numbering?

No. Michael assigns a new number whenever he releases a new version.
All the new files are supposed to be listed with that number. At least
I think that is the way it works. Version 12 is the last one released.

Larry
___
Bcm43xx-dev mailing list
Bcm43xx-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev


Re: b43-fwcutter patch for new firmware versions (508.1107 and 508.102)

2009-09-03 Thread Larry Finger
Sending to the list:

Daniel Lenski wrote:
> 
> On that note, is there a way to identify the ucode-version of b43 
> firmware without reloading the b43 driver?

The dmesg output has it.

> A quick glance at the drivers/net/wireless/b43/main.c suggests that the 
> driver actually loads the firmware, then queries the device for its 
> version number... but maybe there's some kind of heuristic?

The ucode file that is loaded is dictated by the revision number of
the 802.11 core. The output from 'dmesg | egrep "ssb|b43"' on my
system shows the following:

ssb: Core 0 found: ChipCommon (cc 0x800, rev 0x16, vendor 0x4243)
ssb: Core 1 found: IEEE 802.11 (cc 0x812, rev 0x0F, vendor 0x4243)
ssb: Core 2 found: PCMCIA (cc 0x80D, rev 0x0A, vendor 0x4243)
ssb: Core 3 found: PCI-E (cc 0x820, rev 0x09, vendor 0x4243)
ssb: Found rev 1 PMU (capabilities 0x02A62F01)
ssb: SPROM revision 8 detected.
ssb: Sonics Silicon Backplane found on PCI device :04:00.0
b43-phy0: Broadcom 4312 WLAN found (core revision 15)
b43-phy0 debug: Found PHY: Analog 6, Type 5, Revision 1
b43-phy0 debug: Found Radio: Manuf 0x17F, Version 0x2062, Revision 2
b43 ssb0:0: firmware: requesting b43/ucode15.fw
b43 ssb0:0: firmware: requesting b43/lp0initvals15.fw
b43 ssb0:0: firmware: requesting b43/lp0bsinitvals15.fw
b43-phy0: Loading firmware version 478.104 (2008-07-01 00:50:23)

Note that 0x0F in ssb core 1 => ucode15. The version is stored within
that file. A number of different versions are likely to work with a
given card. In fact, there may not be any difference in the ucode5
file between firmware version 410.XXX and 508.XXX. One would have to
look at the binary differences to tell if anything other that the
version number had changed.

Larry

___
Bcm43xx-dev mailing list
Bcm43xx-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev


Re: b43-fwcutter patch for new firmware versions (508.1107 and 508.102)

2009-09-03 Thread Daniel Lenski
On Thu, 2009-09-03 at 16:13 -0500, Larry Finger wrote:
> I certainly would like to have access to the later firmware; however
> downloads of 338 and 340 MB seem a little silly just to get a few
> hundred KB of firmware. Have you found any other sources with 508.XX
> firmware?

Larry,
I agree on the ridiculously poor packaging... did I mention they're 1gb+
extracted?

I have not found any other source of these, unfortunately.  I am happy
to send the extracted firmware to developers off-list if desired.
Linksys's less-than-helpful GPL source code page gives no indication of
the age or date of the various files, so it's hard for me to tell which
might be newer without downloading many Gb and extracting many
firmwares.  I have half a mind to write a Python script...

> I notice in your extraction that there are now ucode files for
> revisions 16, 17, 19, 20, and 21.

Yes, indeed.  So are these the source of the FW12/13/14/... numbering?

Dan

___
Bcm43xx-dev mailing list
Bcm43xx-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev


Re: b43-fwcutter patch for new firmware versions (508.1107 and 508.102)

2009-09-03 Thread Larry Finger
Daniel Lenski wrote:
> Hi,
> I'm a b43 noob, but have been playing around with b43-fwcutter and found
> a couple more versions of the firmware distributed by Linksys which I
> can extract with mklist.py.
> 
> Both of these firmwares work on my BCM4311 laptop card in managed and
> monitor modes.  When loaded, they identify themselves as newer firmware
> revisions than anything that b43-fwcutter currently knows about:
> 
>   * 508.1107 (2009-06-26 19:16:02), extracted from
> 
> http://downloads.linksysbycisco.com/downloads/wrt610n_v2.00.00.05_us.tar,0.gz
>   * 508.102 (2008-10-16 18:23:25), extracted from
> 
> http://downloads.linksysbycisco.com/downloads/wrt610n_v1.00.03.15_us.tar,0.gz
> 
> I was particularly interested in these because I believe the Linksys
> WRT610N uses an LP PHY, and I know that those are actively worked on by
> the b43 developers.  I'm not sure if these are useful to the project
> but... *if* anyone is interested, here is a patch to fwcutter_list.h
> that adds these firmware versions.  Apologies for naming them "FW15" and
> "FW16" in the patch, but I really don't understand the naming convention
> used.
> 
> Anyway, I hope these can be useful.  Thanks for an amazing b43 driver!

I certainly would like to have access to the later firmware; however
downloads of 338 and 340 MB seem a little silly just to get a few
hundred KB of firmware. Have you found any other sources with 508.XX
firmware?

I notice in your extraction that there are now ucode files for
revisions 16, 17, 19, 20, and 21.

Larry
___
Bcm43xx-dev mailing list
Bcm43xx-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev


Re: b43-fwcutter patch for new firmware versions (508.1107 and 508.102)

2009-09-03 Thread Daniel Lenski
On Thu, 2009-09-03 at 16:49 -0400, Daniel Lenski wrote:
> Both of these firmwares work on my BCM4311 laptop card in managed and
> monitor modes.  When loaded, they identify themselves as newer firmware
> revisions than anything that b43-fwcutter currently knows about:

On that note, is there a way to identify the ucode-version of b43 
firmware without reloading the b43 driver?

A quick glance at the drivers/net/wireless/b43/main.c suggests that the 
driver actually loads the firmware, then queries the device for its 
version number... but maybe there's some kind of heuristic?

Dan

___
Bcm43xx-dev mailing list
Bcm43xx-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev


b43-fwcutter patch for new firmware versions (508.1107 and 508.102)

2009-09-03 Thread Daniel Lenski
Hi,
I'm a b43 noob, but have been playing around with b43-fwcutter and found
a couple more versions of the firmware distributed by Linksys which I
can extract with mklist.py.

Both of these firmwares work on my BCM4311 laptop card in managed and
monitor modes.  When loaded, they identify themselves as newer firmware
revisions than anything that b43-fwcutter currently knows about:

  * 508.1107 (2009-06-26 19:16:02), extracted from

http://downloads.linksysbycisco.com/downloads/wrt610n_v2.00.00.05_us.tar,0.gz
  * 508.102 (2008-10-16 18:23:25), extracted from

http://downloads.linksysbycisco.com/downloads/wrt610n_v1.00.03.15_us.tar,0.gz

I was particularly interested in these because I believe the Linksys
WRT610N uses an LP PHY, and I know that those are actively worked on by
the b43 developers.  I'm not sure if these are useful to the project
but... *if* anyone is interested, here is a patch to fwcutter_list.h
that adds these firmware versions.  Apologies for naming them "FW15" and
"FW16" in the patch, but I really don't understand the naming convention
used.

Anyway, I hope these can be useful.  Thanks for an amazing b43 driver!

Dan
diff -ur b43-fwcutter-012.orig/fwcutter_list.h b43-fwcutter-012/fwcutter_list.h
--- b43-fwcutter-012.orig/fwcutter_list.h	2009-06-02 11:52:55.0 -0400
+++ b43-fwcutter-012/fwcutter_list.h	2009-09-03 16:02:37.0 -0400
@@ -1,3 +1,5 @@
+
+
 /*
  * Extraction of core 4 firmware from V4 drivers has been commented out as these
  * cores will not work with driver b43.
@@ -238,6 +240,164 @@
 	EXTRACT_LIST_END
 };
 
+static struct extract _e71e88acec75eaeb27244c0a355c99b7[] =
+{
+	{ .name = "ucode19", .offset = 0x10D884, .type = EXT_UCODE_3, .length = 0x4 },
+	{ .name = "lp0initvals14", .offset = 0xAD978, .type = EXT_IV, .length = 0xB20 },
+	{ .name = "ucode16_lp", .offset = 0xE06FC, .type = EXT_UCODE_3, .length = 0x9FD0 },
+	/* ERROR: Could not guess data type for: ucode_2w16_sslpn_nobt */
+	{ .name = "ucode16_sslpn", .offset = 0xEA6D0, .type = EXT_UCODE_3, .length = 0x8B43 },
+	{ .name = "lp0bsinitvals14", .offset = 0xAE4A0, .type = EXT_IV, .length = 0x118 },
+	{ .name = "b0g0initvals9", .offset = 0xA79B8, .type = EXT_IV, .length = 0xAE0 },
+	{ .name = "sslpn2bsinitvals17", .offset = 0xB2C10, .type = EXT_IV, .length = 0x118 },
+	{ .name = "a0g1bsinitvals9", .offset = 0xA9CB0, .type = EXT_IV, .length = 0x118 },
+	{ .name = "b0g0bsinitvals13", .offset = 0xACBB0, .type = EXT_IV, .length = 0x118 },
+	{ .name = "ucode16_sslpn_nobt", .offset = 0xF3218, .type = EXT_UCODE_3, .length = 0x7620 },
+	{ .name = "b0g0bsinitvals5", .offset = 0xA6238, .type = EXT_IV, .length = 0x118 },
+	{ .name = "sslpn2initvals17", .offset = 0xB1F60, .type = EXT_IV, .length = 0xCA8 },
+	{ .name = "ucode4", .offset = 0xB2D50, .type = EXT_UCODE_1, .length = 0x4E60 },
+	{ .name = "b0g0initvals4", .offset = 0xA3AC8, .type = EXT_IV, .length = 0xE70 },
+	{ .name = "b0g0initvals13", .offset = 0xAC028, .type = EXT_IV, .length = 0xB80 },
+	{ .name = "ucode17", .offset = 0x1040C0, .type = EXT_UCODE_3, .length = 0x97C0 },
+	/* ERROR: Could not guess data type for: ucode_2w17 */
+	{ .name = "sslpn1bsinitvals20", .offset = 0xB2D48, .type = EXT_IV, .length = 0x0 },
+	/* ERROR: Could not guess data type for: ucode_2w16_mimo */
+	{ .name = "ucode14", .offset = 0xD19EC, .type = EXT_UCODE_2, .length = 0x6460 },
+	{ .name = "a0g0initvals5", .offset = 0xA6358, .type = EXT_IV, .length = 0xA08 },
+	{ .name = "lp0bsinitvals16", .offset = 0xB1E40, .type = EXT_IV, .length = 0x118 },
+	{ .name = "pcm4", .offset = 0x10D894, .type = EXT_PCM, .length = 0x520 },
+	{ .name = "a0g1bsinitvals5", .offset = 0xA7898, .type = EXT_IV, .length = 0x118 },
+	{ .name = "n0bsinitvals11", .offset = 0xAA940, .type = EXT_IV, .length = 0x118 },
+	{ .name = "n0absinitvals11", .offset = 0xAAA60, .type = EXT_IV, .length = 0x118 },
+	/* ERROR: Could not guess data type for: ucode_bomminor */
+	{ .name = "a0g1bsinitvals13", .offset = 0xAD858, .type = EXT_IV, .length = 0x118 },
+	{ .name = "pcm5", .offset = 0x10DDB8, .type = EXT_PCM, .length = 0x520 },
+	/* ERROR: Could not guess data type for: ucode_2w_bomminor */
+	{ .name = "ucode9", .offset = 0xBD2A8, .type = EXT_UCODE_2, .length = 0x6248 },
+	{ .name = "a0g0bsinitvals9", .offset = 0xA9B90, .type = EXT_IV, .length = 0x118 },
+	{ .name = "a0g0bsinitvals4", .offset = 0xA57F0, .type = EXT_IV, .length = 0x30 },
+	{ .name = "ucode20", .offset = 0x10D88C, .type = EXT_UCODE_3, .length = 0x4 },
+	/* ERROR: Could not guess data type for: ucode_2w16_sslpn */
+	{ .name = "a0g1initvals5", .offset = 0xA6D68, .type = EXT_IV, .length = 0xA08 },
+	{ .name = "n0bsinitvals16", .offset = 0xB0160, .type = EXT_IV, .length = 0x118 },
+	{ .name = "b0g0bsinitvals4", .offset = 0xA4940, .type = EXT_IV, .length = 0x30 },
+	{ .name = "lp0initvals15", .offset = 0xAE5C0, .type = EXT_IV, .length = 0xD28 },
+	{ .name = "b0g0initvals5", .offset = 0xA5828, .type = EXT_IV, .length = 0xA08 },
+	/* ERROR: Could

Re: same problem with card

2009-09-03 Thread Larry Finger
Brian J. Mc Hugh wrote:
> Hi Larry and Gábor,
> 
> Gábor gave the suggestion that made it work in Debian version 5.0.2
> kernel 2.26,
> 
> sudo modprobe b43 btcoex=0
> sudo /etc/init.d/networking restart
> 
> Larry then suggested I remove b43 and re-add it, which all worked!
> 
> sudo modprobe -rv b44
> sudo modprobe -v b43
> sudo /etc/init.d/networking restart

OK, we have established that neither of these command sets should have
done anything. As you are using the /etc/init.d/networking script to
control your wireless, I suspect that the details are in
/etc/network/interfaces. Please post that file.

Larry


___
Bcm43xx-dev mailing list
Bcm43xx-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev