Olá José,

> Interessante, o diretório /proc/acpi/thermal_zone existe,
> mas não tem nenhum sub-diretório lá. A ferramenta de detec-
> ção (sensors-detect) não encontra nada. Até aí, tudo bem,
> mas é que eu duvido que não existam sensores: meu hardware
> é bem novo. Pode ser algum chipset não suportado. Alguma
> dica de como descobrir isso?

 Se o diretório está vazio, provavelmente é porque o ACPI não conseguiu
localizar a tabela DSDT do seu sistema. Essa tabela fornece informações
básicas sobre a configuração do seu sistema, e infelizmente existem muitos
fabricantes que não seguem exatamente os padrões definidos. Resultado: o
ACPI não funciona ou alguns recursos ficam faltando.

 Veja um exemplo: No meu Dell em casa, a tabela DSDT não foi localizada:
$ dmesg | grep -i acpi
[...]
[4294667.296000] ACPI: HPET id: 0x8086a201 base: 0xfed00000
[4294667.296000] Using ACPI (MADT) for SMP configuration information
[4294667.868000] ACPI: Looking for DSDT ... not found!
[...]

Por isso, eu não consigo, dentre outras coisas, ver a leitura dos
sensores, apesar deles existirem. Ouvi dizer que a Dell adota um sistema
proprietário para o seu sistema de refrigeramento/monitoramento.


 Já no meu notebook, a tabela é encontrada e eu consigo acessar as
informações do ACPI:
[4294679.703000] ACPI: CPU0 (power states: C1[C1] C2[C2] C3[C3])
[4294679.704000] ACPI: Thermal Zone [THRM] (38 C)
[...]
[4294723.489000] ACPI: AC Adapter [ACAD] (on-line)
[4294723.596000] ACPI: Battery Slot [BAT0] (battery present)
[4294723.614000] ACPI: Power Button (FF) [PWRF]
[...]

$ cat /proc/acpi/thermal_zone/THRM/temperature
temperature:             58 C

 Você pode verificar se o kernel consegue localizar a tabela DSDT do seu
sistema. Caso a tabela não seja encontrada, eu não sei como resolver o
problema. (talvez criando uma tabela nova DSDT para o sistema, mas ainda
não tive tempo para fuçar nisso). Agora, se a tabela for encontrada e não
estiver funcionando corretamente, pode ser que a tabela não esteja
seguindo exatamente os padrões.

 Nesse caso, você pode tentar fazer um dump da DSDT (cat /proc/acpi/dsdt >
dsdt.dat), dissassemblá-la e compilar novamente, usando o compilador intel
ASL (iasl). Daí conforme os erros que aparecerem, você vai corrigindo
(supondo que você manja de ASL e AML - as linguagens utilizadas), até
funcionar. Depois é só jogar a tabela corrigida pro kernel.

 Dá trabalho, hein :-)


 []s

 Richard



                
_______________________________________________________ 
Navegue com o Yahoo! Acesso Grátis, assista aos jogos do Brasil na Copa e ganhe 
prêmios de hora em hora! 
http://br.yahoo.com/artilheirodacopa/

-- 
ubuntu-br mailing list
[email protected]
www.ubuntu-br.org
https://lists.ubuntu.com/mailman/listinfo/ubuntu-br

Responder a