Wayland как установить собственное разрешение

15

Старый заголовок - «изменить разрешение на 1280x1024 с помощью xrandr: X Ошибка неудачного запроса: BadValue (целочисленный параметр вне диапазона для операции)»

Я установил свежую Ubuntu 17.10 и у меня есть монитор с разрешением 5: 4. Настройки не имеют разрешения выше 1024х768. Но мне нужно разрешение 1280х1024 (5: 4). Я использую видеокарту по умолчанию для материнской платы:

# lspci|grep VGA
00:02.0 VGA compatible controller: Intel Corporation 4 Series Chipset Integrated Graphics Controller (rev 03)

Также xrandr дает следующее:

$ xrandr
Screen 0: minimum 320 x 200, current 1024 x 768, maximum 8192 x 8192
XWAYLAND0 connected 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768      59.92*+

Я попытался добавить разрешение 1280x1024, используя xrandr. поэтому сначала создал информацию о разрешении, используя gtf:

$ gtf 1280 1024 60

  # 1280x1024 @ 60.00 Hz (GTF) hsync: 63.60 kHz; pclk: 108.88 MHz
  Modeline "1280x1024_60.00"  108.88  1280 1360 1496 1712  1024 1025 1028 1060  -HSync +Vsync

Затем добавлено в резолюции:

xrandr --newmode "1280x1024_60.00"  108.88  1280 1360 1496 1712  1024 1025 1028 1060  -HSync +Vsync

затем снова сделал команду: xrandr --addmode XWAYLAND0 1280x1024_60.00

Тогда ничего не изменилось. Когда я попытался изменить его с помощью xrandr --output XWAYLAND0 --mode 1280x1024_60.00 --rate 60Но произошла ошибка:

$ xrandr --output XWAYLAND0 --mode 1280x1024  --rate 60
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  140 (RANDR)
  Minor opcode of failed request:  7 (RRSetScreenSize)
  Value in failed request:  0x0
  Serial number of failed request:  21
  Current serial number in output stream:  22

Я не знаю, что я сделал не так. Или как изменить разрешение на правильное: 1280x1024

Мухаммед Этемаддар
источник
3
Вы не можете использовать xrandr для управления физическим дисплеем в Wayland. Попробуйте выйти и выбрать сеанс Ubuntu (Xorg) на экране входа в систему и посмотреть, сможете ли вы изменить разрешение там. Если ваш дисплей подключен через кабель VGA или не дает правильную информацию EDID, в настоящее время может быть невозможно изменить разрешение в Wayland.
Добей
1
@ Dobey, что тогда используется на Wayland?
Джордж Удосен
2
@ Джордж Я не думаю, что в настоящее время вы можете принудительно установить собственное разрешение под Wayland. Если бы я знал, как, я бы отправил ответ.
Добей
2
@ Мохаммад - Могу ли я изменить название вашего вопроса на «Как установить собственное разрешение в Wayland»?
Пантера
Я сохранил ваш первоначальный заголовок и могу восстановить его, если это необходимо.
Пантера

Ответы:

10

Вы можете попытаться установить собственное разрешение с помощью Wayland, приложив некоторые усилия и получив смешанные результаты.

Возможно, вам следует начать с подачи отчета об ошибке, включая вашу видеокарту и монитор (ы), против Wayland

Как мне сообщить об ошибке?

https://help.ubuntu.com/community/ReportingBugs


Добавление пользовательского разрешения

xrandr НЕ будет работать с Wayland!

Вы можете попытаться добавить собственное разрешение, используя ваш модлайн, аналогично тому, как вы это делаете с xrandr, но с несколькими дополнительными шагами.

Во-первых, я не уверен, работает ли это с безопасной загрузкой, поэтому советую начать с отключения безопасной загрузки.

Из https://ask.fedoraproject.org/en/question/99867/how-to-add-a-custom-resolution-to-weyland-fedora-25/ и https://wiki.archlinux.org/index. PHP / Kernel_mode_setting # Forcing_modes_and_EDID

Для начала вам нужно будет клонировать Edid-генератор . Затем вы можете передать его вашей моделине (с теми же аргументами, которые вы далиxrandr --newmode

С https://github.com/akatrevorjay/edid-generator

Установить требования

sudo apt install zsh edid-decode automake dos2unix

Скачать и извлечь

wget https://github.com/akatrevorjay/edid-generator/archive/master.zip
unzip master.zip 
cd edid-generator-master

Двоичный файл находится в ~ / edid-generator-master как modeline2edid

Запустите modeline2edidваш модлайн, используя пример из ссылки на askfedora,

./modeline2edid - <<< 'Modeline "3840x2160" 533.6 3840 3982 4027 4064 2160 2170 2180 2190 +hsync +vsync'
Searching for runaway unicorns in '/dev/stdin'
-- Found naughty unicorn: Modeline "3840x2160" 533.6 3840 3982 4027 4064 2160 2170 2180 2190 +hsync +vsync
Wrote 3840x2160.S

Измените эту команду в соответствии с желаемым разрешением.

Смотрите Как установить собственное разрешение? для деталей (при необходимости)

Затем сгенерируйте двоичный файл edid с помощью make

make #output not posted

Теперь у вас будет новый .bin, 3840x2160.binв этом случае.

Теперь из The Arch wiki включите ваше собственное разрешение

sudo mkdir /usr/lib/firmware/edid
sudo cp 3840x2160.bin /usr/lib/firmware/edid

Измените 3840x2160.binваше собственное разрешение.

Примечание: уже есть несколько пользовательских .bin включенных, вы можете увидеть их с ls *.binя не уверен, можете ли вы использовать их без make или нет.

Тест при перезагрузке

При перезагрузке редактируем строку ядра в grub, добавляя

drm_kms_helper.edid_firmware=edid/3840x2160.bin

См. Как добавить параметр загрузки ядра? и https://wiki.ubuntu.com/Kernel/KernelBootParameters

Перейдите к строке, начинающейся с, linuxи добавьте drm_kms_helper.edid_firmware=edid/3840x2160.binв конце строки послеro quiet splash

Предполагая, что все работает, сделайте его постоянным

sudo nano /etc/default/grub

Добавьте в пользовательский Resolutoin

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash drm_kms_helper.edid_firmware=edid/3840x2160.bin"

Сохраните ваши изменения Ctrl+x

обновить grub

sudo update-grub

Перезагрузитесь и наслаждайтесь вашим собственным разрешением

пантера
источник
1
При возникновении некоторых проблем с выходными данными при добавлении .binчетко укажите выходные данные, для которых необходимо добавить настраиваемое разрешение. Пример: drm_kms_helper.edid_firmware=VGA-1:edid/your_edid.bin источник
apex39
@ apex39 в Уэйленде нет такой вещи, как VGA-1(или HDMI, DVI, DP и т. д.) видеовыход - все, что я вижу, это XWAYLAND0/ XWAYLAND1/ и т. д. видеовыходы ...
Флориан Кастеллан
На моей установке Fedora я видел VGA-1видео выход. Однако замена его на XWAYLAND0/ XWAYLAND1/ etc должна сделать ту же работу
apex39
1
В моем случае не сработало. Я тестировал как вариант ядра. Сначала создал 1280x1024_60.00.bin и добавил к параметрам ядра, также попробовал с VGA-1: как сказал @ apex39. Но без изменений в разрешении. Теперь у меня Ubuntu 18.04.
Мухаммед Этемаддар
это чистое безумие, что нельзя просто установить разрешение экрана: O
törzsmókus