Since commit e565275 entitled "ssb: pci: Standardize a function to get mac
address", the SPROM readout of the MAC has had the values flipped so that
00:11:22:33:44:55 became 11:00:33:22:55:44. The fix has been tested on both
little- and big-endian architectures.
Reported-by: Rafał Miłecki <[email protected]>
Signed-off-by: Larry Finger <[email protected]>
---
John,
This bug was introduced in 3.9, and should be fixed there.
Thanks,
Larry
---
Index: wireless-testing-new/drivers/ssb/pci.c
===================================================================
--- wireless-testing-new.orig/drivers/ssb/pci.c
+++ wireless-testing-new/drivers/ssb/pci.c
@@ -234,8 +234,8 @@ static void sprom_get_mac(char *mac, con
{
int i;
for (i = 0; i < 3; i++) {
- *mac++ = in[i];
*mac++ = in[i] >> 8;
+ *mac++ = in[i];
}
}
On 03/13/2013 01:18 PM, John W. Linville wrote:
> On Mon, Mar 11, 2013 at 03:38:26PM -0500, Larry Finger wrote:
>> Since commit e565275 entitled "ssb: pci: Standardize a function to get mac
>> address", the SPROM readout of the MAC has had the values flipped so that
>> 00:11:22:33:44:55 became 11:00:33:22:55:44. The fix has been tested on both
>> little- and big-endian architectures.
>>
>> Reported-by: Rafał Miłecki <[email protected]>
>> Signed-off-by: Larry Finger <[email protected]>
>> ---
>>
>> John,
>>
>> This bug was introduced in 3.9, and should be fixed there.
>>
>> Thanks,
>>
>> Larry
>> ---
>>
>> Index: wireless-testing-new/drivers/ssb/pci.c
>> ===================================================================
>> --- wireless-testing-new.orig/drivers/ssb/pci.c
>> +++ wireless-testing-new/drivers/ssb/pci.c
>> @@ -234,8 +234,8 @@ static void sprom_get_mac(char *mac, con
>> {
>> int i;
>> for (i = 0; i < 3; i++) {
>> - *mac++ = in[i];
>> *mac++ = in[i] >> 8;
>> + *mac++ = in[i];
>> }
>> }
>
> Actually, FWIW it seems to have been introduced in commit
> e5652756ff36ed9e1283121f788e6a17117efcab, which is slated for 3.10.
> I'm happy to merge it in wireless-next.
After further checking, I agree that it is not in 3.9. As long as the fix is
merged before 3.10, all will be OK.
Sorry for the confusion.
Larry
On Mon, Mar 11, 2013 at 03:38:26PM -0500, Larry Finger wrote:
> Since commit e565275 entitled "ssb: pci: Standardize a function to get mac
> address", the SPROM readout of the MAC has had the values flipped so that
> 00:11:22:33:44:55 became 11:00:33:22:55:44. The fix has been tested on both
> little- and big-endian architectures.
>
> Reported-by: Rafał Miłecki <[email protected]>
> Signed-off-by: Larry Finger <[email protected]>
> ---
>
> John,
>
> This bug was introduced in 3.9, and should be fixed there.
>
> Thanks,
>
> Larry
> ---
>
> Index: wireless-testing-new/drivers/ssb/pci.c
> ===================================================================
> --- wireless-testing-new.orig/drivers/ssb/pci.c
> +++ wireless-testing-new/drivers/ssb/pci.c
> @@ -234,8 +234,8 @@ static void sprom_get_mac(char *mac, con
> {
> int i;
> for (i = 0; i < 3; i++) {
> - *mac++ = in[i];
> *mac++ = in[i] >> 8;
> + *mac++ = in[i];
> }
> }
Actually, FWIW it seems to have been introduced in commit
e5652756ff36ed9e1283121f788e6a17117efcab, which is slated for 3.10.
I'm happy to merge it in wireless-next.
John
--
John W. Linville Someday the world will need a hero, and you
[email protected] might be all we have. Be ready.