Para desabilitar a Nvidia 9600M GT você deve adicionar o seguinte na entrada do menu grub outb 750x0
, ie:
menuentry 'Ubuntu, with Linux 3.0.0-12-generic' --class ubuntu --class gnu-linux --class gnu --class os {
outb 0x750 0
recordfail
set gfxpayload=$linux_gfx_mode
insmod gzio
insmod part_gpt
insmod ext2
set root='(hd0,gpt5)'
search --no-floppy --fs-uuid --set=root bc495raf-515r-4r2b-b3de-0ec679a7303a
linux /boot/vmlinuz-3.0.0-12-generic root=UUID=bc495raf-515r-4r2b- b3de-0ec679a7303a ro hpet=force
initrd /boot/initrd.img-3.0.0-12-generic
}
Além disso, para o desligamento após retomar após a suspensão:
Ao reiniciar, o controlador gráfico discreto será ativado e ativo. Precisamos desligá-lo e voltar para a GPU integrada.
Isso pode ser feito com um pequeno programa muito simples:
#include <stdio.h>
#include <sys/io.h>
#define PORT_SWITCH_DISPLAY 0x710
#define PORT_SWITCH_SELECT 0x728
#define PORT_SWITCH_DDC 0x740
#define PORT_DISCRETE_POWER 0x750
static int gmux_switch_to_igd()
{
outb(1, PORT_SWITCH_SELECT);
outb(2, PORT_SWITCH_DISPLAY);
outb(2, PORT_SWITCH_DDC);
return 0;
}
static void mbp_gpu_power(int state)
{
outb(state, PORT_DISCRETE_POWER);
}
int main(int argc, char **argv)
{
if (iopl(3) < 0) {
perror ("No IO permissions");
return 1;
}
mbp_gpu_power(0);
gmux_switch_to_igd();
return 0;
}
Salve isso em um arquivo chamado igd.c. Compile com gcc -O2 igd.c -o igd
. Isso criará um executável chamado igd
. Executado com privilégios de superusuário, ele desligará o controlador discreto e alternará para o controlador integrado.
Agora precisamos executar isso no currículo. Crie um arquivo chamado /etc/pm/sleep.d/10igd
Ele deve conter:
#!/bin/sh
#
/path/to/igd
Onde / path / to é o caminho para onde você colocou o executável igd
que criamos na etapa anterior.
chmod +x /etc/pm/sleep.d/10igd
Este arquivo será executado na suspensão e retomada. Feito corretamente, esse script 10igd iria verificar se isso é um suspender / continuar / congelar / descongelar e só executar quando necessário. Como está, é executado em todos eles. Não é grande coisa, não vai doer para executá-lo durante o congelamento ou suspensão.
Eu tenho tudo funcionando no meu mbp5,1: som, luz de fundo do LCD, retroiluminação do teclado, fãs rodando baixo (desde desabilitar 9600M GT), Apple como atalho (CMD + C para copiar), Flash (quase estável) .. Então, basta perguntar se você precisa de mais ajuda