Что делает параметр загрузки ядра "set acpi_osi=Linux"?
Я столкнулся с проблемой управления яркостью в моем ноутбуке с графической системой Intel HD и 64-битной Ubuntu 10.10. Поэтому, когда я искал исправление, я обнаружил, что распространенным предложением является редактирование строки файла GRUB, GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" в GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_osi=Linux acpi_backlight=vendor"
Документация для параметра загрузки acpi_osi говорит:
acpi_osi= [HW,ACPI] Modify list of supported OS interface strings acpi_osi="string1" # add string1 -- only one string acpi_osi="!string2" # remove built-in string2 acpi_osi= # disable all strings
Я не нахожу причину, по которой это должно решить любую проблему с ноутбуком.
Так может кто-нибудь сказать мне, что вариант загрузки ядра acpi_osi=Linux делать?
3 ответа
Я думаю ты имеешь ввиду
=WindowsнеLinux, Аргумент говорит ядру лгать BIOS ACPI и говорить ему, что это что-то отличное от Linux (вот почему указывать Linux глупо).
Я уверен, что он имеет в виду то, что он написал. Да, BIOS обычно отключает функциональность, если Windows не обнаружена, но указание Linux не является глупым, потому что по умолчанию ядро отвечает false, когда спрашивается, работает ли Linux. acpi_osi=Linux говорит ядру ответить true drivers/acpi/osl.c) Похоже, вам нужно сказать BIOS правду.
Это либо проблема с драйвером, либо неправильная реализация ACPI. Вы должны были бы вынуть свой dsdt и разберите его, чтобы просмотреть код и лучше понять, что сломано или отключено в Linux OSI.
Ссылка
Параметр добавляет "Linux" в список поддерживаемых операционных систем, которые ядро получит при запросе BIOS "Эй, что вы поддерживаете". Добавив эту строку, позже все, что использует ACPI, скажет: "Эй, у меня есть функция, которая требует ACPI, и я использую Linux - какие платформы поддерживаются?" и они вернут список, который будет включать в себя Linux.
Установив это на Linux, вы в основном отключаете любую проверку, чтобы увидеть, говорит ли BIOS, что определенные функции ACPI будут работать с определенными операционными системами. И это часто заставляет вещи работать, которые были ранее скрыты. Но это также может сломать вещи, которые раньше работали, в [надеюсь] редких случаях.:)
Я думаю ты имеешь ввиду =Windowsне Linux, Аргумент говорит ядру лгать BIOS ACPI и говорить ему, что это что-то отличное от Linux (вот почему указывать Linux глупо). Известно, что некоторые BIOS проверяют, работают ли они под Windows или определенной версией Windows, и отключают функциональность, если это не так. Этот параметр позволяет обойти этот идиотизм.