Macbook Pro - Broadcom WLAN adapter BCM43602 causing freezing under Qubes OS 4.0 rc5

215 views
Skip to first unread message

Greg

unread,
Mar 15, 2018, 10:19:41 PM3/15/18
to qubes-users
Hi,

Please assist if possible - I'm trying to get the Broadcom WLAN adapter BCM43602 working on my Macbook Pro under Qubes OS 4.0 rc5.

"03:00.0 Network controller: Broadcom Limited BCM43602 802.11ac Wireless LAN SoC (rev 01)"

I've managed to install Qubes OS successfully (during the second part of setup, just before sys-net creation I switched to a console and started a short bash script that just loops over and over trying to remove the BCM43602 from sys-net, then I went back and completed the setup. The script successfully removed the BCM43602 from sys-net before sys-net was started by the setup wizard, meaning that I managed to avoid the system freeze that would have otherwise occurred during setup).

Now I'm trying to actually get the BCM43602 working, i.e. attach the adapter to a qube (e.g. sys-net, standalone hvm or anything at all without freezing). However it seems that the system freezes the moment I start the qube it is attached to and it doesn't matter which kernel the associated qube is actually running (e.g. it freezes even when I attach it to a qube that is a fresh Ubuntu 17.10 install with hvm and no kernel seleced). I've tried different combinations of permissive mode and no-strict-reset and pv/hvm but every combination results in freezing.

I'm not sure how to proceed? Does anyone have the BCM43602 working under 4.0 rc5?

Any pointers would be appreciated.

Thanks,
Greg

awokd

unread,
Mar 16, 2018, 5:32:43 AM3/16/18
to Greg, qubes-users
On Fri, March 16, 2018 2:19 am, Greg wrote:
> Hi,
>
>
> Please assist if possible - I'm trying to get the Broadcom WLAN adapter
> BCM43602 working on my Macbook Pro under Qubes OS 4.0 rc5.
>
>
> "03:00.0 Network controller: Broadcom Limited BCM43602 802.11ac Wireless
> LAN SoC (rev 01)"

> I've tried different combinations of permissive mode and
> no-strict-reset and pv/hvm but every combination results in freezing.

I experienced hard freezes on an AMD system until I got the BIOS updated.
This is a completely different system, but it's worth checking if there
are any BIOS updates available for yours.


c...

unread,
Mar 16, 2018, 8:11:06 AM3/16/18
to qubes-users
пятница, 16 марта 2018 г., 5:19:41 UTC+3 пользователь Greg написал:
Try to start sys-net without attached devices, after that attach adapter directly:
sudo xl pci-attach sys-net '03:00.0,permissive=1'
That helped for me.
qvm-pci for some reason freezes my macbook

cheers

Greg

unread,
Mar 18, 2018, 12:20:00 AM3/18/18
to qubes-users
Using "sudo xl pci-attach sys-net '03:00.0,permissive=1'" to attach the adapter to sys-net (after starting it first) works great. At least I can now attach the adapter to a qube without freezing my system.

Thanks so much for the suggestion.

q1202...@gmail.com

unread,
Mar 21, 2018, 1:46:43 AM3/21/18
to qubes-users
在 2018年3月16日星期五 UTC+8上午10:19:41,Greg写道:
Hi, can you share the script and where to run it?(i.e. which tty should I run it in?) I'm struggling with the system freeze during setting up the network

Greg

unread,
Mar 21, 2018, 4:01:12 AM3/21/18
to qubes-users
> Hi, can you share the script and where to run it?(i.e. which tty should I run it in?) I'm struggling with the system freeze during setting up the network

I did the following to get past the system freeze during setup on my Macbook:
1) Run Qubes installation, it will reboot and show the "Initial Setup" screen.
2) Press fn+ctrl+alt+f3 to switch to a tty (you might have to press it multiple times for some reason).
3) Logon to the tty using the user your created during part 1 of the setup.
4) If you don't know the pci address of your problematic device, type "qvm-pci l" to find it (mine is dom0:03_00.0).
5) Start a bash loop that will try to remove the problematic pci device from sys-net the moment it is created. Basically just type something like the following at the bash prompt (though replace dom0:03_00.0 with the pci address you want to remove) and hit enter:

"while ! qvm-pci d sys-net dom0:03_00.0; do sleep 0.1; done"

It will spit out lots of errors saying "no such domain 'sys-net'". That is expected, you want to leave it running while you complete the setup. Basically when sys-net is created by setup the bash loop should remove the pci device from sys-net before it is started. (You need the sleep period to be small enough so that the device will be removed between the time setup creates sys-net and the time it starts sys-net.)

6) With the bash loop running, switch back to Qubes setup using fn+ctrl+alt+f2 and complete setup as usual. If you specify the correct pci address to remove then hopefully the bash loop with remove it in the background and setup will complete without freezing.

There are probably other ways to do this, but the above worked for me.

q1202...@gmail.com

unread,
Mar 21, 2018, 5:00:50 AM3/21/18
to qubes-users
在 2018年3月21日星期三 UTC+8下午4:01:12,Greg写道:
Will have a try, thanks very much :P
Message has been deleted

q1202...@gmail.com

unread,
Mar 23, 2018, 12:50:38 AM3/23/18
to qubes-users
在 2018年3月16日星期五 UTC+8上午10:19:41,Greg写道:
Hi, hopes I'm not bothering you and thanks for your tips I finally got Qubes running on my MBP. However, I can't get the wifi card working using methods you discussed above, after running "sudo xl pci-attach sys-net '02:00.0,permissive=1'" (02:00.0 is the network controller pci address), sys-net still don't have the network controller attached and using "qvm-pci attach" still cause the system to freeze, how do you finish the attach phase?

Greg

unread,
Mar 24, 2018, 7:54:49 PM3/24/18
to qubes-users
> Hi, hopes I'm not bothering you and thanks for your tips I finally got Qubes running on my MBP. However, I can't get the wifi card working using methods you discussed above, after running "sudo xl pci-attach sys-net '02:00.0,permissive=1'" (02:00.0 is the network controller pci address), sys-net still don't have the network controller attached and using "qvm-pci attach" still cause the system to freeze, how do you finish the attach phase?

I now do the following to attach the BCM43602 to sys-net:
I disabled "Start qube automatically on boot" for sys-net and sys-firewall in the qubes manager. I now manually start sys-net using "qvm-start sys-net" and immediately after executing that command (well about 2 seconds later) I execute "sudo xl pci-attach sys-net '03:00.0,permissive=1'" to attach the device to sys-net while it is still starting up. It seems that I have to attach the device to sys-net before it has fully booted, because if I attach it too late it doesn't seem to be detected by the VM.

Note that my particular BCM43602 has a PCI ID of 14e4:43ba which is supported by the brcmfmac driver. Your particular device might need another driver (I can't help with that I'm afraid).

q1202...@gmail.com

unread,
Mar 25, 2018, 12:23:15 PM3/25/18
to qubes-users
在 2018年3月25日星期日 UTC+8上午7:54:49,Greg写道:
That was...tricky, I'll have a try, hope to be successful.
Reply all
Reply to author
Forward
0 new messages