Проблема с FrameBuffer. [Решено]

Подскажите пожалуйста, как правильно настроить разрешение в консоли.
На данный момент использую следующие параметры запуска ядра:
"... vga=0x31B video=vesafb:mtrr:3,ywrap"
0x31B отвечает за разрешение 1280x1024,
При этом разрешение при загрузке linux изменяется следующим образом:
1. Grub - стандартное, если не ошибаюсь 640х480,
2. Идет загрузка системы - 1280x1024,
3. В момент когда идет загрузка модулей (собирал genkernel'ом) разрешение меняется на 1024x768, и таким остается до перезагрузки.
Опытным путем установил что при отключенном параметре Device Drivers -> Graphics support -> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) -> Enable modesetting on intel by default (CONFIG_DRM_I915_KMS)
Разрешение в последний раз не изменяется, но вывод очень тормозит - при emerge --sync, видно как идет построчная перерисовка кадра, при этом нагрузка на ЦП возрастает. Также не стартует Xorg - X -configure завершается с ошибкой - No sreens found.
Видео Intel:
00:02.0 VGA compatible controller: Intel Corporation 82865G Integrated Graphics Controller (rev 02)
По хендбуку, с uvesafb разрешение не изменяется вообще, он то ли не работает, то ли выключен.
С intelfb тоже самое что и с vesafb - если kms включен, происходит переключение на меньшее разрешение.

.

При использовании KMS я лично ничего из vga=0x31B video=vesafb:mtrr:3,ywrap в
строке ядерных параметров не пишу, ибо ведро само выбирает наиболее "удобоваримое" для видеоподсистемы разрешение.
У меня в строке груба :

kernel /boot/kernel-pf-sources-x86_64-3.0.7-pf_radeon dolvm rootfstype=ext4 pcie_aspm=force consoleblank=3600 fbcon=scrollback:1024k ...

При загрузке ядро безупречно определяет разрешение монитора; не стану умствовать/гадать на кофейной гуще, ибо не знаю, но возможно, в этом помогает подключение "моник_через_DVI".

Суть не в этом, у вас

Суть не в этом, у вас поддержка frambuffer`а собрана с KMS, kernel mode sttings и вы используете открытые драйверы, на этапе инициализации фрэймбуфера благодаря поддержки KMS определяются параметры работы монитора через интерфейс EDID, работает как с D-SUB (VGA) так и DVI.

Но в случае использования KVM switches могут быть проблемы.

в сучае KMS разрешение

в сучае KMS разрешение передается просто

video=1024x768

Так вот в том то и дело что

Так вот в том то и дело что ядро игнорирует этот параметр, и оставляет стандартные 80 на 25 строк.

NFS_Daemon написал(а): Так

NFS_Daemon написал(а):
Так вот в том то и дело что ядро игнорирует этот параметр, и оставляет стандартные 80 на 25 строк.

Убрать из ядра все фреймбуферы (vesafb, intelfb и пр.), включить KMS. Убрать из комстрочки ядра vga= и прописать video=1027x768. Если не поможет, показать dmesg

Спасибо, помогло, но тепер

Спасибо, помогло, но тепер другой баг - справа появилась черная полоска (шириной приблизительно в 1,5 см, на мониторе в 19"), автоподстройка монитора ее не убирает, если не ошибаюсь можно указать параметр видео как video=1280x1024-32@60?
Попробую сейчас так сделать.

UPD: не помогло, полоска осталась. Такое впечатление что справа есть вертикальная черта толщиной в пару пикселей, но ее отделяет от рабочей области консоли темная, вертикальная полоса.
В добавок еще верхняя строка наполовину обрезана (не видно верхних частей символов). автоподстройка монитора ничего не изменяет.

вот dmesg - link

странный дмесг какой-то (У

странный дмесг какой-то (
У меня вот так (правда на радеоне. На интеле нет пока возможности посмотреть)
http://paste.pocoo.org/show/509609/
Еще попрошу версию и конфиг ядра
UPD. Хотя, сейчас посмотрел на интеле - то же самое. За исключением того, что ошибок у меня нет.

#uname -a Linux server

#uname -a
Linux server 3.0.6-gentoo #4 SMP Thu Nov 17 12:23:21 GMT-2 2011 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz GenuineIntel GNU/Linux
# cat /proc/cmdline 
root=/dev/ram0 real_root=/dev/sda3 video=1280x1024

конфиг вот - link

но! В консоли полоски уже не наблюдаю, То есть в консоли разрешение то что мне нужно.
Из того что делал могу припомнить только загрузку со старым ядром, без kvm-switch'a (и без указания разрешения), затем загрузка с нынешним ядром с указаными выше параметрами и конфигом. Немного непонимаю что мог сделать что привело к такому результату.

Зачем в случае с KMS

Зачем в случае с KMS передавать разрешение, он для того и придуман, что бы выставлялось оптимальное рабочее разрешение монитора, т.е. максимальное, которое и является самым оптимальным, т.к. матрицы современных TFT LCD мониторов расчитываются на одно разрешение в расчёте одно зерно - один пиксель, если разрешение выставляется меньшее то тут уже происходит перерасчёт и получается где то боьлше зёрен на один пиксель и изображение уже получается не таким качественным.

То есть парамерт VGA=0x??? и

То есть параметр VGA=0x??? и video=????x???? можно убирать из параметров ядра?

При KMS да, если нормально

При KMS да, если нормально получаются данные по EDID от монитора.

Цитата: Зачем в случае с KMS

Цитата:
Зачем в случае с KMS передавать разрешение, он для того и придуман, что бы выставлялось оптимальное рабочее разрешение монитора

Бывает, что не всегда определяет правильно. И дело не только в EDID. В качестве примера: у меня дома к компу подключен телевизор через S-video. Соответственно ядро ставит разрешение 1024х768. А на мониторе 1280х1024. Приходится руками указывать...

У S-VIDEO есть интерфейс EDID

У S-VIDEO есть интерфейс EDID ?
Для того, что бы нормально определялось автоматически нужен EDID адаптер http://www.hdtvsupply.com/edidadapters.html

И не надо здесь кричать что зачем покупать, а проще руками указать.

Я только сказал, что при правильном подключении монитора, напрямую без KVM swtich`а по интерфейсу D-SUB (VGA) или DVI через интерфейс EDID будут считываться параметры работы монитора. Только в этом случае. Для этого KMS и был придуман.
Прочтите сначала все мои сообщения, или хотя бы это: http://www.gentoo.ru/node/24194#comment-179613

Где вы прочитали про s-video ??? Ответьте пожалуйста.

Цитата: У S-VIDEO есть

Цитата:
У S-VIDEO есть интерфейс EDID ?

Нет.

Цитата:
Для того, что бы нормально определялось автоматически нужен EDID адаптер

Мне не нужен. У меня все работает прекрасно.

Цитата:
И не надо здесь кричать что зачем покупать, а проще руками указать.

Никто тут не кричит вроде...

Цитата:
Где вы прочитали про s-video ??? Ответьте пожалуйста.

Я привел пример того, что иногда, в некоторых ситуациях, как в моем примере, или же

Цитата:
в случае использования KVM switches

может возникнуть необходимость в выставлении разрешения вручную. В этом случае поможет параметр video в комстрочке ядра. Это все, что я хотел сказать.

Ну ё-моё, ну я же русским

Ну ё-моё, ну я же русским языком говорю: что я описал только два конкретных способа подключения D-SUB и DVI, EDID передаётся только по этим интерфейсам и только для них реализован KMS как следствие. Я вам и написал что не надо кричать по поводу того что в некоторых случаях оно не работает, когда оно и не должно работать и я описал почему. И я указал KVM свич и про s-video тоже ясно написал.

Будете дальше кричать?

Прошу прошения. Где ты видишь

Прошу прошения. Где ты видишь эмоциональность в моих постах?

Цитата:
я описал только два конкретных способа подключения D-SUB и DVI, EDID передаётся только по этим интерфейсам и только для них реализован KMS как следствие

Ну а где я сказал что-нибудь, что противоречит этому?

Моё сообщение, на которое вы

Моё сообщение, на которое вы дали комментарий:
"Зачем в случае с KMS передавать разрешение, он для того и придуман, что бы выставлялось оптимальное рабочее разрешение монитора, т.е. максимальное, которое и является самым оптимальным, т.к. матрицы современных TFT LCD мониторов расчитываются на одно разрешение в расчёте одно зерно - один пиксель, если разрешение выставляется меньшее то тут уже происходит перерасчёт и получается где то боьлше зёрен на один пиксель и изображение уже получается не таким качественным."

Вы вобрали часть этого сообщения в качестве цитаты:
"Зачем в случае с KMS передавать разрешение, он для того и придуман, что бы выставлялось оптимальное рабочее разрешение монитора"

И ответили на него:
"Бывает, что не всегда определяет правильно. И дело не только в EDID. В качестве примера: у меня дома к компу подключен телевизор через S-video. Соответственно ядро ставит разрешение 1024х768. А на мониторе 1280х1024. Приходится руками указывать..."

Но я вам ещё раз говорю я говорил о случае, когда можно использовать KMS, это только два случая: подключение D-SUB или DVI без дополнительных посредников (KVM switch).

А вы мне опять про s-video, при котором нельзя использовать KMS.

И в этом случае нужно указывать параметр vga= или video=, но при чём здесь это. Вы описываете ситуацию, к которой не применимы условия описанной мной ситуации, а именно задействование KMS. Поэтому я вам еще раз говорю к чему ваше сообщение здесь.

Если хотите потроллить то ступайте на Windows F.A.Q..

[qoute]А вы мне опять про

Цитата:
А вы мне опять про s-video, при котором нельзя использовать KMS.

А мужики то не знают! ©

Цитата:
Если хотите потроллить то ступайте на Windows F.A.Q..

Ты что обкуренный?
велкам ту

Тут на твои посты я отвечать больше не собираюсь...

Мдя, ну подключите монитор

Мдя, ну подключите монитор через s-video и пусть для него определится его максимально разрешение.

Гражданин kostik87,

Гражданин kostik87, заканчивайте нести бред.
Во-первых, eegorov общается корректно и спокойно, чего нельзя сказать о некоторых.
Во-вторых, параметр `video=...` упоминается в документации по KMS (например), так что хватит разводить демагогию.

Текстовый редактор vi имеет два режима работы: в первом он пищит, а во втором — всё портит.

Ну во-первых, я не считаю это

Ну во-первых, я не считаю это бредом, так что говорить о корректности высказываний можно кому угодно, но только не вам.
По поводу высказываний eegorov, я ни чего не говорил о их корректности и не отрицаю их правильность, но они не применимы к описанному мной случаю.
EDID по s-video передаётся? Я считаю что нет, возможно я ошибаюсь, но вряд ли.
Я не против использования параметра video, но зачем ?
Демагогию я не развожу, а высказываю своё мнение, опровергнуть которое для меня можно только ссылкой на компетентный источник указывающий обратное или на не точность в нём.

Еще раз. В последний. KMS -

Еще раз. В последний. KMS - это просто фреймбуфер, работающий в пространстве ядра (в отличие от того же vesafb или intelfb, которые работают в пространстве пользователя). Одной из возможностей его является автоматическое определение разрешения монитора по EDID. Если автоматическое определение не работает, можно указать разрешение вручную. Или ты считаешь, что если EDID недоступен, то KMS использовать нельзя? В таком случае, это лично твое заблуждение. Теперь точно все.

.

kostik87 написал(а):
я описал только два конкретных способа подключения D-SUB и DVI, EDID передаётся только по этим интерфейсам и только для них реализован KMS

Неправда ваша (HDMI, DisplayPort)

Цитата:
EDID по s-video передаётся?

Нет

Цитата:
Я не против использования параметра video, но зачем ?

Любое без исключения автоопределение чего бы там ни было при некотором стечении обстоятельств (и хард- и софт- верных) может выдать ошибочный результат. Если же вы знаете параметры вашего дисплея, то указание их вручную (в данном случае - посредством параметра video) позволяет избежать ошибки, пусть даже маловероятной...

Мы тоже не всего читали Шнитке!.. © В. Вишневский

Ну значит я всё равно ошибся

Ну значит я всё равно ошибся не сильно ибо я изначально egorov указывал на то, что s-video не поддерживает edid и как следствие KMS. Ибо основные разногласия у нас с egorov в том, что он привёл в пример s-video, в то время как этот пример не корректен, по описанным мной выше причинам.

С не правильным определением через KMS при выполнении указанных мной условий я не встречался, прямое подключение монитора (без KVM switch). И ещё раз я не против того, что бы указывать video или vga, но это только целесообразно только при не задействованном kms или использовании закрытого драйвера, во всех остальных случаях указывать разрешение вручную не нужно, должен отработать kms, иначе зачем его вообще включать в ядре.

kostik87

kostik87 написал(а):
целесообразно только при не задействованном kms или использовании закрытого драйвера

Курите матчасть: закрытые драйверы не работают с KMS в принципе, так что никакого «или».

Цитата:
во всех остальных случаях указывать разрешение вручную не нужно, должен отработать kms, иначе зачем его вообще включать в ядре.

За тем, чтобы был KMS. Название «Kernel ModeSetting» не подразумевает угадывание одного разрешения монитора. Но, к счастью, чаще всего он на это способен.

Текстовый редактор vi имеет два режима работы: в первом он пищит, а во втором — всё портит.

Не выдёргивайте слова из

Не выдёргивайте слова из предложения, если вы ещё раз прочитайте целиком предложение:
"И ещё раз я не против того, что бы указывать video или vga, но это только целесообразно только при не задействованном kms или использовании закрытого драйвера, во всех остальных случаях указывать разрешение вручную не нужно, должен отработать kms, иначе зачем его вообще включать в ядре."
То вам станет ясно, что я имел ввиду. А именно: опции нужно использовать только в случае не задействования kms (выключен в ядре) или в случае использования закрытого драйвера, т.к. kms в этом случае не используется.

С чего вы решили, что я не знаю о том, что kms используется только с открытыми драйверами ? Где я это написал дословно, покажите.
Если в не умеете читать предложения и понимать смысл того, что написано, то не стоит писать в ответ облачающие в незнании человека высказывания.

Поучитесь формальной логике и

Поучитесь формальной логике и умению выражать мысли. «Если число отрицательно или меньше двух».

Цитата:
А именно: опции нужно использовать только в случае не задействования kms (выключен в ядре) или в случае использования закрытого драйвера, т.к. kms в этом случае не используется.

Сколько раз и сколько людей должны повторять Вам, гражданин, что это ситуация из идеального мира с идеально работающим и стопроцентно определяющим разрешение KMS? Если бы эта опция вообще не нужна была для KMS, модули ядра должны бы вообще игнорировать её, как полагаете, а?

Текстовый редактор vi имеет два режима работы: в первом он пищит, а во втором — всё портит.

krigstask

krigstask написал(а):
Поучитесь формальной логике и умению выражать мысли. «Если число отрицательно или меньше двух».

Научитесь читать и понимать, что написано, а не искать то чего нет.

Используйте как хотите, у меня, на всех ПК, где я использовал открытые драйверы с KMS у меня корректно определялось разрешение экрана, без всяких дополнительных опций, передаваемых ядру. Я использую эти опции только в некоторых случаях, которые я выше описал, в общем случае они не нужны.

Но думаю что вы, что я останемся при своём мнении, которое зависит от личного опыта, просто вам больше попадалось "глючной" техники, где не отрабатывал качественно KMS, мне же повезло.

