我在 Dell XPS 15 9550(16 GB RAM、FHD 屏幕、512 GB SSD、Intel i7-6700HQ)上运行 Ubuntu 16.04 LTS。它是与 Windows 一起双启动的,为此我按照此线程中的说明进行操作。
几乎一切都运作良好。但是,当我通过关闭盖子或systemctl suspend
有时(大约 50% 的时间)使用来暂停时,Ubuntu 不会暂停。屏幕变暗,好像要暂停一样,但随后又直接闪回登录屏幕。
我相信这个问题一定与我的 Broadcom wifi 卡/驱动程序有关。挂起失败期间 dmesg 的输出是:
[36482.669029] PM: Syncing filesystems ... done.
[36482.697429] PM: Preparing system for sleep (mem)
[36482.698220] vgaarb: this pci device is not a vga device
[36483.937858] Freezing user space processes ... (elapsed 0.002 seconds) done.
[36483.940227] Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
[36483.941564] PM: Suspending system (mem)
[36483.941623] Suspending console(s) (use no_console_suspend to debug)
[36487.637784] brcmf_pcie_suspend: Timeout on response for entering D3 substate
[36487.637802] pci_legacy_suspend(): brcmf_pcie_suspend+0x0/0x1b0 [brcmfmac] returns -5
[36487.637808] dpm_run_callback(): pci_pm_suspend+0x0/0x140 returns -5
[36487.637813] PM: Device 0000:02:00.0 failed to suspend async: error -5
[36487.637902] PM: Some devices failed to suspend, or early wake event detected
[36487.641932] rtc_cmos 00:02: System wakeup disabled by ACPI
[36488.017866] ata2: SATA link down (SStatus 4 SControl 300)
[36488.149475] PM: resume of devices complete after 511.560 msecs
[36488.158754] PM: Finishing wakeup.
也有留言
brcmfmac 0000:02:00.0: Direct firmware load for brcm/brcmfmac43602-pcie.txt failed with error -2
每当我从 [成功] 挂起启动或恢复时。另请注意:当挂起失败时,我的 wifi 停止工作(我相信它说“无设备”)。让它再次工作的唯一方法是重新启动,或者:
sudo rmmod brcmfmac
sudo modprobe brcmfmac
这是 wifi 信息脚本的输出。任何帮助都将非常感激!提前感谢您,如果有更多信息有帮助,请告诉我。
编辑:升级到 18.04 后问题又回来了。先前接受的答案似乎不再起作用,因为systemd
在挂起之前不会从建议的文件中卸载模块。
我有同样的问题。
/etc/pm/config.d/
解决方案是只用一行创建一个文件:SUSPEND_MODULES="brcmfmac"
使用to添加文件/etc/pm/config.d/
对我不起作用,这可能是 和 之间的问题systemd
,pm
但我可以通过创建一个简单的脚本来让 Broadcom wifi 卡暂停工作,systemd
以便在暂停之前和之后运行。/usr/lib/systemd/system-sleep/
使用以下内容在(或您的systemd
单元文件所在的任何位置)创建一个文件/lib/systemd/system-sleep/
:您可以命名它,例如
10-brcmfmac.sh
- 脚本名称无关紧要,只要它在此目录中并且设置了可执行位(例如sudo chmod +x /usr/lib/systemd/system-sleep/10-brcmfmac.sh
)。有关
systemd
挂起挂钩的更多信息:https ://wiki.archlinux.org/index.php/Power_management#Hooks_in_/usr/lib/systemd/system-sleep@user716336 建议的解决方案也适用于我。您应该为创建的文件提供正确的权限:
(我调用了文件
suspend_broardcom
)