ACPI _OSC control

Я заметил ошибку из вывода dmesg, что ubuntu не может включить ASPM:

[    0.192722]  pci0000:00: ACPI _OSC support notification failed, disabling PCIe ASPM
[    0.192728]  pci0000:00: Unable to request _OSC control (_OSC support mask: 0x08)

Хотя я знаю, что это не ошибка, я хотел бы спросить, есть ли способ исправить включите и включите ASPM, причина в том, что он должен увеличить время автономной работы (powertop показывает, что PCIe всегда включен на 100%).

Редактировать: я работаю на ASUS Eee PC 1015px с последней версией BIOS (1401)

2
задан 30 November 2012 в 00:31

1 ответ

Я вставляю это из своего блога (плюс некоторые изменения), так как это добавляет некоторый контекст к этому вопросу.

Активное управление питанием (ASPM) может управлять устройствами с последовательным подключением на основе PCI Express для увеличения времени автономной работы мобильных устройств, таких как ноутбуки и нетбуки. ASPM - это протокол управления питанием, который позволяет управлению питанием операционной системы переводить физический уровень канала в режим низкого энергопотребления, а также дает возможность другим устройствам на этом канале также переходить в режим пониженного энергопотребления.

Плюсом является то, что мы экономим электроэнергию с помощью ASPM, однако это приведет к некоторой задержке, поскольку шине требуется время для пробуждения в состоянии низкого энергопотребления. Спецификация PCIe (версия 2.0) определяет два режима питания:

  • L0s, которые устанавливают режим низкого энергопотребления в направлении на линии (обычно от нижестоящего контроллера уровня физической линии)

  • L1, который устанавливает режим пониженного энергопотребления в обоих направлениях на линии связи, однако существует большая задержка активации.

К сожалению, кажется, что ваша прошивка указывает ядру, что оно действительно не поддерживает ASPM на вашем оборудовании. Ядро запросило прошивку с помощью элемента управления ACPI _OSC, чтобы узнать, поддерживается ли ASPM, и сообщается, что оно не поддерживается, поэтому ASPM отключен. Причины такого отключения зависят от поставщика. Это может быть из-за того, что в Windows что-то просто зависает или ненадежно с включенным ASPM, поэтому прошивка полностью его отключает.

Linux также предоставляет некоторые параметры ядра драйвера ASPM для обеспечения некоторого уровня настраиваемости. Можно использовать следующие параметры ядра:

отключить ASPM:

pcie_aspm=off

использовать конфигурацию встроенного ПО по умолчанию:

pcie_aspm=default

отключает ASPM и управление тактовой мощностью:

pcie_aspm=performance

режим наибольшего энергосбережения, включить ASPM и управление тактовой мощностью:

pcie_aspm=powersave

включить ASPM:

pcie_aspm=force

Возможно, вы захотите повозиться с последней настройкой посмотрите, можете ли вы переопределить настройки ASPM по умолчанию.

0
ответ дан 30 November 2012 в 00:31

Другие вопросы по тегам:

Похожие вопросы: