Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index Assistance Kernel & Hardware
  • Search

[SOLVED] Broadcom BCM4313 not working

Kernel not recognizing your hardware? Problems with power management or PCMCIA? What hardware is compatible with Gentoo? See here. (Only for kernels supported by Gentoo.)
Post Reply
Advanced search
7 posts • Page 1 of 1
Author
Message
alpage2
n00b
n00b
Posts: 31
Joined: Sun Apr 25, 2004 11:58 am
Location: UK

[SOLVED] Broadcom BCM4313 not working

  • Quote

Post by alpage2 » Mon Jun 07, 2021 7:38 pm

I have recently installed gentoo on an old 32-bit netbook: Aspire One D-260A.

I seem to have succeeded - it is error free when I do deep world updates, and I have xorg and an xfce interface working, using the 'desktop' profile.

The sole exception is the broadcom wifi adapter - I just don't seem to have the kernel configured right, despite following the details in the gentoo wifi and kernel wikis. I couldn't find anything to help further on the gentoo forum.

The broadcom wifi adapter works fine when the system is booted with the minimum install disk, so I know it is working. As will be obvious from the outputs below, after booting, the wifi adapter is not detected.

I am not using an initramfs file - could that be the problem?

Can someone more experienced guide me to a working system? I expect it is something obvious, but I just can't see it.

Some hardware details:

Code: Select all

# lspci

00:00.0 Host bridge: Intel Corporation Atom Processor D4xx/D5xx/N4xx/N5xx DMI Bridge
00:02.0 VGA compatible controller: Intel Corporation Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller
00:02.1 Display controller: Intel Corporation Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller
00:1b.0 Audio device: Intel Corporation NM10/ICH7 Family High Definition Audio Controller (rev 02)
00:1c.0 PCI bridge: Intel Corporation NM10/ICH7 Family PCI Express Port 1 (rev 02)
00:1c.1 PCI bridge: Intel Corporation NM10/ICH7 Family PCI Express Port 2 (rev 02)
00:1d.0 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI Controller #1 (rev 02)
00:1d.1 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI Controller #2 (rev 02)
00:1d.2 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI Controller #3 (rev 02)
00:1d.3 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI Controller #4 (rev 02)
00:1d.7 USB controller: Intel Corporation NM10/ICH7 Family USB2 EHCI Controller (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2)
00:1f.0 ISA bridge: Intel Corporation NM10 Family LPC Controller (rev 02)
00:1f.2 SATA controller: Intel Corporation NM10/ICH7 Family SATA Controller [AHCI mode] (rev 02)
00:1f.3 SMBus: Intel Corporation NM10/ICH7 Family SMBus Controller (rev 02)
01:00.0 Ethernet controller: Qualcomm Atheros AR8132 Fast Ethernet (rev c0)
02:00.0 Network controller: Broadcom Inc. and subsidiaries BCM4313 802.11bgn Wireless Network Adapter (rev 01)
The tail end of dmesg was the first sign of the problem:

Code: Select all

[   11.924744] ACPI: Video Device [OVGA] (multi-head: yes  rom: no  post: no)
[   12.022130] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[   12.031615] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[   12.130459] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[   12.130468] cfg80211: failed to load regulatory.db
[   12.239211] acpi device:24: registered as cooling_device3
[   12.239479] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:00/input/input12
[   12.266504] fbcon: i915drmfb (fb0) is primary device
[   12.300712] Console: switching to colour frame buffer device 128x37
[   12.324416] i915 0000:00:02.0: [drm] fb0: i915drmfb frame buffer device
[   12.466534] b43-phy0: Broadcom 4313 WLAN found (core revision 24)
[   12.467431] b43-phy0 ERROR: FOUND UNSUPPORTED PHY (Analog 10, Type 8 (LCN), Revision 1)
[   12.467471] b43: probe of bcma0:1 failed with error -95
[   12.467611] Broadcom 43xx driver loaded [ Features: PNL ]
[   13.972180] EXT4-fs (sda4): re-mounted. Opts: (null)
[   14.379025] Adding 1048572k swap on /dev/sda3.  Priority:-2 extents:1 across:1048572k 
[   14.507604] EXT4-fs (sda2): mounting ext2 file system using the ext4 subsystem
[   14.526840] EXT4-fs (sda2): mounted filesystem without journal. Opts: (null)
[   14.526864] ext2 filesystem being mounted at /boot supports timestamps until 2038 (0x7fffffff)
[   18.499748] udevd (565) used greatest stack depth: 5288 bytes left
So it seems the firmware for regulatory.db failed. I had followed the advice to make the b43xx driver a module to avoid this problem - so I am uncertain where this went wrong.

