Ubuntu 18.04:Macbook Pro 无法使用 Intel 集成 GPU 启动?

Ubuntu 18.04:Macbook Pro 无法使用 Intel 集成 GPU 启动?

我有一台运行 Ubuntu 18.04 的旧 2011 年 Macbook Pro,它集成了 Intel HD Graphics 3000,以及独立 AMD Radeon HD 6750M 显卡。独立 AMD 显卡基本上已经不行了(谷歌搜索“Radeongate”了解原因),所以我想把 Mac 重新用作一台简单的网页浏览机,至少可以单独使用集成显卡播放高清视频。问题是,除非我禁用两个都如果 GRUB 内核启动参数中包含“nomodeset”,则 GPU 将无法启动。如果我将参数保留为默认的“quiet splash”,则会出现一个空白的紫色屏幕,但我仍然可以通过 SSH 进入以关闭它。如果我将“radeon.modeset=0”添加到参数中,则会出现启动过程和检查列表,但它会在某个任意行处冻结,同样,我仍可以通过 SSH 进入以关闭它。在前两种情况下,我也无法切换到仅使用命令行的 tty 会话。启动的唯一方法是将“nomodeset”添加到参数中,最终我会在 llvmpipe(LLVM 6.0,256 位)上运行 Ubuntu。

我相当确定 Ubuntu 提供的 Intel i915 驱动程序已正确安装(在 lsmod 中显示),而且由于 Intel 停止了其图形驱动程序更新工具,我不知道还有什么地方可以获取其他驱动程序。我也没有理由相信 iGPU 也坏了,因为在安装 Ubuntu 之前,我曾使用 iGPU 短暂成功进入 OS X。根据我为上述 3 种情况找到的其他类似帖子,我得到了一些日志信息,我认为这些信息会很有用。

将“nomodeset”添加到内核启动参数(不使用 GPU,启动)

glxinfo | grep OpenGL

OpenGL vendor string: VMware, Inc.
OpenGL renderer string: llvmpipe (LLVM 6.0, 256 bits)
OpenGL core profile version string: 3.3 (Core Profile) Mesa 18.2.0-devel
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.1 Mesa 18.2.0-devel
OpenGL shading language version string: 1.40
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 18.2.0-devel
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
OpenGL ES profile extensions:

---------------------------------------------------------------------------------------------------------------------------------

sudo lshw -c video

  *-display UNCLAIMED
       description: VGA compatible controller
       product: Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M]
       vendor: Advanced Micro Devices, Inc. [AMD/ATI]
       physical id: 0
       bus info: pci@0000:01:00.0
       version: 00
       width: 64 bits
       clock: 33MHz
       capabilities: pm pciexpress msi vga_controller bus_master cap_list
       configuration: latency=0
       resources: memory:90000000-9fffffff memory:b0800000-b081ffff ioport:2000(size=256) memory:b0820000-b083ffff
  *-display UNCLAIMED
       description: VGA compatible controller
       product: 2nd Generation Core Processor Family Integrated Graphics Controller
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 09
       width: 64 bits
       clock: 33MHz
       capabilities: msi pm vga_controller bus_master cap_list
       configuration: latency=0
       resources: memory:b0000000-b03fffff memory:a0000000-afffffff ioport:3000(size=64)

---------------------------------------------------------------------------------------------------------------------------------

sudo lspci | grep VGA

00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M]

将“radeon.modeset=0”添加到内核启动参数(使用 iGPU、冻结启动屏幕)

glxinfo | grep OpenGL

libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
Error: couldn't find RGB GLX visual or fbconfig

---------------------------------------------------------------------------------------------------------------------------------

sudo lshw -c video

  *-display UNCLAIMED
       description: VGA compatible controller
       product: Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M]
       vendor: Advanced Micro Devices, Inc. [AMD/ATI]
       physical id: 0
       bus info: pci@0000:01:00.0
       version: 00
       width: 64 bits
       clock: 33MHz
       capabilities: pm pciexpress msi vga_controller bus_master cap_list
       configuration: latency=0
       resources: memory:90000000-9fffffff memory:b0800000-b081ffff ioport:2000(size=256) memory:b0820000-b083ffff
  *-display
       description: VGA compatible controller
       product: 2nd Generation Core Processor Family Integrated Graphics Controller
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 09
       width: 64 bits
       clock: 33MHz
       capabilities: msi pm vga_controller bus_master cap_list
       configuration: driver=i915 latency=0
       resources: irq:44 memory:b0000000-b03fffff memory:a0000000-afffffff ioport:3000(size=64)

---------------------------------------------------------------------------------------------------------------------------------

sudo lspci | grep VGA

00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M]

默认内核启动参数(使用 iGPU,卡在空白紫屏)

glxinfo | grep OpenGL

libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
Error: couldn't find RGB GLX visual or fbconfig

---------------------------------------------------------------------------------------------------------------------------------

sudo lshw -c video

  *-display UNCLAIMED
       description: VGA compatible controller
       product: Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M]
       vendor: Advanced Micro Devices, Inc. [AMD/ATI]
       physical id: 0
       bus info: pci@0000:01:00.0
       version: 00
       width: 64 bits
       clock: 33MHz
       capabilities: pm pciexpress msi vga_controller cap_list
       configuration: latency=0
       resources: memory:90000000-9fffffff memory:b0800000-b081ffff ioport:2000(size=256) memory:b0820000-b083ffff
  *-display
       description: VGA compatible controller
       product: 2nd Generation Core Processor Family Integrated Graphics Controller
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 09
       width: 64 bits
       clock: 33MHz
       capabilities: msi pm vga_controller bus_master cap_list
       configuration: driver=i915 latency=0
       resources: irq:44 memory:b0000000-b03fffff memory:a0000000-afffffff ioport:3000(size=64)

