Module not in use

Of course I have tried it.

and dmesg output

  655.856167] usbcore: registered new interface driver brcmfmac
  655.958713] brcmfmac 0000:03:00.0: Direct firmware load for brcm/brcmfmac4366b-pcie.txt failed with error -2
  658.285542] brcmfmac: brcmf_pcie_download_fw_nvram: FW failed to initialize

So how do I install newer kernel with 4.4 as well? I used to do it long time ago but I have forgotten how, now I have to uninstall 4.4 to install newer kernel.

zypp.conf is set to keep last 3 kernels, why is it forcing me to remove 4.4?

So card works in 4.15 kernel but kernel is broken :frowning: cannot start GUI what so ever, cannot install NVidia or anything else.

If I copy brcmfmac.ko from /lib/module/4.15… to appropriate place int lib/modules/4.4… would that work?

Yet another stupid question, so newer brcmfmac is loaded into kernel, which is confirmed by:

modinfo brcmfmac:


**filename:       /lib/modules/4.4.114-42-default/kernel/drivers/net/wireless/brcm80211/brcmfmac/brcmfmac.ko**
license:        Dual BSD/GPL
description:    Broadcom 802.11 wireless LAN fullmac driver.
author:         Broadcom Corporation
firmware:       brcm/brcmfmac4354-sdio.txt
firmware:       brcm/brcmfmac4354-sdio.bin
firmware:       brcm/brcmfmac43455-sdio.txt
firmware:       brcm/brcmfmac43455-sdio.bin
firmware:       brcm/brcmfmac43430-sdio.txt
firmware:       brcm/brcmfmac43430-sdio.bin
firmware:       brcm/brcmfmac4339-sdio.txt
firmware:       brcm/brcmfmac4339-sdio.bin
firmware:       brcm/brcmfmac43362-sdio.txt
firmware:       brcm/brcmfmac43362-sdio.bin
firmware:       brcm/brcmfmac4335-sdio.txt
firmware:       brcm/brcmfmac4335-sdio.bin
firmware:       brcm/brcmfmac43340-sdio.txt
firmware:       brcm/brcmfmac43340-sdio.bin
firmware:       brcm/brcmfmac4334-sdio.txt
firmware:       brcm/brcmfmac4334-sdio.bin
firmware:       brcm/brcmfmac4330-sdio.txt
firmware:       brcm/brcmfmac4330-sdio.bin
firmware:       brcm/brcmfmac4329-sdio.txt
firmware:       brcm/brcmfmac4329-sdio.bin
firmware:       brcm/brcmfmac43241b5-sdio.txt
firmware:       brcm/brcmfmac43241b5-sdio.bin
firmware:       brcm/brcmfmac43241b4-sdio.txt
firmware:       brcm/brcmfmac43241b4-sdio.bin
firmware:       brcm/brcmfmac43241b0-sdio.txt
firmware:       brcm/brcmfmac43241b0-sdio.bin
firmware:       brcm/brcmfmac43143-sdio.txt
firmware:       brcm/brcmfmac43143-sdio.bin
firmware:       brcm/brcmfmac43569.bin
firmware:       brcm/brcmfmac43242a.bin
firmware:       brcm/brcmfmac43236b.bin
firmware:       brcm/brcmfmac43143.bin
firmware:       brcm/brcmfmac4371-pcie.txt
firmware:       brcm/brcmfmac4371-pcie.bin
firmware:       brcm/brcmfmac4366b-pcie.txt
firmware:       brcm/brcmfmac4366b-pcie.bin
firmware:       brcm/brcmfmac4365b-pcie.txt
firmware:       brcm/brcmfmac4365b-pcie.bin
firmware:       brcm/brcmfmac4358-pcie.txt
firmware:       brcm/brcmfmac4358-pcie.bin
firmware:       brcm/brcmfmac43570-pcie.txt
firmware:       brcm/brcmfmac43570-pcie.bin
firmware:       brcm/brcmfmac4356-pcie.txt
firmware:       brcm/brcmfmac4356-pcie.bin
firmware:       brcm/brcmfmac4350-pcie.txt
firmware:       brcm/brcmfmac4350-pcie.bin
firmware:       brcm/brcmfmac43602-pcie.txt
firmware:       brcm/brcmfmac43602-pcie.bin
srcversion:     D5BAFBE7BA3E72ADF9E41CB
alias:          usb:v0A5Cp0BDCd*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0A5CpBD27d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0A5CpBD1Fd*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0A5CpBD17d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0A5CpBD1Ed*dc*dsc*dp*ic*isc*ip*in*
alias:          pci:v000014E4d0000440Dsv*sd*bc02sc80i*
alias:          pci:v000014E4d000043C5sv*sd*bc02sc80i*
alias:          pci:v000014E4d000043C4sv*sd*bc02sc80i*
alias:          pci:v000014E4d000043C3sv*sd*bc02sc80i*
alias:          pci:v000014E4d000043CCsv*sd*bc02sc80i*
alias:          pci:v000014E4d000043CBsv*sd*bc02sc80i*
alias:          pci:v000014E4d000043CAsv*sd*bc02sc80i*
alias:          pci:v000014E4d0000AA52sv*sd*bc02sc80i*
alias:          pci:v000014E4d000043BCsv*sd*bc02sc80i*
alias:          pci:v000014E4d000043BBsv*sd*bc02sc80i*
alias:          pci:v000014E4d000043BAsv*sd*bc02sc80i*
alias:          pci:v000014E4d000043E9sv*sd*bc02sc80i*
alias:          pci:v000014E4d000043D9sv*sd*bc02sc80i*
alias:          pci:v000014E4d000043D3sv*sd*bc02sc80i*
alias:          pci:v000014E4d000043ECsv*sd*bc02sc80i*
alias:          pci:v000014E4d000043A3sv*sd*bc02sc80i*
alias:          sdio:c*v02D0d4354*
alias:          sdio:c*v02D0d4345*
alias:          sdio:c*v02D0dA9A6*
alias:          sdio:c*v02D0d4335*
alias:          sdio:c*v02D0dA962*
alias:          sdio:c*v02D0dA94D*
alias:          sdio:c*v02D0dA94C*
alias:          sdio:c*v02D0d4334*
alias:          sdio:c*v02D0d4330*
alias:          sdio:c*v02D0d4329*
alias:          sdio:c*v02D0d4324*
alias:          sdio:c*v02D0dA887*
depends:        mmc_core,brcmutil,cfg80211,usbcore
intree:         Y
vermagic:       4.4.114-42-default SMP mod_unload modversions 
signer:         openSUSE Secure Boot Signkey
sig_key:        03:32:FA:9C:BF:0D:88:BF:21:92:4B:0D:E8:2A:09:A5:4D:5D:EF:C8
sig_hashalgo:   sha256
parm:           txglomsz:maximum tx packet chain size [SDIO] (int)
parm:           feature_disable:Disable features (int)
parm:           alternative_fw_path:string
parm:           debug:level of debug output (int)
parm:           p2pon:enable legacy p2p management functionality (int)
parm:           fcmode:mode of firmware signalled flow control (int)
parm:           roamoff:do not use internal roaming engine (int)