I see the Broadcom 43xx driver loaded, after various errors associated with 43 were reported - but the significance of that is lost on me.

I did try to emerge the broadcom-sta package, for good measure, but emerge reported that it was masked by the ~x86 keyword, I presume for good reason.

My list of modules is pretty small - I was trying to compile everything but the wifi modules into the kernel.
The ralink drivers are included because I was trying to get a ralink usb wifi adapter working as an alternative - again without success.

Code: Select all

# lsmod
/lib/modules/5.10.27-gentoo/modules.builtin.modinfo
/lib/modules/5.10.27-gentoo/kernel/fs/ntfs/ntfs.ko
/lib/modules/5.10.27-gentoo/kernel/crypto/aes_ti.ko
/lib/modules/5.10.27-gentoo/kernel/net/wireless/cfg80211.ko
/lib/modules/5.10.27-gentoo/kernel/net/mac80211/mac80211.ko
/lib/modules/5.10.27-gentoo/kernel/lib/crypto/libarc4.ko
/lib/modules/5.10.27-gentoo/kernel/drivers/thermal/intel/x86_pkg_temp_thermal.ko
/lib/modules/5.10.27-gentoo/kernel/drivers/gpu/drm/gma500/gma500_gfx.ko
/lib/modules/5.10.27-gentoo/kernel/drivers/gpu/drm/ttm/ttm.ko
/lib/modules/5.10.27-gentoo/kernel/drivers/gpu/drm/i915/i915.ko
/lib/modules/5.10.27-gentoo/kernel/drivers/net/wireless/ralink/rt2x00/rt2x00usb.ko
/lib/modules/5.10.27-gentoo/kernel/drivers/net/wireless/ralink/rt2x00/rt2800usb.ko
/lib/modules/5.10.27-gentoo/kernel/drivers/net/wireless/ralink/rt2x00/rt2x00lib.ko
/lib/modules/5.10.27-gentoo/kernel/drivers/net/wireless/ralink/rt2x00/rt2800lib.ko
/lib/modules/5.10.27-gentoo/kernel/drivers/net/wireless/broadcom/b43/b43.ko
I also included the following in /etc/modules-load.d/network.conf

Code: Select all

mac80211.ko
cfg80211.ko
b43.ko
but not necessarily in that order - does order make any difference? (grasping at straws here)

For comparison, the following is the matching outputs after booting the system with the minimum install disk:

Tail of dmesg from minimum install disk:

Code: Select all

