Вопрос или проблема
У меня есть Matebook X Pro 2024 года, работающий на Ubuntu 24.10.
Он не переходит в режим suspend-to-RAM, согласно журналам он входит только в s2idle, который разряжает больше батареи. Гибернация работает, но он не выходит из нее, я получаю черный экран, подсветка клавиатуры и тачпада включена, и мне приходится принудительно выключать и снова загружать устройство.
Кто-нибудь сталкивался с подобными проблемами, есть ли у кого-нибудь советы, что попробовать?
Я проверил dmesg и увидел множество ошибок ACPI, кто-нибудь знает, что они означают?
[ 0.227988] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20240322/psobject-220)
[ 0.227993] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20240322/psobject-220)
[ 0.228115] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20240322/psobject-220)
[ 0.228119] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20240322/psobject-220)
[ 0.228122] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20240322/psobject-220)
[ 0.228125] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20240322/psobject-220)
[ 0.228128] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20240322/psobject-220)
[ 0.228131] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20240322/psobject-220)
[ 0.228134] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20240322/psobject-220)
[ 0.228138] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20240322/psobject-220)
[ 0.228141] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20240322/psobject-220)
[ 0.228145] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20240322/psobject-220)
[ 0.236906] ACPI Error: No handler for Region [ECW1] ((____ptrval____)) [EmbeddedControl] (20240322/evregion-131)
[ 0.236912] ACPI Error: Region EmbeddedControl (ID=3) has no handler (20240322/exfldio-261)
[ 0.236933] ACPI Error: Aborting method \_SB.PC00.LPCB.HWEC.ECRD due to previous error (AE_NOT_EXIST) (20240322/psparse-529)
[ 0.236938] ACPI Error: Aborting method \_SB.PC00.LPCB.HWEC.BAT0._STA due to previous error (AE_NOT_EXIST) (20240322/psparse-529)
[ 0.236942] ACPI Error: Method execution failed \_SB.PC00.LPCB.HWEC.BAT0._STA due to previous error (AE_NOT_EXIST) (20240322/uteval-68)
[ 2.215870] ACPI Error: Aborting method \_SB.IETM.CHRG.PPSS due to previous error (AE_NOT_FOUND) (20240322/psparse-529)
Ответ или решение
Ваш ноутбук Matebook X Pro 2024 года, работающий под управлением Ubuntu 24.10, сталкивается с проблемами перехода в режим suspend-to-RAM (S3), а также имеет сложности с пробуждением из гибернации. Вместо этого он переходит в s2idle (опция, использующая меньше энергии, чем активное состояние, но больше, чем S3), что приводит к быстрому разряду батареи. Поскольку вы также упомянули о появлении ошибок ACPI в логах, это может быть основной причиной ваших проблем.
Теория
Архитектура ACPI (Advanced Configuration and Power Interface) играет ключевую роль в управлении питанием и спящими режимами в современных компьютерах. Она обеспечивает программную и аппаратную поддержку для управления энергопотреблением, включая переходы в разные спящие режимы. Ошибки ACPI могут указывать на несовместимость между вашей версией ОС и прошивкой BIOS/UEFI, или же на ошибки в реализации ACPI таблиц, предоставляемых производителем.
В вашей ситуации, ошибки вида "AE_ALREADY_EXISTS" предполагают, что имеются дубликаты в ACPI таблицах, а ошибки "No handler for Region [ECW1]" и "Aborting method" могут указывать на отсутствие необходимых драйверов или неправильно настроенные зоны памяти.
Примеры
Подобные проблемы не редкость в мире Linux, особенно для новых устройств, где поддержка нового оборудования может быть ещё неустоявшейся. Например, многие пользователи сообщали о проблемах с ACPI после обновления ОС или в случае использования новых моделей ноутбуков, что вызывает тривиальные ошибки или не корректную поддержку некоторых функций ACPI.
Применение
Чтоб решить вашу проблему, предлагаю несколько подходов:
-
Обновление BIOS/UEFI:
- Проверьте веб-сайт производителя на наличие обновлений BIOS/UEFI. Обновления часто содержат исправления для ACPI и других системных проблем.
-
Обновление ОС и ядра Linux:
- Убедитесь, что у вас установлены все последние обновления для Ubuntu 24.10. Особое внимание уделите обновлению ядра, так как более новые версии могут содержать улучшенную поддержку ACPI для вашего оборудования.
-
Настройки ядра:
- Проверьте и, при необходимости, настройте параметры ядра. Попробуйте добавить такие параметры ядра, как
acpi=force
илиacpi_osi=
чтобы решить проблемы с совместимостью.
- Проверьте и, при необходимости, настройте параметры ядра. Попробуйте добавить такие параметры ядра, как
-
Переустановка ACPI-Related пакетов:
- Попробуйте переустановить или обновить пакеты, связанные с ACPI:
sudo apt-get install --reinstall acpi acpi-support acpid
- Попробуйте переустановить или обновить пакеты, связанные с ACPI:
-
Проверка настроек для s2idle и Suspend-to-RAM:
- Проверьте, поддерживает ли ваше оборудование S3:
cat /sys/power/mem_sleep
Убедитесь, что в выводе содержится
s2idle [deep]
. Еслиdeep
отсутствует, ваш ноутбук не поддерживает S3 на программном уровне.
- Проверьте, поддерживает ли ваше оборудование S3:
-
Обратная связь и поддержка сообщества:
- Рассмотрите возможность публиковать более детализированные логи на специализированных форумах, таких как Ubuntu Forums или AskUbuntu. Опытные пользователи и разработчики могут предложить более специфические решения.
-
Разработка собственного решения:
- Если обладаете достаточными навыками программирования и желаниями, можете попробовать исследовать UX системы и понимать, что конкретно вызывает ошибки в вашем случае. Это может потребовать дезассемблирования DSDT (первая таблица для ACPI) и модификации её содержимого.
Помните, что управление энергией, особенно в новых устройствах, может требовать времени для полноценной поддержки различными дистрибутивами Linux. Активное взаимодействие с производителем и сообществом Linux поможет ускорить процесс исправления таких проблем.