So what I did is I copied **brcm80211/ **from lib/moduels/4.15…/kernel/drivers/ to appropriate place in /lib/moduels/4.4, but there is not 4366c-pcie.bin in this list.


firmware:       brcm/brcmfmac4354-sdio.txt
firmware:       brcm/brcmfmac4354-sdio.bin
firmware:       brcm/brcmfmac43455-sdio.txt
firmware:       brcm/brcmfmac43455-sdio.bin
firmware:       brcm/brcmfmac43430-sdio.txt
firmware:       brcm/brcmfmac43430-sdio.bin
firmware:       brcm/brcmfmac4339-sdio.txt
firmware:       brcm/brcmfmac4339-sdio.bin
firmware:       brcm/brcmfmac43362-sdio.txt
firmware:       brcm/brcmfmac43362-sdio.bin
firmware:       brcm/brcmfmac4335-sdio.txt
firmware:       brcm/brcmfmac4335-sdio.bin
firmware:       brcm/brcmfmac43340-sdio.txt
firmware:       brcm/brcmfmac43340-sdio.bin
firmware:       brcm/brcmfmac4334-sdio.txt
firmware:       brcm/brcmfmac4334-sdio.bin
firmware:       brcm/brcmfmac4330-sdio.txt
firmware:       brcm/brcmfmac4330-sdio.bin
firmware:       brcm/brcmfmac4329-sdio.txt
firmware:       brcm/brcmfmac4329-sdio.bin
firmware:       brcm/brcmfmac43241b5-sdio.txt
firmware:       brcm/brcmfmac43241b5-sdio.bin
firmware:       brcm/brcmfmac43241b4-sdio.txt
firmware:       brcm/brcmfmac43241b4-sdio.bin
firmware:       brcm/brcmfmac43241b0-sdio.txt
firmware:       brcm/brcmfmac43241b0-sdio.bin
firmware:       brcm/brcmfmac43143-sdio.txt
firmware:       brcm/brcmfmac43143-sdio.bin
firmware:       brcm/brcmfmac43569.bin
firmware:       brcm/brcmfmac43242a.bin
firmware:       brcm/brcmfmac43236b.bin
firmware:       brcm/brcmfmac43143.bin
firmware:       brcm/brcmfmac4371-pcie.txt
firmware:       brcm/brcmfmac4371-pcie.bin
firmware:       brcm/brcmfmac4366b-pcie.txt
firmware:       brcm/brcmfmac4366b-pcie.bin
firmware:       brcm/brcmfmac4365b-pcie.txt
firmware:       brcm/brcmfmac4365b-pcie.bin
firmware:       brcm/brcmfmac4358-pcie.txt
firmware:       brcm/brcmfmac4358-pcie.bin
firmware:       brcm/brcmfmac43570-pcie.txt
firmware:       brcm/brcmfmac43570-pcie.bin
firmware:       brcm/brcmfmac4356-pcie.txt
firmware:       brcm/brcmfmac4356-pcie.bin
firmware:       brcm/brcmfmac4350-pcie.txt
firmware:       brcm/brcmfmac4350-pcie.bin
firmware:       brcm/brcmfmac43602-pcie.txt
firmware:       brcm/brcmfmac43602-pcie.bin

