Modify

Opened 6 years ago

Closed 6 years ago

Last modified 4 years ago

#10917 closed defect (fixed)

WRT150N Broadcom wl fails with error code 11

Reported by: lukasz.kwestarz@… Owned by: hauke
Priority: high Milestone: Barrier Breaker 14.07
Component: kernel Version: Trunk
Keywords: Cc:

Description

Broadcom wl driver fails with error message:

[   19.932000] wl: module license 'unspecified' taints kernel.
[   19.940000] Disabling lock debugging due to kernel taint
[   20.044000] SSB/BCMA glue driver successfully attached
[   20.048000] PCI: Fixing up device 0000:00:01.0
[   20.060000] wl%d: 5.10.56.27 driver failed with code 11

After some analysis of driver initialization, I've found that error is caused by missing SROM. WRT150N doesn't contain PCI SROM and it should be read from NVRAM/FLASH. Driver in fact tries to read values from FLASH, but uses incorrect prefix. Values in flash are prefixed with pci/1/1/ and driver tries to read pci/0/1/.
Prefix used by driver is calculated in function: si_devpath, file: siutils.c, based on device PCI bus number and slot, which is initialized as:

root@OpenWrt:/sys/devices/pci0000:00/0000:00:01.0#

After I've changed code to add 1 to PCI bus in above function, driver is initialized correctly, but for sure this is not target solution.


Attachments (1)

912-pci-bus-nvram-hack.patch (377 bytes) - added by nlh 6 years ago.
Patch to force PCI Bus to 1 (broadcom-wl)

Download all attachments as: .zip

Change History (7)

comment:1 Changed 6 years ago by kwestarz@…

Please if possible change reported by email address to this used in current post.

comment:2 follow-up: Changed 6 years ago by hauke

  • Owner changed from developers to hauke
  • Status changed from new to accepted

I can not see your mail address, but I would be able to change it. ;-)
You will get mail notification as you commented in this issue.

The bus number has to be increased by one, as brcm47xx has one pci bus less than the Broadcom SDK.
Do you have a patch with the changes you made?

comment:3 in reply to: ↑ 2 Changed 6 years ago by nlh

Replying to hauke:

I can not see your mail address, but I would be able to change it. ;-)
You will get mail notification as you commented in this issue.

The bus number has to be increased by one, as brcm47xx has one pci bus less than the Broadcom SDK.
Do you have a patch with the changes you made?

I had encountered this as well, and just forced the bus number to "1". Incrementing it might be a better approach. I'll attach the patch I used. Note: This patch, along with the addition of the PCIe Host Mode support in the BCMA code allows the second wireless interface on a Linksys E3000 to be successfully initialized using broadcom-wl.

Changed 6 years ago by nlh

Patch to force PCI Bus to 1 (broadcom-wl)

comment:4 follow-up: Changed 6 years ago by hauke

  • Resolution set to fixed
  • Status changed from accepted to closed

Thanks for the patch.

This is fixed in r30422.

comment:5 in reply to: ↑ 4 Changed 6 years ago by kwestarz@…

Replying to hauke:

Thanks for the patch.

This is fixed in r30422.

Thanks for quick fix, you done it exactly as I did, I'm not sure it is 100% safe to do that unconditionally, but I trust in you :).

comment:6 Changed 4 years ago by jow

  • Milestone changed from Attitude Adjustment 12.09 to Barrier Breaker 14.07

Milestone Attitude Adjustment 12.09 deleted

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.