[   74.182830] brcmsmac bcma0:1: brcms_ops_bss_info_changed: qos enabled: false (implement)
[   74.182844] brcmsmac bcma0:1: brcms_ops_config: change power-save mode: false (implement)
[   74.594846] NET: Registered protocol family 10
[   74.597656] Segment Routing with IPv6
[  133.666505] wlp2s0b1: authenticate with a0:bd:cd:4a:12:f2
[  133.668350] wlp2s0b1: send auth to a0:bd:cd:4a:12:f2 (try 1/3)
[  133.669909] wlp2s0b1: authenticated
[  133.673191] wlp2s0b1: associate with a0:bd:cd:4a:12:f2 (try 1/3)
[  133.677221] wlp2s0b1: RX AssocResp from a0:bd:cd:4a:12:f2 (capab=0x1411 status=0 aid=1)
[  133.678468] brcmsmac bcma0:1: brcmsmac: brcms_ops_bss_info_changed: associated
[  133.678474] brcmsmac bcma0:1: brcms_ops_bss_info_changed: qos enabled: true (implement)
[  133.678492] wlp2s0b1: associated
[  133.684410] brcmsmac bcma0:1: wl0: brcms_c_d11hdrs_mac80211:  txop exceeded phylen 159/256 dur 1778/1504
[  133.689981] brcmsmac bcma0:1: wl0: brcms_c_d11hdrs_mac80211:  txop exceeded phylen 137/256 dur 1602/1504
[  133.884696] IPv6: ADDRCONF(NETDEV_CHANGE): wlp2s0b1: link becomes ready
[  139.753704] brcmsmac bcma0:1: brcms_ops_bss_info_changed: arp filtering: 1 addresses (implement)
[  173.551177] EXT4-fs (sda4): mounted filesystem with ordered data mode. Opts: (null)
[  207.282715] EXT4-fs (sda2): mounting ext2 file system using the ext4 subsystem
[  207.298830] EXT4-fs (sda2): mounted filesystem without journal. Opts: (null)
[  207.298853] ext2 filesystem being mounted at /mnt/gentoo/boot supports timestamps until 2038 (0x7fffffff)
[  239.724802] Adding 1048572k swap on /dev/sda3.  Priority:-2 extents:1 across:1048572k 
[ 2128.217287] brcmsmac bcma0:1: wl0: brcms_c_d11hdrs_mac80211:  txop exceeded phylen 153/256 dur 1730/1504
[ 5727.669668] brcmsmac bcma0:1: wl0: brcms_c_d11hdrs_mac80211:  txop exceeded phylen 153/256 dur 1730/1504
[ 9331.495216] brcmsmac bcma0:1: wl0: brcms_c_d11hdrs_mac80211:  txop exceeded phylen 153/256 dur 1730/1504
[ 9331.890063] brcmsmac bcma0:1: wl0: brcms_c_d11hdrs_mac80211:  txop exceeded phylen 153/256 dur 1730/1504
[ 9331.890450] brcmsmac bcma0:1: wl0: brcms_c_d11hdrs_mac80211:  txop exceeded phylen 153/256 dur 1730/1504
[12927.806089] brcmsmac bcma0:1: wl0: brcms_c_d11hdrs_mac80211:  txop exceeded phylen 153/256 dur 1730/1504
[16528.523952] brcmsmac bcma0:1: wl0: brcms_c_d11hdrs_mac80211:  txop exceeded phylen 153/256 dur 1730/1504
[20127.963376] brcmsmac bcma0:1: wl0: brcms_c_d11hdrs_mac80211:  txop exceeded phylen 153/256 dur 1730/1504
[23728.653276] brcmsmac bcma0:1: wl0: brcms_c_d11hdrs_mac80211:  txop exceeded phylen 153/256 dur 1730/1504
And the list of modules after booting with the minimum install disk:

Code: Select all