---------------------------------------------------------------------------------------------------------------------------------

sudo lspci | grep VGA

00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M]

另外,lsmod 结果

Module                  Size  Used by
rfcomm                 77824  4
bnep                   20480  2
nls_iso8859_1          16384  1
input_leds             16384  0
joydev                 24576  0
snd_hda_codec_cirrus    20480  1
btusb                  45056  0
btrtl                  16384  1 btusb
btbcm                  16384  1 btusb
btintel                16384  1 btusb
bluetooth             548864  31 btrtl,btintel,bnep,btbcm,rfcomm,btusb
uvcvideo               86016  0
ecdh_generic           24576  1 bluetooth
videobuf2_vmalloc      16384  1 uvcvideo
videobuf2_memops       16384  1 videobuf2_vmalloc
videobuf2_v4l2         24576  1 uvcvideo
bcm5974                16384  0
videobuf2_core         40960  2 uvcvideo,videobuf2_v4l2
videodev              184320  3 uvcvideo,videobuf2_core,videobuf2_v4l2
media                  40960  2 uvcvideo,videodev
applesmc               20480  0
snd_hda_codec_generic    73728  1 snd_hda_codec_cirrus
snd_hda_codec_hdmi     49152  1
snd_hda_intel          40960  8
snd_hda_codec         126976  4 snd_hda_intel,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec_cirrus
input_polldev          16384  1 applesmc
snd_hda_core           81920  5 snd_hda_intel,snd_hda_codec,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec_cirrus
snd_hwdep              20480  1 snd_hda_codec
wl                   6447104  0
snd_seq_midi           16384  0
acpi_als               16384  0
kfifo_buf              16384  1 acpi_als
sbs                    20480  0
snd_pcm                98304  4 snd_hda_intel,snd_hda_codec,snd_hda_core,snd_hda_codec_hdmi
snd_seq_midi_event     16384  1 snd_seq_midi
snd_rawmidi            32768  1 snd_seq_midi
mei_me                 40960  0
cfg80211              622592  1 wl
industrialio           69632  2 acpi_als,kfifo_buf
snd_seq                65536  2 snd_seq_midi_event,snd_seq_midi
sbshc                  16384  1 sbs
mei                    90112  1 mei_me
intel_rapl             20480  0
x86_pkg_temp_thermal    16384  0
intel_powerclamp       16384  0
coretemp               16384  0
kvm_intel             204800  0
kvm                   593920  1 kvm_intel
irqbypass              16384  1 kvm
crct10dif_pclmul       16384  0
crc32_pclmul           16384  0
ghash_clmulni_intel    16384  0
pcbc                   16384  0
lpc_ich                24576  0
aesni_intel           188416  0
aes_x86_64             20480  1 aesni_intel
crypto_simd            16384  1 aesni_intel
glue_helper            16384  1 aesni_intel
cryptd                 24576  3 crypto_simd,ghash_clmulni_intel,aesni_intel
intel_cstate           20480  0
intel_rapl_perf        16384  0
apple_gmux             20480  0
snd_seq_device         16384  3 snd_seq,snd_rawmidi,snd_seq_midi
snd_timer              32768  2 snd_seq,snd_pcm
snd                    81920  27 snd_hda_intel,snd_hwdep,snd_seq,snd_hda_codec,snd_timer,snd_rawmidi,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec_cirrus,snd_seq_device,snd_pcm
soundcore              16384  1 snd
shpchp                 36864  0
mac_hid                16384  0
apple_bl               16384  1 apple_gmux
sch_fq_codel           20480  3
parport_pc             36864  0
ppdev                  20480  0
lp                     20480  0
parport                49152  3 lp,parport_pc,ppdev
ip_tables              28672  0
x_tables               40960  1 ip_tables
autofs4                40960  2
hid_generic            16384  0
hid_apple              16384  0
hid_appleir            16384  0
usbhid                 49152  0
hid                   118784  4 hid_appleir,hid_generic,usbhid,hid_apple
i915                 1617920  0
ttm                   106496  0
i2c_algo_bit           16384  1 i915
drm_kms_helper        167936  1 i915
tg3                   167936  0
syscopyarea            16384  1 drm_kms_helper
firewire_ohci          40960  0
sysfillrect            16384  1 drm_kms_helper
ahci                   36864  2
sysimgblt              16384  1 drm_kms_helper
fb_sys_fops            16384  1 drm_kms_helper
libahci                32768  1 ahci
ptp                    20480  1 tg3
sdhci_pci              28672  0
firewire_core          65536  1 firewire_ohci
drm                   401408  3 i915,ttm,drm_kms_helper
crc_itu_t              16384  1 firewire_core
pps_core               20480  1 ptp
sdhci                  49152  1 sdhci_pci
thunderbolt           118784  0
video                  40960  2 apple_gmux,i915

那么,有人知道为什么我不能只使用 iGPU 启动吗?如果我遗漏了解决此问题所需的任何重要信息,请告诉我,并提前感谢您的帮助!

相关内容