AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-1128288

Elessar's questions

Martin Hope
Elessar
Asked: 2020-09-20 03:18:09 +0800 CST

使用 rEFInd 覆盖 DSDT(在 ACPI 中启用 S3)

  • 0

我有一个新的 Dell Inspiron 5505(AMD Ryzen 4500),果然,S3 睡眠状态被禁用,没有 BIOS 选项来启用它(即使在 BIOS 更新之后)。

经过几周的挫折,我学会了如何(成功地)编辑 DSDT 并通过 GRUB 覆盖它。现在我的笔记本电脑像小猫一样睡觉了!

但是,我不知道如何用 rEFInd 覆盖 DSDT。有人知道怎么做吗?

我的 GRUB 配置(有效):

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash mem_sleep_default=deep"
GRUB_EARLY_INITRD_LINUX_CUSTOM="microcode.cpio acpi_override"

此外,在 grub.cfg (作品)中:

linux   /boot/vmlinuz-5.4.0-47-generic root=UUID=febd7fdb-b56d-482d-bcdf-5b6d472fa950 ro  quiet splash mem_sleep_default=deep 
initrd  /boot/acpi_override /boot/initrd.img-5.4.0-47-generic

我的(尝试的)rEFInd 配置(不起作用):

menuentry Ubuntu {
    icon    /EFI/refind/themes/tux-refind-theme/icons/os_ubuntu.png
    volume  "Ubuntu Linux"
    loader  /boot/vmlinuz-5.4.0-47-generic
    initrd  /boot/acpi_override /boot/initrd.img-5.4.0-47-generic
    options "ro root=UUID=febd7fdb-b56d-482d-bcdf-5b6d472fa950 quiet splash mem_sleep_default=deep $vt_handoff"
}
  • 如果我通过 GRUB 加载,覆盖工作,我可以让计算机进入 S3 睡眠。
  • 如果我通过 rEFInd 的自动检测条目正常加载,Linux 会启动,但它不知道覆盖 DSDT,并且我的笔记本电脑不会休眠。
  • 如果我尝试通过手动 rEFInd 条目加载,我会收到以下错误:
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
CPU: 1 PID: 1 Comm: swapper/0 Not tainted 5.4.0-47-generic #51-Ubuntu
Hardware name: Dell Inc. Inspiron 5505/0MJ6CM, BIOS 1.2.1 07/15/2020
Call Trace:
 dump_stack+0x6d/0x9a
 panic+0x101/0x2e3
 mount_block_root+0x23f/0x2e8
 mount_root+0x38/0x3a
 prepare_namespace+0x13f/0x194
 kernel_init_freeable+0x231/0x255
 ? rest_init+0xb0/0xb0
 kernel_init+0xe/0x100
 ret_from_fork+0x22/0x40
Kernel Offset: 0x1b800000 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffffbfffffff)
---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) ]---
  • 我尝试将覆盖和 initrd.img 行分开。Linux 确实可以正常启动,但完全忽略了 ACPI (DSDT) 覆盖:
menuentry Ubuntu {
    icon    /EFI/refind/themes/tux-refind-theme/icons/os_ubuntu.png
    volume  "Ubuntu Linux"
    loader  /boot/vmlinuz-5.4.0-47-generic
    initrd  /boot/acpi_override
    initrd  /boot/initrd.img-5.4.0-47-generic
    options "root=UUID=febd7fdb-b56d-482d-bcdf-5b6d472fa950 ro quiet splash mem_sleep_default=deep $vt_handoff"
}
  • 知道我做错了什么,或者可能没有做错吗?
  • 有人通过使用 rEFInd 成功地覆盖了 DSDT 吗?

边注:

出于好奇,我删除了 DSDT 文件中围绕 S3 状态的“If”语句,从而解决了睡眠问题。

由此:

If (LEqual (CNSB, Zero))
{
    If (LEqual (DAS3, One))
    {
        Name (_S3, Package (0x04)  // _S3_: S3 System State
        {
            0x03, 
            0x03, 
            Zero, 
            Zero
        })
    }
}

对此:

Name (_S3, Package (0x04)  // _S3_: S3 System State
{
    0x03, 
    0x03, 
    Zero, 
    Zero
})
boot acpi refind
  • 1 个回答
  • 1138 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve