sto*_*ack 16 nvidia overheating macbook uefi drivers
从 2010 年年中开始,我在白色 MacBook 上安装了双启动 Mac OS X 10.8 和 Kubuntu 12.10 64x。(型号标识符: MacBook7,1 。如果重要的话,我已将 RAM 从 2GB 升级到 8GB。)我的 Kubuntu 上安装了专有的 NVIDIA 驱动程序。
从 Kubuntu 中的温度监视器小部件来看,我的温度似乎在 10 左右?与 Mac OS X 下相比更热。在 Mac OS XI 中使用温度监视器。我将 Kubuntu 中的 CPU Core 0 和 CPU Core 1 值与 Mac OS X 中的 CPU Core 1 和 CPU Core 2 值进行比较。
10?more 可能不是一个非常大的过热灾难,但是当我在我的电脑上做一些非常激烈的事情时(比如玩一会儿军团要塞 2),我的 CPU 是 ~70?在 OSX 上,在 Kubuntu 上玩一会儿时,我的 CPU 是 ~80?。我担心较高的温度可能会缩短笔记本电脑的使用寿命。
我做了一些研究,发现可能是我在 BIOS 模式下安装它,导致发热。我无法在 EFI 模式下安装它,因为那时专有的 NVidia 驱动程序不起作用(已经尝试过,它给出了黑屏)。有谁知道如何让专有的 NVidia 驱动程序在 EFI 模式下工作?
编辑:好的,即使没有办法在 EFI 模式下使用专有的 nvidia 驱动程序(似乎没有办法做到这一点,我没有得到任何答案),如果加热可以在 BIOS 模式下修复。我怎样才能至少在 BIOS 模式下修复加热问题?我尝试将它放在我的 xorg.conf 中的 Device 部分以启用省电:
Option "DPMS" "1"
Option "RegistryDwords" "EnableBrightnessControl=1; PowerMizerEnable=0x1; PerfLevelSrc=0x2233; PowerMizerDefault=0x3"
Run Code Online (Sandbox Code Playgroud)
……但这没有用。
哦,顺便说一下,我没有使用 rEFIt,可能是这样吗?
And*_*eas 25
对我来说,在加载了 Nvidia 驱动程序的 UEFI 模式下启动 Ubuntu,也总是在启动 X 时导致众所周知的黑屏。
在另一个线程中遇到一些关于在 Mac 上以 UEFI 模式安装 Windows 7 的非常有希望的信息之后。那边的人一直在努力解决 Windows 7 所需的 int 10h 传统支持,并发现为了解决这个问题,可以执行无人值守安装(因为在安装过程中显示不起作用)。即使使用 Nvidia 驱动程序也能在 UEFI 模式下成功启动 Ubuntu的关键信息是,在 EFI 启动时(移交给 grub),Apple 的固件实际上并未将 VGA 卡激活为 PCI-E 总线主控。Windows 的人解释了如何使用 EFI shell 来绕过这个问题,该 shell 链接加载 Windows 启动管理器,以便至少在无人值守模式下运行安装程序。好消息是:在 GRUB 中很容易做到这一点!
事实上,我现在正在运行以 UEFI 模式 ( Xorg.0.log )启动的 Ubuntu Vivid 的 MacBook Pro 7,1(2010 年中)上键入此内容。但是,它应该很容易在任何提供 EFI 版 GRUB 的 Linux 发行版上运行或调整,例如 Ubuntu 14.04.2 LTS。
~$ dmesg | grep -i efi
[ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-3.19.0-15-generic.efi.signed root=UUID=7843c644-e6f4-4d64-9317-0b854cb524f2 ro quiet splash intremap=off acpi_osi=! acpi_osi=Darwin nomodeset vt.handoff=7
[ 0.000000] efi: EFI v1.10 by Apple
[ 0.000000] efi: ACPI=0xbf96a000 ACPI 2.0=0xbf96a014 SMBIOS=0xbf71a000
Run Code Online (Sandbox Code Playgroud)
长话短说,我们必须设置两个 PCI-E 寄存器:一个在显卡上启用总线控制,另一个在显卡的 PCI-E 桥上启用 VGA 支持。因此,它实际上与 Nvidia 驱动程序无关,并且取决于观点,甚至与 Apple 过时/残缺/您将其命名为 EFI 实现无关。
我就是这样解决的。当然,获得荣誉的主要是 MacRumors 论坛上的那些人。 免责声明以下说明按原样提供,不作任何保证,也不承担任何责任。这样做的风险由您自己承担!
我不会在这里详细介绍,因为网络上有很多文章向您展示了如何执行此操作,并且在安装 Nvidia 驱动程序(例如www.rodsbooks.com /ubuntu-efi)。
但请注意,以下说明假定您已成功安装并在 UEFI 模式下启动。您可以通过检查目录/sys/firmware是否存在来验证,该目录仅在以 EFI 模式启动后创建。
我们需要显卡的 ID 和它所连接的 PCI-E 桥接器。在 shell 中发出以下命令:
~$ sudo lshw -businfo -class bridge -class display
pci@0000:00:00.0 bridge MCP89 HOST Bridge
pci@0000:00:03.0 bridge MCP89 LPC Bridge
pci@0000:00:0e.0 bridge NVIDIA Corporation
pci@0000:00:15.0 bridge NVIDIA Corporation
pci@0000:00:16.0 bridge NVIDIA Corporation
pci@0000:00:17.0 >!!< bridge MCP89 PCI Express Bridge
pci@0000:04:00.0 >!!< display MCP89 GeForce 320M
Run Code Online (Sandbox Code Playgroud)
看一看 (1) 显示显示的行和 (2) 显示行之前带有桥的行。记下桥接设备(此处为 00:17.0)和显示设备(此处为 04:00.0)的 PCI-E 总线 ID(格式 XX:YY.Z)并记住哪个是哪个。注意:这些 ID 在您的机器上可能会有所不同,具体取决于您的 Mac 型号和版本。
使用sudo nano /etc/grub.d/01_enable_vga.conf启动文本编辑器并复制/粘贴以下内容。确保将所有 4 行粘贴到该文件中!将 00:17.0替换为步骤 2 中记录的桥接设备的 PCI-E ID。将 04:00.0替换为步骤 2 中记录的显示设备的 PCI-E ID。
cat << EOF
setpci -s "00:17.0" 3e.b=8
setpci -s "04:00.0" 04.b=7
EOF
Run Code Online (Sandbox Code Playgroud)
最后,使用以下两个命令使创建的文件可执行并更新您的 grub 配置文件。
~$ sudo chmod 755 /etc/grub.d/01_enable_vga.conf
~$ sudo update-grub
Run Code Online (Sandbox Code Playgroud)
如果在重新启动后,寄存器值已设置为 8(桥接设备)和 7(显示设备),则一切正常:
~$ sudo setpci -s "00:17.0" 3e.b
08
~$ sudo setpci -s "04:00.0" 04.b
07
Run Code Online (Sandbox Code Playgroud)
使用 Ubuntu 的附加驱动程序GUI 来安装 Nvidia 驱动程序。我建议遵循这篇关于如何启用亮度控制的文章,因为它不是开箱即用的。
归档时间: |
|
查看次数: |
62356 次 |
最近记录: |