# lsmod
Module                  Size  Used by
ctr                    16384  3
ccm                    20480  9
ipv6                  270336  18
8021q                  24576  0
brcmsmac              421888  0
brcmutil               16384  1 brcmsmac
b43                   339968  0
cordic                 16384  2 brcmsmac,b43
mac80211              417792  2 brcmsmac,b43
sha256_generic         16384  0
libsha256              24576  1 sha256_generic
cfg80211              393216  3 brcmsmac,b43,mac80211
snd_hda_codec_realtek    77824  1
snd_hda_codec_generic    45056  1 snd_hda_codec_realtek
ledtrig_audio          16384  2 snd_hda_codec_generic,snd_hda_codec_realtek
snd_hda_intel          24576  0
ssb                    45056  1 b43
snd_intel_nhlt         16384  1 snd_hda_intel
snd_hda_codec          65536  3 snd_hda_intel,snd_hda_codec_generic,snd_hda_codec_realtek
acer_wmi               16384  0
mmc_core               90112  2 b43,ssb
snd_hda_core           45056  4 snd_hda_intel,snd_hda_codec,snd_hda_codec_generic,snd_hda_codec_realtek
sparse_keymap          16384  1 acer_wmi
pcmcia                 32768  1 ssb
pcmcia_core            20480  1 pcmcia
snd_pcm                61440  3 snd_hda_intel,snd_hda_codec,snd_hda_core
rfkill                 20480  3 acer_wmi,cfg80211
libarc4                16384  1 mac80211
snd_timer              24576  1 snd_pcm
i2c_i801               20480  0
wmi_bmof               16384  0
i2c_core               45056  1 i2c_i801
lpc_ich                24576  0
snd                    45056  5 snd_hda_intel,snd_hda_codec,snd_timer,snd_hda_codec_generic,snd_pcm
mfd_core               16384  1 lpc_ich
bcma                   36864  2 brcmsmac,b43
soundcore              16384  1 snd
wmi                    20480  2 wmi_bmof,acer_wmi
ac                     16384  0
video                  36864  1 acer_wmi
backlight              16384  2 video,acer_wmi
button                 16384  0
battery                20480  0
thermal                16384  0
fan                    16384  0
acpi_cpufreq           16384  1
usb_storage            40960  1
ahci                   32768  3
libahci                24576  1 ahci
libata                155648  2 ahci,libahci
uhci_hcd               24576  0
atl1c                  32768  0
ehci_pci               16384  0
ehci_hcd               40960  1 ehci_pci
Is there an other output or information that would be helpful?

Many thanks in anticipation.
Alan
Last edited by alpage2 on Fri Jun 25, 2021 4:45 pm, edited 1 time in total.
Top
fedeliallalinea
Administrator
Administrator
User avatar
Posts: 31985
Joined: Sat Mar 08, 2003 11:15 pm
Location: here
Contact:
Contact fedeliallalinea
Website

  • Quote

Post by fedeliallalinea » Mon Jun 07, 2021 7:53 pm

I think that for BCM4313 you need to install net-wireless/broadcom-sta
Questions are guaranteed in life; Answers aren't.

"Those who would give up essential liberty to purchase a little temporary safety,
deserve neither liberty nor safety."
- Ben Franklin
https://www.news.admin.ch/it/nsb?id=103968
Top
alamahant
Advocate
Advocate
Posts: 4032
Joined: Sat Mar 23, 2019 12:12 pm

  • Quote

Post by alamahant » Mon Jun 07, 2021 8:05 pm

You need firmware also.
Maybe.

Code: Select all

emerge -av linux-firmware
Do you have these in your .config

Code: Select all

CONFIG_NET_VENDOR_BROADCOM=y
CONFIG_BROADCOM_PHY=m
CONFIG_WLAN_VENDOR_BROADCOM=y

CONFIG_B43=m
CONFIG_B43_BCMA=y
CONFIG_B43_SSB=y
CONFIG_B43_BUSES_BCMA_AND_SSB=y
# CONFIG_B43_BUSES_BCMA is not set
# CONFIG_B43_BUSES_SSB is not set
CONFIG_B43_PCI_AUTOSELECT=y
CONFIG_B43_PCICORE_AUTOSELECT=y
CONFIG_B43_SDIO=y
CONFIG_B43_BCMA_PIO=y
CONFIG_B43_PIO=y
CONFIG_B43_PHY_G=y
CONFIG_B43_PHY_N=y
CONFIG_B43_PHY_LP=y
CONFIG_B43_PHY_HT=y
CONFIG_B43_LEDS=y
CONFIG_B43_HWRNG=y
# CONFIG_B43_DEBUG is not set
CONFIG_B43LEGACY=m
CONFIG_B43LEGACY_PCI_AUTOSELECT=y
CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y
CONFIG_B43LEGACY_LEDS=y
CONFIG_B43LEGACY_HWRNG=y
CONFIG_B43LEGACY_DEBUG=y
CONFIG_B43LEGACY_DMA=y
CONFIG_B43LEGACY_PIO=y
CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
# CONFIG_B43LEGACY_DMA_MODE is not set
# CONFIG_B43LEGACY_PIO_MODE is not set
CONFIG_SSB_B43_PCI_BRIDGE=y


