Разрешение в консоли

Не могу настроить разрешение в консоли. Опция frame buffer в ядре включена. В ядре задал 1280x1024@60. В GRUB'e пишу video=vesafb:mtrr:3,ywrap,1280x1024-32@60. Но выдает разрешение 800х600. На fbset -s выдает, что возможно только разрешение 800х600. В чем может быть дело?

поменяй

поменяй видеодровину на vesafb-tng

vesafb-tng

Я vesafb-tng ставил.

Кто их знает

Возможности монитора например неправильно определяет. Собирай без vesa-tng (с vesa, vesa-tng -- это фича gentoo-sources). Судя по XEN, vesa драйвера вообще зло (ибо требуют x86-эмуляции, которая в XEN не реализована). Приходится поэтому переходить к использованию radeon-драйвера (или nvidia)

Мне vesa-tng не нравится тем, что позволяет кому ни попадя менять разрещение -- имеем шелкание монитора при переходе от консоли к иксам и обратно (с просто vesa такого нет).

PS: кто нибудь знает, как запретить fb-драйверам реагировать на запрос изменения параметров экрана? А то c vesa-драйвером mplayer показывает нормально (на fbcon), а с radeon (как драйвер fbcon) -- очень блекло (нет яркости)

PPS: слишком много параметров для vesa-tng задаешь. Попробуй без глубины цвета и частоты развертки для начала

PPPS: fbset -s использует инфу из /etc/fb.modes Обычно этот файл не существует и его надо самому создавать (из вывода "fbset -i" при разных режимах загрузки)

Попробую.

Спасибо. Буду пробовать.

:-(

Попробовал собрать без vesa-tng, т.е. с vesa. Ядру задал "vga=0x317 video=vesafb:mttr:3,ywrap". При загрузке выдает "You passed an undefine mode number. Press Enter to see video mode available...".
Если задать "video=vesafb:mttr:3,ywrap,1024x768-16@60", выдает вообще, разрешение 640х480. Что такое?

Просто vesa video= не понимает

Ему хватает vga=. video= задавать не надо. Остальные -- все наоборот.

Не понял, что

Не понял, что значит "Остальные -- все наоборот.".
P.S. Хоть как, если указать параметр "vga=0x317", вылезает "You passed an undefine mode number. Press Enter to see video mode available...". :-(

Хмм... Задал

Хмм... Задал параметр vga=317. Черный экран, но явно система грузится, просто ничего не отображается. Что бы это могло значить?

Значит правильно кофигурить надо

драйвер vesa, надеюсь звездочкой (постоянно, не иодулем) собран?
А все остальные драйвера пока выкинь (не включай, ни модулем, ни постоянно)

Re: :-(

oleg153 написал(а):
Попробовал собрать без vesa-tng, т.е. с vesa. Ядру задал "vga=0x317 video=vesafb:mttr:3,ywrap". При загрузке выдает "You passed an undefine mode number. Press Enter to see video mode available...".
Если задать "video=vesafb:mttr:3,ywrap,1024x768-16@60", выдает вообще, разрешение 640х480. Что такое?

Что за 0x317? Тут скорей должно быть 0x31A.

| 640x480 800x600 1024x768 1280x1024
----+-------------------------------------
256 | 0x301 0x303 0x305 0x307
32k | 0x310 0x313 0x316 0x319
64k | 0x311 0x314 0x317 0x31A
16M | 0x312 0x315 0x318 0x31B

Да я и 0x31A

Да я и 0x31A пробовал. Бесполезно.

Re: Да я и 0x31A

oleg153 написал(а):
Да я и 0x31A пробовал. Бесполезно.

В ядре всё так?

Console Drivers ->
[*] VGA text console
[*] Video mode selection support
Console Drivers -> Frame-buffer support ->
[*] Support for frame buffer devices
[*] VESA VGA graphics console

Попробуй с такими аргументом ягра:
video=vesa:1280x1024@60,ywrap,mtrr vga=0x31A
или
video=vesafb:1280x1024-16@75 vga=0x31A

В ядре все так.

В ядре все так. Пробовал и video=vesa:1280x1024@60,ywrap,mtrr vga=0x31A и video=vesafb:1280x1024-16@75 vga=0x31A, не пашет. Вылезает все то "You passed an undefine mode number. Press Enter to see video mode available..."

а фрамбуффер

а фрамбуффер включен в ведре?

Для драйвера vesa задавать video= нельзя

Что тут непонятно? В парметрах командной строки должна быть только строчка vga=791 (работает везде). И никаких video= Если не работает, выключаешь все остальные драйера и пересобираешь

PS: кстати, собирать тоже надо уметь. Как именно собираешь?
А то получишь кашу из старой конфигурации и новой

Да вот у меня

Да вот у меня тоже прописано в grub.conf
kernel /boot/kernel-genkernel-x86-2.6.17-gentoo-r8 vga=791 root=/dev/hda3 init=/linuxrc real_root=/dev/hda3

и все работает :)
_______________
Бороться, Искать. Найти и НЕЗДАВАТЬСЯ!

Пересобрал

Пересобрал ядро. Не помогает. Пересобираю следующим образом :
make mrproper
make menuconfig
make bzImage
make modules
make modules_install
ср bzImage /boot/kernel-new
В ядре указываю :
Device Drivers >
Graphics support: >
[*] Support for frame buffer devices
<*>VESA VGA graphics support
VESA driver type (vesafb) --->
Console display driver support --->
[*] Video mode selection support
<*> Framebuffer Console support
[*] Support for the framebuffer splash
Для загрузки
kernel /boot/kernel-new root=/dev/hdb3 vga=791
Не пашет, выдает You passed an undefine mode number.

Интересная какашка

А остальные драйвера отключены? Как насчет VGA-драйвера? Такое впечатление, что он подключается... А что за карточка? Она в Windows нормально работает?

Отключено : VGA

Отключено :
VGA 16-color graphics support
Hercules mono graphics support
nVidia Riva support
Matrox acceleration
ATI Radeon display support
ATI Radeon display support
ATI Rage128 display support
ATI Mach64 display support
SIS acceleration
NeoMagic display support
IMG Kyro support
3Dfx Banshee/Voodoo3 display support
3Dfx Voodoo Graphics (sst1) support
Trident support
Карточка встроенная в мат. плату - NVIDIA GeForce4 Integrated GPU. В винде работает нормально.

А ядро какой версии?

У меня Video-mode selection support с прочеркиванием (типа без него никак нельзя). А тут звездочка

А стандартные ядра (от LiveCD) пробовал? Они как себя ведут?

http://ru.gentoo-wiki.com/HOWTO_fbsplash

нашел тут статейку не плохую. почитай. На форумах делали по ней говорили что все получилось.

_________________
Бороться, Искать. Найти и НЕЗДАВАТЬСЯ!

Да товарищ вроде все это перепробовал

Так как насчет версии ядра и загрузки ядра от Gentoo LiveCD ?

Нет. Не

Нет. Не работает с ядром с LiveCD 2006.1. Даже уже при загрузке, если выбрать ядро gentoo (не gentoo-nofb), выдает "You passed an undefine mode number.". В чем дело не пойму? ;-(

А конкретно как мат плата зовется?

Впервые слышу о плате со встроенной видюхой без vesa-BIOS... Или что можно как-то его включить-отключить настройками. Наверняка такая же проблема и у других встречалась...

PS: Тогда для начала собирай с драйвером NVIDIA (звездочка), и указывай вместо VGA= video=nvidiafb:1024x768-16@85 (для начала).

А можно только vesa-драйвер выкинуть, а все остальные включить. У меня при такой комбинации можно ничего не указывать, драйвер все равно включается (radeonfb), правда в режиме 256-indexed color (для FB говорят надр специальный image делать в этом случае)

Мат. плата - Epox

Мат. плата - Epox 8RGM2I. C драйвером NVIDIA собирать не пробовал.
P.S. А что обозначает "VBE 3.0"?

Если бы была VBE 3.0, то vesa-драйвер бы работал

А что там про VBE 3.0 говорится? Что поддерживается платой? Или нужна перепрошивка BIOS?

Да VBE 3.0 платой

Да VBE 3.0 платой поддерживается. Только не поддерживаются разрешения выше 800х600 (Пробовал выяснить с помощью vbeprobe в grub'е и vbetest из пакета lrmi). Результат одинаковый поддерживаемые разрешения только 320х240, 640х480 и 800х600. Поэтому vga=0x317(0х31В) не работает, а vga=0х314(т.е разрешение 800х600х64k) прекрасно работает.

Все получилось!

Все получилось! Отключил vesa, поставил nVidia Riva. Указал video=rivafb:mtrr,ywrap,1280x1024-16@60. Пашет. Спасибо за помощь.
З.Ы. А могут ли быть потом проблемы в иксах?

Наверно могут быть

Почитал описание платы... Контроллер с неторыми винчестерами не дружит, BIOS надо обновлять (зачем то), еще что-то про проблемы с Linux. Самое интересное, про отсутствие VBE ничего не нашел

Спасибо за

Спасибо за статейку, но я тоже по ней делал.

У меня аналогичная проблема

Что бы я ни указал в параметрах ядра... оно ставит 1280х1024 - а это очень мелко для меня...

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

P.S.у меня подозрение, что ядро запрашивает данные прямо с монитора, но игнорирует заданные мной параметры...

это уже другая проблема

Наверно.... Со стандарными ядрами (от LiveCD 2006.x) пробовал?

PS: так бывает, когда указываешь неправильные видео-параметры для ядра. Драйвер все равно включается и делает разрешение по максимуму (а при хорошем мониторе мелко получается)

пришлось повозиться

в общем дело было такое: ядро игнорировало параметры типа video=vesafb: и т.д. автоматом ставилось 1280x1024@85 - это было очень мелко и я от нечего делать поставил 20-й шрифт.
Чтение dmesg выдало следующее:

мой dmesg написал(а):
.......................
nvidiafb: Device ID: 10de0202
nvidiafb: EDID found from BUS1
nvidiafb: Using CRT on CRTC 0
nvidiafb: MTRR set to ON
Console: switching to colour frame buffer device 100x37
nvidiafb: PCI nVidia NV20 framebuffer (64MB @ 0xF8000000)
vesafb: Leadtek Research Inc., NV20 Board, Chip Rev A3 (OEM: WinFast VGA BIOS.)
vesafb: VBE version: 3.0
vesafb: protected mode interface info at c000:be80
vesafb: pmi: set display start = c00cbec5, set palette = c00cbf4a
vesafb: pmi: ports = 3b4 3b5 3ba 3c0 3c1 3c4 3c5 3c6 3c7 3c8 3c9 3cc 3ce 3cf 3d0 3d1 3d2 3d3 3d4 3d5 3da
vesafb: VBIOS/hardware supports DDC2 transfers
vesafb: no monitor limits have been set
vesafb: scrolling: redraw
vesafb: cannot reserve video memory at 0xf8000000
vesafb: framebuffer at 0xf8000000, mapped to 0xfd980000, using 7500k, total 65536k
fb1: VESA VGA frame buffer device
......................

видно, что режим консоли ставится не в vesafb, а в nvidiafb.
Поставил параметр - video=nvidiafb:.. и т.д. - все заработало - нормально ставится нужное разрешение, вот только частота не ставится выше 85 герц. В встроенном в mc редакторе и вьювере на разрешениях ниже 1280х1024 почему-то вылезли странные подчеркивающие линии на концах строк...
убрал из ядра nvidiafb. - стала работать vesafb - тут уж все параметры ставятся и все работает без глюков, но, к моему разочарованию, консоль стала подтормаживать. :(
В общем оставил я nvidiafb с 1280х1024@85 и с 20-м шрифтом и живу себе потихоньку.

Для vesafb

Для vesafb задается так:
vga=0x317 video=vesafb:mttr:3,ywrap

vga=<разрешение и глубина цвета>, описание есть в хендбуке.

Re: Для vesafb

TheMixa написал(а):
Для vesafb задается так:
vga=0x317 video=vesafb:mttr:3,ywrap

vga=<разрешение и глубина цвета>, описание есть в хендбуке.

Я так поня что все это в настройках граба писать?
А что если у меня вообще ничего не будет показывать? или такая ситуация исключена? Не хотелось бы потом сидеть с черным экраном. Что делать тогда?

Вариантов куча

grub позволяет редактировать строку перед выполнением. Можно создать дубль описания загрузки и править ее

Да, это

Да, это параметры которые надо передать ядру. Чегото боятся не стоит, тк всегда в Грубе можно нажать e и отредактировать.

А по поводу черного экрана - я с этим сталкивался с vesa-tng на многих старых видюхах и один раз с vesa на radeon 7000 agp(никак не решалось, помогла замена карточки)

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

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