Thật không may, chỉ cài đặt 5.14-rc5 (như HảoSama đã viết) là không đủ đối với tôi nhưng nó là cần thiết. Ngoài ra việc cập nhật DSDT là cần thiết.
Để làm điều đó chạy:
- Tạo một thư mục làm việc
mkdir -p /tmp/acpi; cd /tmp/acpi/
- Kết xuất tất cả các tệp ACPI của bạn vào thư mục được tạo gần đây
sudo acpidump -b
- Và dịch ngược DSDT:
iasl -e *.dat -d dsdt.dat
- Kích hoạt trạng thái S3.
4.1. Mở dsdt.dsl
với một trình soạn thảo văn bản tìm và thay thế
Tên (XS3, Gói (0x04)
{
0x03,
Số không,
Số không,
Số không
})
với
Tên (_S3, Gói (0x04)
{
0x03,
Số không,
Số không,
Số không
})
4.2. cũng tìm thấy dòng bắt đầu bằng định nghĩa khối
và tăng phiên bản OEM (trong trường hợp của tôi 0x01072009
):
DefinitionBlock ("", "DSDT", 2, "HPQOEM", "8707", 0x01072009)
bằng cách thay thế bằng
DefinitionBlock ("", "DSDT", 2, "HPQOEM", "8707", 0x01072010)
- Biên dịch DSDT cuối cùng
iasl -ve -tc dsdt.dsl
- Tạo một tệp cpio
mkdir -p hạt nhân/phần sụn/acpi
cp dsdt.aml hạt nhân/chương trình cơ sở/acpi
tìm hạt nhân | cpio -H newc --create > acpi_override
sudo cp acpi_override/khởi động
- Cập nhật GRUB:
Mở
/etc/default/grub
với trình soạn thảo văn bản và
thêm vào khóa GRUB_CMDLINE_LINUX_DEFAULT
mem_sleep_default=deep
giá trị.
Ví dụ, dòng của tôi là
GRUB_CMDLINE_LINUX_DEFAULT="sơ yếu lý lịch giật gân=UUID=ddd96d19-0c4e-4523-86ff-033cffb11d58 mem_sleep_default=deep"
Sau đó, thêm dòng GRUB_EARLY_INITRD_LINUX_CUSTOM="acpi_override"
phía dưới.
Cuối cùng chạy
cập nhật sudo-grub
Máy tính xách tay của tôi là HP 15s-eq1xxx, Ryzen 3 4300U.
Tôi đã điều chỉnh giải pháp cho máy tính xách tay của mình mô tả ở đây.
Bạn có thể kiểm tra xem Trạng thái hệ thống S3 có khả dụng hay không bằng cách
sudo dmesg | grep -i acpi | hỗ trợ grep