Cosa fa il parametro di avvio del kernel “set acpi_osi = Linux”?


48

Sto affrontando un problema con il controllo della luminosità nel mio laptop con grafica Intel HD e Ubuntu 10.10 a 64 bit. Quindi, quando ho cercato una correzione, ho scoperto che un suggerimento comune è quello di modificare la riga del file GRUB, GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"in GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_osi=Linux acpi_backlight=vendor"

La documentazione per il parametro di avvio acpi_osidice:

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

- http://redsymbol.net/linux_boot_parameters/

Non trovo un motivo per cui questo dovrebbe risolvere qualsiasi problema del laptop.

Qualcuno potrebbe dirmi cosa fa l'opzione di avvio del kernel acpi_osi=Linux?

Risposte:


29

Penso che tu intenda =Windows, no Linux. L'argomento dice al kernel di mentire al BIOS ACPI e di dire che è qualcosa di diverso da Linux (motivo per cui specificare Linux è sciocco).

Sono sicuro che intende quello che ha scritto. Sì, il BIOS solitamente disabilita la funzionalità se Windows non viene rilevato, ma specificare Linux non è sciocco perché di default il kernel risponde falso quando gli viene chiesto se Linux è in esecuzione. acpi_osi=Linuxdice al kernel di rispondere vero. (vedi drivers/acpi/osl.c) Sembra che tu debba dire la verità al BIOS.

È un problema del driver o un'implementazione ACPI errata. Dovresti estrarre il tuo dsdte disassemblarlo per rivedere il codice e ottenere una migliore comprensione di ciò che è rotto o disabilitato sotto l'OSI di Linux.

Riferimento


2
questo è stato molto utile per la mia installazione di Ubuntu 14.04 sul mio dell vostro 3750 con nvidia GeForce GT 525M e grafica Intel HD.
Jason,

14

Il parametro aggiunge "Linux" all'elenco dei sistemi operativi supportati che il kernel otterrà quando chiede al BIOS "Ehi, che cosa supporti". Aggiungendo quella stringa, in seguito, le cose che usano ACPI diranno "ehi, ho una funzione che ha bisogno di ACPI e sto usando Linux - quali piattaforme sono supportate?" e torneranno un elenco che includerà Linux.

Impostando questo su Linux, praticamente si disabilita qualsiasi controllo per vedere se il BIOS dice che alcune funzionalità ACPI funzioneranno con determinati sistemi operativi. E questo spesso fa funzionare le cose che erano precedentemente nascoste. Ma potrebbe anche rompere le cose che funzionavano, in casi [si spera] rari. :)


2

Penso che tu intenda =Windows, no Linux. L'argomento dice al kernel di mentire al BIOS ACPI e di dire che è qualcosa di diverso da Linux (motivo per cui specificare Linux è sciocco). Alcuni BIOS sono noti per verificare se sono in esecuzione su Windows o su una versione specifica di Windows e disabilitare la funzionalità in caso contrario. Questo parametro ti consente di aggirare quell'idiozia.



Ecco un altro link, che dice la stessa soluzione per i problemi dei fan ... ubuntuforums.org/showthread.php?t=1398596 Penso che questo sia considerato come una soluzione per diversi problemi di questo tipo. Forums.linuxmint.com/viewtopic. php? f = 42 & t = 56323
AIB
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.