Well, it was not necessarily clear from your posts yet.
We could have been “hunting a ghost”… :wink:

So how do I install newer kernel with 4.4 as well? I used to do it long time ago but I have forgotten how, now I have to uninstall 4.4 to install newer kernel.

You don’t have to uninstall 4.4, it is perfectly possible to install several versions at the same time, and it’s even done by default.

Hard to say without knowing the command you used and the output you get.

zypp.conf is set to keep 2 kernels by default though. (3 only if you are not running the latest one)

Did you remove the nvidia driver first?
It won’t work with the new kernel as mentioned, so you likely won’t get a GUI either.
You’d need to reinstall it while booted to the new kernel (in text mode e.g., if you cannot get a GUI), the nvidia-gfxG04-kmp-default package in particular. That should actually work I think (but be sure you have the kernel-devel and kernel-default-devel packages for 4.15 installed as well).

If I copy brcmfmac.ko from /lib/module/4.15… to appropriate place int lib/modules/4.4… would that work?

No.

That’s the 4.4 version, which doesn’t know anything about the 4366c firmware.

Basically, you have two options now: either stick to kernel 4.15 and try to get the nvidia driver working (or uninstall it and use nouveau), or stay with 4.4 and forget about that wireless card…

It might be possible to compile the newer brcmfmac module for kernel 4.4 or patch the one from 4.4, but both things are not really straight-forward to do.
Of course you can also upgrade to Tumbleweed or Leap 15.0 (which is currently in Beta), but there is no nvidia repo yet for the latter (and Tumbleweed as a rolling distribution might not be what you want either).

You could also file a bug report at bugzilla.opensuse.org (same username/password as here) against the 42.3 Kernel, maybe the kernel developers would backport support for your card.

@wolfi323
Thank you for your patience, I am sometimes running out of it, as I mentioned I had issues with NVidia driver (which a lot of people are having right now).

