i915 グラフィックス、Fedora 28、解像度と表示の問題

i915 グラフィックス、Fedora 28、解像度と表示の問題

私は、Fedora 28 (実際は 27 で、その後 28 にアップグレードしましたが、これは 27 のインストールの開始時に発生しました) を Dell Inspiron 1545 に愛情を込めてインストールしました。

問題の説明: 使用可能な GUI を受け取るためにも、NOMODESET を使用する必要があります。コマンドラインにそのスイッチがない場合、以下に説明するように、F1 コンソールに GUI (マウス ポインターのみ) が表示されます。END (だと思う) を押すと、英語または他の言語を尋ねる GUI ポップアップが表示されますが、何かをクリックすると閉じられ、きれいなデスクトップ画像とマウス ポインターのみが表示されます。

背景:

Inspiron 1545 (4GB RAM、128GB SSD) に USB ベースのインストールを試みましたが、GUI インストールを続行できる唯一の方法は、インストール プロセスのコマンドラインで NOMODESET (編集用) を指定することでした。解像度は明らかに低かったですが (インストールに NOMODESET を使用する必要があるため)、インストール後にドライバーを整理すれば完全な解像度が得られるだろうと考えました。うまくいきませんでした。

苦情:今は1024x768のままです。 いくらいじったり、トラブルシューティングしたりしても、喜びは得られません。

そしてモード設定なしコマンドラインにハードコードされています (当然のことですが、インストールを開始したときにこの設定が保持されていたと思います)。これが GUI を起動して LXDE (私が選択したデフォルトのデスクトップ オプション) を使用できる唯一の方法です。この GUI は 1024x768 で、XRANDR やその他の方法では変更できません。

詳細:

(1) ノートパソコン自体は、ちょっと怪物です。LCD 画面がノートパソコンから物理的に取り外され、ノートパソコン全体が取り外されたため、ノートパソコンの底部だけが残っています。見た目は悪いですが、まだ動作します。

実際、Windows では問題なく動作し、外付​​けの Sanyo LCD モニターにフル解像度 (1360x768) で問題なく表示されました。

また、LXDE は NOMODESET でも動作しますが、1024x768 でのみ動作します。

(2) コマンドラインから「nomodeset」を削除すると、正常に起動しますが、グリーター背景 (光ファイバーの青いグラフィック) とマウス ポインターのみが表示されます。他のターミナル (ALT-F[2-8]) は通常のテキスト コンソール ログインを提供し、正常に動作します。ALT-F1 (プライマリ コンソール) では、やはり Fedora 背景グリーターとマウス ポインター (動く) のみが表示されます。

(3) 以下は、コマンドライン (grub ブート ライン) で NOMODESET パラメータを使用した場合と使用しない場合の両方で実行した、(おそらく) 関連する診断結果です。

初め、lspci有効なサポートされているグラフィック チップセットがあることを確認するには:

**[root@Towel ~]# lspci -nnk | grep -A3 VGA**
00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller [8086:2a42] (rev 07)
    Subsystem: Dell Device [1028:02aa]
    Kernel modules: i915
00:02.1 Display controller [0380]: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller [8086:2a43] (rev 07)

コマンドラインに NOMODESET がある場合、inxi は何と言いますか?

**[root@Towel ~]# inxi -SMCGx** 
System:
  Host: Towel Kernel: 4.19.14-200.fc28.x86_64 x86_64 bits: 64 compiler: gcc 
  v: 8.2.1 Desktop: LXDE 0.9.3 Distro: Fedora release 28 (Twenty Eight) 
Machine:
  Type: Portable System: Dell product: Inspiron 1545 v: N/A serial: 5DQG7H1 
  Mobo: Dell model: 0G848F serial: .5DQG7H1.CN701668CR02E3. BIOS: Dell 
  v: A14 date: 12/07/2009 
CPU:
  Topology: Dual Core model: Intel Pentium Dual T3400 bits: 64 type: MCP 
  arch: Core Merom rev: D L2 cache: 1024 KiB 
  flags: lm nx pae sse sse2 sse3 ssse3 bogomips: 8645 
  Speed: 998 MHz min/max: 1000/2167 MHz Core speeds (MHz): 1: 998 2: 998 
Graphics:
  Device-1: Intel Mobile 4 Series Integrated Graphics vendor: Dell 
  driver: N/A bus ID: 00:02.0 
  Display: server: Fedora Project X.org 1.19.6 driver: vesa 
  unloaded: fbdev,modesetting resolution: 1024x768~N/A 
  OpenGL: renderer: llvmpipe (LLVM 6.0 128 bits) v: 3.3 Mesa 18.0.5 
  direct render: Yes

ここで、コマンドラインに NOMODESET がない場合:

**[root@Towel ~]# inxi -SMCGx** 
System:    Host: Towel Kernel: 4.19.13-200.fc28.x86_64 x86_64 bits: 64 compiler: gcc v: 8.2.1 Console: tty 2 
           Distro: Fedora release 28 (Twenty Eight) 
Machine:   Type: Portable System: Dell product: Inspiron 1545 v: N/A serial: 5DQG7H1 
           Mobo: Dell model: 0G848F serial: .5DQG7H1.CN701668CR02E3. BIOS: Dell v: A14 date: 12/07/2009 
CPU:       Topology: Dual Core model: Intel Pentium Dual T3400 bits: 64 type: MCP arch: Core Merom rev: D L2 cache: 1024 KiB 
           flags: lm nx pae sse sse2 sse3 ssse3 bogomips: 8645 
           Speed: 998 MHz min/max: 1000/2167 MHz Core speeds (MHz): 1: 998 2: 998 
Graphics:  Device-1: Intel Mobile 4 Series Integrated Graphics vendor: Dell driver: i915 v: kernel bus ID: 00:02.0 
           Display: server: X.org 1.19.6 driver: modesetting unloaded: fbdev,vesa tty: 170x48 
           Message: Advanced graphics data unavailable in console for root.

コマンドラインに NOMODESET が存在する Xorg.0.log はどうでしょうか:

**[root@Towel ~]# cat /var/log/Xorg.0.log | grep driver**
[    18.877]    X.Org XInput driver : 24.1
[    18.945] (==) Matched modesetting as autoconfigured driver 0
[    18.945] (==) Matched fbdev as autoconfigured driver 1
[    18.945] (==) Matched vesa as autoconfigured driver 2
[    18.945] (==) Assigned the driver to the xf86ConfigLayout
[    18.945] (II) Loading /usr/lib64/xorg/modules/drivers/modesetting_drv.so
[    18.951] (II) Loading /usr/lib64/xorg/modules/drivers/fbdev_drv.so
[    18.952] (II) Loading /usr/lib64/xorg/modules/drivers/vesa_drv.so
[    18.954] (II) FBDEV: driver for framebuffer: fbdev
[    18.954] (II) VESA: driver for VESA chipsets: vesa
[    20.419]    ABI class: X.Org XInput driver, version 24.1
[    20.419] (II) Using input driver 'libinput' for 'Power Button'
[    20.427] (II) No input driver specified, ignoring this device.
[    20.429] (II) Using input driver 'libinput' for 'Sleep Button'
[    20.437] (II) No input driver specified, ignoring this device.
[    20.437] (II) No input driver specified, ignoring this device.
[    20.440] (II) Using input driver 'libinput' for 'Logitech USB Receiver'
[    20.447] (II) Using input driver 'libinput' for 'Logitech USB Receiver Mouse'
[    20.460] (II) No input driver specified, ignoring this device.
[    20.464] (II) Using input driver 'libinput' for 'Logitech USB Receiver Consumer Control'
[    20.474] (II) Using input driver 'libinput' for 'Logitech USB Receiver System Control'
[    20.486] (II) Using input driver 'libinput' for 'Dell WMI hotkeys'
[    20.501] (II) Using input driver 'libinput' for 'AT Translated Set 2 keyboard'
[    20.509] (II) Using input driver 'libinput' for 'AlpsPS/2 ALPS GlidePoint'
[    20.525] (II) No input driver specified, ignoring this device.
[    20.545] (II) Using input driver 'libinput' for 'Logitech USB Receiver Consumer Control'
[    20.545] (**) Option "_source" "_driver/libinput"

NOMODESET が削除/存在しない Xorg.0.log:

**[root@Towel ~]# cat /var/log/Xorg.0.log | grep driver** 
[    18.506]    X.Org XInput driver : 24.1
[    18.620] (==) Matched modesetting as autoconfigured driver 0
[    18.620] (==) Matched fbdev as autoconfigured driver 1
[    18.620] (==) Matched vesa as autoconfigured driver 2
[    18.620] (==) Assigned the driver to the xf86ConfigLayout
[    18.621] (II) Loading /usr/lib64/xorg/modules/drivers/modesetting_drv.so
[    18.631] (II) Loading /usr/lib64/xorg/modules/drivers/fbdev_drv.so
[    18.633] (II) Loading /usr/lib64/xorg/modules/drivers/vesa_drv.so
[    18.635] (II) FBDEV: driver for framebuffer: fbdev
[    18.635] (II) VESA: driver for VESA chipsets: vesa
[    18.669] (II) glamor: OpenGL accelerated X.org driver based.
[    19.354] (II) modeset(0): [DRI2]   DRI driver: i965
[    19.354] (II) modeset(0): [DRI2]   VDPAU driver: va_gl
[    19.648]    ABI class: X.Org XInput driver, version 24.1
[    19.648] (II) Using input driver 'libinput' for 'Video Bus'
[    19.673] (II) Using input driver 'libinput' for 'Power Button'
[    19.684] (II) No input driver specified, ignoring this device.
[    19.686] (II) Using input driver 'libinput' for 'Sleep Button'
[    19.702] (II) No input driver specified, ignoring this device.
[    19.703] (II) No input driver specified, ignoring this device.
[    19.705] (II) Using input driver 'libinput' for 'Logitech USB Receiver'
[    19.714] (II) Using input driver 'libinput' for 'Logitech USB Receiver Mouse'
[    19.731] (II) No input driver specified, ignoring this device.
[    19.733] (II) Using input driver 'libinput' for 'Logitech USB Receiver Consumer Control'
[    19.743] (II) Using input driver 'libinput' for 'Logitech USB Receiver System Control'
[    19.756] (II) Using input driver 'libinput' for 'Dell WMI hotkeys'
[    19.771] (II) Using input driver 'libinput' for 'AT Translated Set 2 keyboard'
[    19.781] (II) Using input driver 'libinput' for 'AlpsPS/2 ALPS GlidePoint'
[    19.793] (II) No input driver specified, ignoring this device.
[    19.843] (II) Using input driver 'libinput' for 'Logitech USB Receiver Consumer Control'
[    19.843] (**) Option "_source" "_driver/libinput"

