Поэтому я недавно перешел на использование KDE с Gnome в Ubuntu 18. Конфигурация «Параметры системы» > «Дисплеи» будет отображать три дисплея, но не позволит мне активировать их все одновременно, если я не переключусь на использование драйверов Nvidia (которые управляют вентиляторами в ноутбуке, что меня раздражает). Это работает с Ubuntu 18.04 с использованием Gnome 3, поскольку Intel HD 630 поддерживает до 3 дисплеев 4k на DisplayPort (https://www.intel.com/content/www/us/en/support/articles/000025675/graphics-drivers.html).
В Ubuntu 17 (Gnome) тоже была эта проблема, и она была решена в Ubuntu 18 - графические процессоры Intel 7-го поколения могли иметь максимальное разрешение 16384 x 16384 вместо 8192 x 8192. Я использую ядро 4.17, но xrandr по-прежнему сообщает о максимальном размере 8192 x 8192. (Если я использую драйверы nvidia-390, разрешение увеличивается до 32767 x 32767).
Мне KDE 5.6 нравится больше, чем Gnome - все, кажется, работает лучше, включая масштабирование дисплея на 4k-дисплеях. Но из-за этого явного ограничения в программном обеспечении, которого там быть не должно, мне придется либо послушать этих фанатов, либо отказаться от дисплея. Кто-нибудь знает о возможном исправлении?
Спасибо!
Для полноты картины добавил вывод xrandr для драйверов i915 и nvidia:
Сначала Intel:
$ xrandr
Screen 0: minimum 320 x 200, current 7680 x 2160, maximum 8192 x 8192
eDP-1 connected primary 3840x2160+3840+0 (normal left inverted right x axis y axis) 346mm x 194mm
3840x2160 60.00*+ 59.98 59.97
3200x1800 59.96 59.94
2880x1620 59.96 59.97
2560x1600 59.99 59.97
2560x1440 59.99 59.99 59.96 59.95
2048x1536 60.00
1920x1440 60.00
1856x1392 60.01
1792x1344 60.01
2048x1152 59.99 59.98 59.90 59.91
1920x1200 59.88 59.95
1920x1080 60.01 59.97 59.96 59.93
1600x1200 60.00
1680x1050 59.95 59.88
1600x1024 60.17
1400x1050 59.98
1600x900 59.99 59.94 59.95 59.82
1280x1024 60.02
1440x900 59.89
1400x900 59.96 59.88
1280x960 60.00
1440x810 60.00 59.97
1368x768 59.88 59.85
1360x768 59.80 59.96
1280x800 59.99 59.97 59.81 59.91
1152x864 60.00
1280x720 60.00 59.99 59.86 59.74
1024x768 60.04 60.00
960x720 60.00
928x696 60.05
896x672 60.01
1024x576 59.95 59.96 59.90 59.82
960x600 59.93 60.00
960x540 59.96 59.99 59.63 59.82
800x600 60.00 60.32 56.25
840x525 60.01 59.88
864x486 59.92 59.57
800x512 60.17
700x525 59.98
800x450 59.95 59.82
640x512 60.02
720x450 59.89
700x450 59.96 59.88
640x480 60.00 59.94
720x405 59.51 58.99
684x384 59.88 59.85
680x384 59.80 59.96
640x400 59.88 59.98
576x432 60.06
640x360 59.86 59.83 59.84 59.32
512x384 60.00
512x288 60.00 59.92
480x270 59.63 59.82
400x300 60.32 56.34
432x243 59.92 59.57
320x240 60.05
360x202 59.51 59.13
320x180 59.84 59.32
DP-1 connected (normal left inverted right x axis y axis)
2560x1440 59.95 +
1280x720 59.86
HDMI-1 disconnected (normal left inverted right x axis y axis)
DP-2 connected 3840x2160+0+0 (normal left inverted right x axis y axis) 598mm x 336mm
3840x2160 24.00*
1024x768 60.00
800x600 60.32
640x480 60.00 59.94
HDMI-2 disconnected (normal left inverted right x axis y axis)
Драйвер Nvidia:
$ xrandr
Screen 0: minimum 8 x 8, current 10240 x 2160, maximum 32767 x 32767
eDP-1-1 connected primary 3840x2160+3840+0 (normal left inverted right x axis y axis) 346mm x 194mm
3840x2160 60.00*+ 59.98 59.97
3200x1800 59.96 59.94
2880x1620 59.96 59.97
2560x1600 59.99 59.97
2560x1440 59.99 59.99 59.96 59.95
2048x1536 60.00
1920x1440 60.00
1856x1392 60.01
1792x1344 60.01
2048x1152 59.99 59.98 59.90 59.91
1920x1200 59.88 59.95
1920x1080 60.01 59.97 59.96 59.93
1600x1200 60.00
1680x1050 59.95 59.88
1600x1024 60.17
1400x1050 59.98
1600x900 59.99 59.94 59.95 59.82
1280x1024 60.02
1440x900 59.89
1400x900 59.96 59.88
1280x960 60.00
1440x810 60.00 59.97
1368x768 59.88 59.85
1360x768 59.80 59.96
1280x800 59.99 59.97 59.81 59.91
1152x864 60.00
1280x720 60.00 59.99 59.86 59.74
1024x768 60.04 60.00
960x720 60.00
928x696 60.05
896x672 60.01
1024x576 59.95 59.96 59.90 59.82
960x600 59.93 60.00
960x540 59.96 59.99 59.63 59.82
800x600 60.00 60.32 56.25
840x525 60.01 59.88
864x486 59.92 59.57
800x512 60.17
700x525 59.98
800x450 59.95 59.82
640x512 60.02
720x450 59.89
700x450 59.96 59.88
640x480 60.00 59.94
720x405 59.51 58.99
684x384 59.88 59.85
680x384 59.80 59.96
640x400 59.88 59.98
576x432 60.06
640x360 59.86 59.83 59.84 59.32
512x384 60.00
512x288 60.00 59.92
480x270 59.63 59.82
400x300 60.32 56.34
432x243 59.92 59.57
320x240 60.05
360x202 59.51 59.13
320x180 59.84 59.32
DP-1-1 connected 2560x1440+7680+360 (normal left inverted right x axis y axis) 597mm x 336mm
2560x1440 59.95*+
1280x720 59.86
HDMI-1-1 disconnected (normal left inverted right x axis y axis)
DP-1-2 connected 3840x2160+0+0 (normal left inverted right x axis y axis) 598mm x 336mm
3840x2160 24.00*
1024x768 60.00
800x600 60.32
640x480 60.00 59.94
HDMI-1-2 disconnected (normal left inverted right x axis y axis)
решение1
У меня возникла эта проблема на Ubuntu 18.04 с графическим процессором i7 8-го поколения (также имеется HD 630).
Причина, по которой это работает в Ubuntu 18.04, заключается в том, что вы используете GNOME на Wayland, который по какой-то причине игнорирует вывод максимального разрешения, сообщаемый драйвером. С другой стороны, X этого не делает, и поэтому превышение границы 8192 приводит к ошибке сервера X.
Если вы посмотрите на исходный код ядра, в частности драйвера i915, вы заметите, что разработчики Intel прекратили проверять версии GPU после 3-го поколения (что было ГОДЫ назад), и любой GPU, который не является 3-м поколением или ниже, по умолчанию выдает максимальный вывод 8192x8192. Хотя 6-е поколение и выше (или около того) все поддерживают 16384x16384.
Патч для этого смехотворно прост, так что странно, что его не пофиксили. Он буквально расширяет ветвь if с помощью
/* maximum framebuffer dimensions */
if (IS_GEN2(dev_priv)) {
dev->mode_config.max_width = 2048;
dev->mode_config.max_height = 2048;
} else if (IS_GEN3(dev_priv)) {
dev->mode_config.max_width = 4096;
dev->mode_config.max_height = 4096;
} else if (IS_GEN4(dev_priv) || IS_GEN5(dev_priv)) {
dev->mode_config.max_width = 8192;
dev->mode_config.max_height = 8192;
} else {
dev->mode_config.max_width = 16384;
dev->mode_config.max_height = 16384;
}
Для справки:https://github.com/torvalds/linux/blob/master/drivers/gpu/drm/i915/intel_display.c