It might be possible to compile the newer brcmfmac module for kernel 4.4 or patch the one from 4.4, but both things are not really straight-forward to do.

Well this is my “life” machine, but I am am ready to try this as well!!! So is there a good tutorial on how to recompile module?

Yeah, there was a problem with the packages in the repo, should be fixed since yesterday though.

But again, you would need to recompile/reinstall the kernel module for kernel 4.15…

As I indicated: try to remove the nvidia packages, that kernel will hopefully boot then.
And if you install them again (while using kernel 4.15), the nvidia driver should work too.
But again, you need to also have kernel-devel and kernel-default-devel matching that kernel.

Well this is my “life” machine, but I am am ready to try this as well!!! So is there a good tutorial on how to recompile module?

I’m not aware of one.
You’d need to download/extract the source code yourself, and it might need other updates.

There were backports of the wireless drivers from newer kernels available on OBS for previous openSUSE versions (years ago) that you could install to get newer drivers, but that’s no longer the case I think.

Personally, I’d probably rather use kernel 4.15. But using the nvidia driver as well complicates that somehow.
Although, if you disable the kernel repo afterwards (i.e. not install further updates from there), it should not cause further problems (otherwise you’d need to reinstall the nvidia-gfxG04-kmp-default package after every kernel update).

On further thoughts, you can probably forget about that.
In the past it was possible because of the “Backports project”, who backported the latest drivers to older kernels.
https://backports.wiki.kernel.org/index.php/Main_Page

But that no longer seems to be “alive” (or is it?), so you’d need to backport it yourself (i.e. modifying it to make it compile and work with the older kernel).
Likely not an easy task, especially if you are no kernel developer…

kernel 4.15 is broken at the moment neither drm-kpm-default and/or nvidia are not installing propperly.

Sorry, but a statement like that is just useless.

How is it broken?

And you won’t need to install drm-kmp-default at all with the newer kernel, as it just contains some graphics drivers from kernel 4.9 (which are useless and shouldn’t be installed if you want to use nvidia anyway).

As I said, make sure that kernel-devel 4.15.x and kernel-default-devel is installed.

Then the nvidia package should install just fine.
If not, please post the error messages.

Otherwise it’s hard (or actually impossible) to help anyway.

If you installed “the hard way” make sure you have /etc/modprobe.d/nvidia.conf
with:

blacklist nouveau

and run

mkinitrd

Or press E at GRUB2 and add nomodeset between “quiet showopts”.

I think everything is sorted out now somebody included it into kernel 4.4. The only thing is they should include this file brcmfmac4366c-pcie.bin int /lib/firmware/brcm to completely support new broadcom cards.

https://nofile.io/f/7KUv0HCyz5t/brcmfmac4366c-pcie.bin

Now that module is in 4.4 how do I make it default on boot?

You mean it works now with the latest 4.4.114?
That’s great to hear! :slight_smile:

The only thing is they should include this file brcmfmac4366c-pcie.bin int /lib/firmware/brcm to completely support new broadcom cards.

This hasn’t been done upstream yet even, though.
Maybe there are license problems, no idea…

That’s easier to solve locally though, as you can just put that file into your system manually.

Make what default?
Kernel 4.4?

You can set the default boot entry in YaST->System->Boot Loader e.g.

But if 4.4 works now anyway, I’d rather recommend to uninstall kernel 4.15 again. (then the latest 4.4.x kernel should be booted by default)

Either click on “Versions” in YaST->Software Management to uninstall specific versions, or specify the full version to zypper/rpm, e.g.:

sudo zypper rm kernel-default-4.15.2

so kernel version 4.15 cannot be installed properly since default-devel and devel version are breaking some .so file. I decided to go back to my old card for now, somehow I did get the card to work on 4.4 but system was so broken that I had to reinstall it, so now it is not working again, so I do not know what is going on, and at this point I got to carry on.

Guys you can close this thread if you want to since I switched to Leap 15, there is a minor bug in Leap 15 as well 4366c-pcie.bin is not loaded by default to /lib/firmware/brcm/ so I did end up copying it from somewhere and it works perfectly.

Thank you everyone for your help.