コマンドラインに NOMODESET がない dmesg はどうなりますか?

<snip>
[    9.632354] [Firmware Bug]: Duplicate ACPI video bus devices for the same VGA controller, please try module parameter "video.allow_duplicates=1"if the current driver doesn't work.
<snip>

そして最後に、最近学んだ新しいコマンドのセットをまとめるために、xrandr も操作し、IT 部門がディスプレイなどをどう考えているかを教えてもらいました。

[root@Towel ~]# xrandr --verbose
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 640 x 480, current 1024 x 768, maximum 1024 x 768
default connected 1024x768+0+0 (0x2ae) normal (normal) 0mm x 0mm
    Identifier: 0x2ad
    Timestamp:  19525
    Subpixel:   no subpixels
    Clones:    
    CRTC:       0
    CRTCs:      0
    Transform:  1.000000 0.000000 0.000000
                0.000000 1.000000 0.000000
                0.000000 0.000000 1.000000
               filter: 
  1024x768 (0x2ae)  0.000MHz *current
        h: width  1024 start    0 end    0 total 1024 skew    0 clock   0.00KHz
        v: height  768 start    0 end    0 total  768           clock   0.00Hz
  800x600 (0x2af)  0.000MHz
        h: width   800 start    0 end    0 total  800 skew    0 clock   0.00KHz
        v: height  600 start    0 end    0 total  600           clock   0.00Hz
  640x480 (0x2b0)  0.000MHz
        h: width   640 start    0 end    0 total  640 skew    0 clock   0.00KHz
        v: height  480 start    0 end    0 total  480           clock   0.00Hz

唯一のディスプレイの名前として「default」が使用されていることにお気づきですか? これは、システムが接続された LCD が取り外された/なくなったこと、および外部ディスプレイに接続された VGA (例:「default」) を認識しているためと考えられます。

そして、hwinfo の優れた点:

[root@Towel ~]# hwinfo --monitor
28: None 00.0: 10000 Monitor                                    
  [Created at monitor.97]
  Unique ID: rdCR.dwn9oRFeFS2
  Hardware Class: monitor
  Model: "LCD TV"
  Vendor: SAN 
  Device: eisa 0x0000 "LCD TV"
  Resolution: 640x480@60Hz
  Resolution: 800x600@60Hz
  Resolution: 1024x768@60Hz
  Resolution: 1280x720@60Hz
  Resolution: 1360x768@60Hz
  Year of Manufacture: 2015
  Week of Manufacture: 0
  Detailed Timings #0:
     Resolution: 1360x768
     Horizontal: 1360 1424 1536 1792 (+64 +176 +432) +hsync
       Vertical:  768  771  777  795 (+3 +9 +27) +vsync
    Frequencies: 85.50 MHz, 47.71 kHz, 60.02 Hz
  Driver Info #0:
    Max. Resolution: 1360x768
    Vert. Sync Range: 23-63 Hz
    Hor. Sync Range: 15-69 kHz
    Bandwidth: 85 MHz
  Config Status: cfg=new, avail=yes, need=no, active=unknown

...

まとめると次のようになります。

(1) NOMODESET 付きで Centos 27 をインストールしました (他のオプションが機能しなかったため) (2) コマンドラインで NOMODESET が機能しません (ただし、テストのために削除しました) (3) NOMODESET パラメータが渡された状態で GUI は機能しますが、1024x768 で停止します (4) NOMODESET が存在しない/削除された状態で i915 ドライバーが読み込まれるようですが、機能する GUI はありません (おそらくラップトップの画面が物理的に存在しないため)

PS: cmdline に video.allow_duplicates=1 を入れてみましたが、私が知る限りでは全く違いはありませんでした。

PPS 私のラップトップの LCD 付きカバーは、実際にはユニットのベースにあるリード スイッチをトリガーするため、ラップトップは、混乱が解消されて i915 構成が使用可能になる前に、回路が閉じられる (カバーを閉じる動作によってリード スイッチがアクティブになる) ことを期待している可能性があると聞きました。これを行う方法がわかれば、今週末に試してみたいと思います。

-- モードセットありとなしの Xorg.0.log を更新 --

-> Modeset を使用する場合:https://pastebin.com/muYey8SJ

-> モードセットなし:https://pastebin.com/JrSbSs7N

関連情報