И ещё раз повторюсь я ответил изначально пользователю egorov, если вы проследите все мои ответы, только из-за того, что он привёл не корректный пример про s-video и kms., а не потому, что хочет использовать указанные опции, в его примере их использование целесообразно.

kostik87

kostik87 написал(а):
krigstask написал(а):
Поучитесь формальной логике и умению выражать мысли. «Если число отрицательно или меньше двух».

Научитесь читать и понимать, что написано, а не искать то чего нет.

Искал логику и здравый смысл. Больше не буду.

Цитата:
Используйте как хотите, у меня, на всех ПК, где я использовал открытые драйверы с KMS у меня корректно определялось разрешение экрана, без всяких дополнительных опций, передаваемых ядру.

У меня тоже. И?

Цитата:
Я использую эти опции только в некоторых случаях, которые я выше описал, в общем случае они не нужны.

Обычно — действительно не нужны, но в случае проблем с выставлением разрешения сто́ит попробовать `video=`.

Цитата:
И ещё раз повторюсь я ответил изначально пользователю egorov, если вы проследите все мои ответы, только из-за того, что он привёл не корректный пример про s-video и kms., а не потому, что хочет использовать указанные опции, в его примере их использование целесообразно.

Он привёл корректный пример, когда KMS не мог определить разрешение. Почему — дело десятое, но передача параметра ядру помогла. Вот так это выглядит с третьей стороны. И со стороны меня, как модератора форума (это намёк).

Текстовый редактор vi имеет два режима работы: в первом он пищит, а во втором — всё портит.

Пример не корректен, потому,

Пример не корректен, потому, что у S-VIDEO нет edid и как KMS по вашему выставит разрешение.
Насчёт логики и здравого смысла делайте как хотите, но научиться общаться нормально всё же лучше. Считайте как хотите я не буду ни чего доказывать

kostik87 написал(а): Пример

kostik87 написал(а):
Пример не корректен, потому, что у S-VIDEO нет edid и как KMS по вашему выставит разрешение.

Никак, для подобных случаев и нужен параметр `video=`. Сколько мне это придётся ещё повторять?

Цитата:
Насчёт логики и здравого смысла делайте как хотите, но научиться общаться нормально всё же лучше

Я не против, а очень даже за, приступайте.

Текстовый редактор vi имеет два режима работы: в первом он пищит, а во втором — всё портит.

KVM Switch... Не счел

KVM Switch... Не счел важным.. Действительно использую... Сейчас попробую без него.

UPD: Забавно-забавно, без kvm switch'a переключение во время поиска модулей тоже происходит (видно что экран гаснет на мгновение), но разрешение остается 1280 на 1024 (то ли цветность меняет, то ли частоту).

Теперь только косметичесский вопрос: а можно это как-то жестко указать чтобы и с kvm switch работало?
Это не так принципиально - комп перезагружаю редко, так что могу свитч и отключать.. Но если можно то почему не использовать?

либо используйте параметр

либо используйте параметр vga=0xXXX и указывайте видеорежим, а KMS выключите, но параметр vga будет работать в случае с grub-legacy, lilo или syslinux / extlinux, grub-2 при использовании этого праметра говорит что он устарел и убирает из апарметров передаваемых ядру.

Либо вкмопильте монолитно в ядро модуль вашей видеокарты и KMS, тогда при старте ядра будет выставляться правильное разрешение сразу, а не после загрузки модуля.

Насчёт KVM switch`а, скорее всего с ним не получится, если только в нём нет возможности выставлять как-либо параметры EDID, что бы KMS их получал.

По поводу первого пункта,

По поводу первого пункта, буду выяснять почему video моим ядром игнорируется, чувствую будет много опыта с виртуалками, т.к. часто перезагружать комп не могу.
По второму, в graphics support все опции касающиеся intel собраны в ядре, монолитно, надо с genkernel-а уходить, а то входит не владею ситуацией.
По третьему, да тупой, примитивный свитч, никакой настройки. Может когда со вторым пунктом разберусь потребность в третьем отпадет..
Всем спасибо!

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".