我已在内核配置中启用 switcheroo 。为什么没有 /sys/kernel/debug/vgaswitcheroo/switch ?
Linux ubuntu-raid-w500 2.6.38-10-generic #46-Ubuntu SMP 2011 年 6 月 28 日星期二 15:07:17 UTC x86_64 x86_64 x86_64 GNU/Linux
我的电脑是 Thinkpad W500 。一个显卡是 ATI Mobility FireGL V5700 (512 MB)。另一个是 Intel Graphics Media Accelerator 4500MHD 。
我使用的是官方内核 2.6.38-10,我没有对其进行自定义。我pcie_aspm=force
在 GRUB_CMDLINE_LINUX_DEFAULT 中添加了内核选项/etc/default/grub
- 设置
modeset=1
似乎没有帮助 - 这里是kern.log 的输出
- 这是我的整个启动过程。
答案1
在 Ubuntu 10.10 及更高版本中,vgaswitchheroo 已启用,因此您不需要额外设置。并且/sys/kernel/debug
已安装,但您需要 root 权限才能读取 的内容/sys/kernel/debug
,因此使用sudo su
应该可以工作。
如果仍然没有开关,请运行lspci | grep VGA
并确保两张卡都输出。如果缺少一张卡,则可能是 BIOS 设置的原因,因此请检查一下。
控制台示例:
sergio@Sergio-L:~$ ls /sys/kernel/debug/vgaswitcheroo
ls: impossível aceder a /sys/kernel/debug/vgaswitcheroo: Permissão negada
sergio@Sergio-L:~$ sudo su
[sudo] password for sergio:
root@Sergio-L:/home/sergio#
root@Sergio-L:/home/sergio# ls /sys/kernel/debug/vgaswitcheroo/
switch
root@Sergio-L:/home/sergio#
答案2
如果您不使用开源 radeon 驱动程序(或 nvidia 硬件的 nouveau 驱动程序),则不会有文件/sys/kernel/debug/vgaswitcheroo/switch
。(忽略 asus-switcheroo 和 byo-switcheroo 等 hack)。禁用 KMS(“modeset=0”)也会关闭此功能。
即使文件存在,当随后加载专有驱动程序(fglrx、nvidia)时,它也无法可靠地使用。尝试向其写入命令时,您可能会遇到锁定。有关 NVIDIA 硬件上的 vga_switcheroo,另请参阅如何在华硕 U41S 上启用 vga 切换器?. 有关 NVIDIA Optimus 硬件的一般信息,请参阅Ubuntu 是否支持具有 Optimus 技术的 NVIDIA GeForce?
答案3
在我的情况下,答案隐藏在上面的一条评论中:我的 HP 笔记本电脑上有一个名为“HybridGraphics”的 BIOS 选项,并且已将其设置为“AUTO”。这似乎还不够,必须将其设置为“ENABLE”。