:)
Top
mustafasalih1993
n00b
n00b
User avatar
Posts: 38
Joined: Tue Feb 09, 2021 1:39 am

  • Quote

Post by mustafasalih1993 » Mon Jun 07, 2021 8:15 pm

some useful tips for you:

- enable "Broadcom 43xx wireless support" as a module in your kernel
- install net-wireless/broadcom-sta
- blacklist b43/bcma, add the following in your /etc/modprobe.d/blacklist.conf

Code: Select all

blacklist b43
blacklist bcma
Top
Ralphred
l33t
l33t
Posts: 822
Joined: Tue Dec 31, 2013 11:52 am

  • Quote

Post by Ralphred » Mon Jun 07, 2021 11:51 pm

Direct firmware load for regulatory.db failed with error -2
From memory -2 is ENOENT or "no such directory entry"; do you have net-wireless/wireless-regdb installed, it should be pulled in by wpa-supplicant, that's what supplies the two /lib/firmware/regulatory.db* files?

You'll need sys-firmware/b43-firmware installed (along with sys-kernel/linux-firmware for brcm/bcm43xx*.fw I think). The list of firmware referenced in /usr/src/linux-5.10.27-gentoo/drivers/net/wireless/broadcom/b43/main.c is massive, so it's not as easy to dissect as graphics drivers to give you a list of needed fw from a device ID.

Seeing as it works on the livecd you can check what is blacklisted, though I suspect nothing. Searching through the livecd's dmesg should let you see a full list of firmware files loaded too.

Once you know what firmware files are needed, you can add them as

Code: Select all

CONFIG_EXTRA_FIRMWARE="regulatory.db regulatory.db.p7s some/broadcom/ucode-1.fw ... some/broadcom/ucode-n.fw"
in your .config and set your modules back to yes if you like.
I always struggle to remember where the "extra_firmware" in menuconfig is, so it's here

Code: Select all

 Prompt: Build named firmware blobs into the kernel binary                                                                       │  
  │   Location:                                                                                                                  │  
  │     -> Device Drivers                                                                                                        │  
  │       -> Generic Driver Options                                                                                              │  
  │         -> Firmware loader                                                                                                   │  
  │ (1)       -> Firmware loading facility 
Top
alpage2
n00b
n00b
Posts: 31
Joined: Sun Apr 25, 2004 11:58 am
Location: UK

  • Quote

Post by alpage2 » Tue Jun 08, 2021 6:45 pm

Many thanks to everyone for the detailed feedback. Due to limited access to this machine, and limited time, it may take some time to work through all the checks and changes, but I will post back here on progress, as time goes by.

So far, net-wireless/broadcom-sta has been unmasked and emerged, and b43 and bcma drivers blacklisted. I'll amend my .config file next, and recompile the kernel.

Thanks again.
Top
alpage2
n00b
n00b
Posts: 31
Joined: Sun Apr 25, 2004 11:58 am
Location: UK

  • Quote

Post by alpage2 » Fri Jun 25, 2021 4:55 pm

Making use of all the hints above, I modified the kernel configuration and recompiled the kernel, and the broadcom adapter is now working fine. In the end I did not need to do any blacklisting, or the listing of individual firmware files. With the right kernel modules, and the simplest example of handling WPA-PSK in wpa_supplicant.conf from the Gentoo Handbook, I was online by the end of booting up.

Thanks again for all the help. :D
Top
Post Reply

7 posts • Page 1 of 1

Return to “Kernel & Hardware”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic