View previous topic :: View next topic |
Author |
Message |
alyent n00b
Joined: 20 Nov 2002 Posts: 38 Location: Vancouver BC, Canada
|
Posted: Sat Nov 08, 2003 12:29 am Post subject: NVidia framebuffer on linux-2.6 |
|
|
Поставил новое ядро - все круто, но вот фреймбуффер пропал... Кому-нибудь удалось запустить? Если да, то как? |
|
Back to top |
|
|
Rikz Tux's lil' helper
Joined: 06 Oct 2003 Posts: 103
|
Posted: Sat Nov 08, 2003 8:11 am Post subject: |
|
|
rivafb вообще-то не должен работать одновременно с nvidia дровами для X-ов. У меня в консоли vesafb а в иксах драйвера от nvidia, такая связка работает. Или драйвера для иксов тебя в принципе не волнуют? :/ |
|
Back to top |
|
|
Zoltan Guru
Joined: 27 Aug 2003 Posts: 394 Location: Moscow, Russia
|
Posted: Tue Nov 11, 2003 1:55 pm Post subject: |
|
|
Если я не ошибаюсь, под 2.6 ядром framebuffer пока что глючит безбожно (может, конечно, не для всех видео карт, но для многих), мне matroxfb на 2.6 заставить работать не удалось, на экране начинала твориться всякая фигня, и это еще до запуска иксов.
Насчет rivafb, помоему он всегда конфликтовал с иксами, я всегда для nvidia ставил vesafb на консоль, хотя он и тормозит. _________________ Light travels faster than sound. That's why some people appear bright before you hear them speak. |
|
Back to top |
|
|
Unik n00b
Joined: 24 Aug 2003 Posts: 36 Location: Moscow, Russia
|
Posted: Tue Nov 11, 2003 9:21 pm Post subject: |
|
|
а что такое можно сделать в rivafb, чего нельзя в vesafb? |
|
Back to top |
|
|
Rikz Tux's lil' helper
Joined: 06 Oct 2003 Posts: 103
|
Posted: Thu Nov 13, 2003 11:29 am Post subject: |
|
|
Unik wrote: | а что такое можно сделать в rivafb, чего нельзя в vesafb? |
На сколько я понимаю, в rivafb можно поставить нормальную частоту. |
|
Back to top |
|
|
ayaromenok n00b
Joined: 14 Nov 2003 Posts: 8
|
Posted: Fri Nov 14, 2003 12:38 am Post subject: |
|
|
мнда, у меня вообще экрана не видно с vesafb на nv34 Глючит, похоже. по страшному... |
|
Back to top |
|
|
Unik n00b
Joined: 24 Aug 2003 Posts: 36 Location: Moscow, Russia
|
Posted: Fri Nov 14, 2003 12:45 am Post subject: |
|
|
Rikz wrote: | Unik wrote: | а что такое можно сделать в rivafb, чего нельзя в vesafb? |
На сколько я понимаю, в rivafb можно поставить нормальную частоту. |
аааа, вот почему я разницы не ощущал - у меня ЛСД |
|
Back to top |
|
|
svyatogor Retired Dev
Joined: 13 Feb 2003 Posts: 186 Location: Kingdom of Kells
|
Posted: Fri Nov 14, 2003 11:58 am Post subject: |
|
|
Поставь framebuffer VESA и выруби vga 16. |
|
Back to top |
|
|
ayaromenok n00b
Joined: 14 Nov 2003 Posts: 8
|
Posted: Fri Nov 14, 2003 2:14 pm Post subject: |
|
|
>>Поставь framebuffer VESA и выруби vga 16.
я с этого начинал - не работает. может, из-за SMP системы .
ещё раз перепроверю |
|
Back to top |
|
|
Camp Tux's lil' helper
Joined: 31 May 2004 Posts: 82 Location: Moscow
|
Posted: Fri Aug 06, 2004 1:11 pm Post subject: |
|
|
пропатч ядро mm сурсами =)
например начинаю с 2.6.7-mm3 у меня все работает _________________ registered Linux user #357267
GENTOO |
|
Back to top |
|
|
mitya-ncc n00b
Joined: 23 Feb 2004 Posts: 39 Location: Russia
|
Posted: Fri Aug 06, 2004 11:15 pm Post subject: |
|
|
Rikz wrote: | Unik wrote: | а что такое можно сделать в rivafb, чего нельзя в vesafb? |
На сколько я понимаю, в rivafb можно поставить нормальную частоту. |
Как нельзя? Можно, если чуть постараться. |
|
Back to top |
|
|
ssvb Tux's lil' helper
Joined: 06 Nov 2003 Posts: 96
|
Posted: Sat Aug 14, 2004 8:21 am Post subject: |
|
|
mitya-ncc wrote: | Rikz wrote: | Unik wrote: | а что такое можно сделать в rivafb, чего нельзя в vesafb? |
На сколько я понимаю, в rivafb можно поставить нормальную частоту. |
Как нельзя? Можно, если чуть постараться. |
Это точно, например вот так (тайминги вбиты для моего 15-дюймового монитора, работаю в 800x600x100Hz):
Code: |
--- /usr/src/linux/arch/i386/boot/video.S.orig 2003-11-09 13:03:41.000000000 +0200
+++ /usr/src/linux/arch/i386/boot/video.S 2003-11-15 15:33:02.000000000 +0200
@@ -550,6 +550,7 @@
subb $VIDEO_FIRST_VESA>>8, %bh
orw $0x4000, %bx # Use linear frame buffer
+ call fix_vbe3_refresh # Fix refresh rate for VESA 3.0
movw $0x4f02, %ax # VESA BIOS mode set call
int $0x10
cmpw $0x004f, %ax # AL=4f if implemented
@@ -1932,3 +1933,80 @@
adapter: .byte 0 # Video adapter: 0=CGA/MDA/HGA,1=EGA,2=VGA
video_segment: .word 0xb800 # Video memory segment
force_size: .word 0 # Use this size instead of the one in BIOS vars
+
+/*
+ * Function that fixes refresh rate for 640x480. 800x600 and 1024x768
+ * video modes for VBE 3.0
+ */
+fix_vbe3_refresh:
+ cmpb $0x01, %bl
+ jz fix_vbe3_refresh_640x480
+ cmpb $0x11, %bl
+ jz fix_vbe3_refresh_640x480
+ cmpb $0x12, %bl
+ jz fix_vbe3_refresh_640x480
+ cmpb $0x03, %bl
+ jz fix_vbe3_refresh_800x600
+ cmpb $0x14, %bl
+ jz fix_vbe3_refresh_800x600
+ cmpb $0x15, %bl
+ jz fix_vbe3_refresh_800x600
+ cmpb $0x05, %bl
+ jz fix_vbe3_refresh_1024x768
+ cmpb $0x17, %bl
+ jz fix_vbe3_refresh_1024x768
+ cmpb $0x18, %bl
+ jz fix_vbe3_refresh_1024x768
+ ret
+fix_vbe3_refresh_640x480:
+ leaw CRTCInfoBlock_640x480_120Hz, %di
+ orw $0x800, %bx
+ ret
+fix_vbe3_refresh_800x600:
+ leaw CRTCInfoBlock_800x600_100Hz, %di
+ orw $0x800, %bx
+ ret
+fix_vbe3_refresh_1024x768:
+ leaw CRTCInfoBlock_1024x768_80Hz, %di
+ orw $0x800, %bx
+ ret
+
+/*
+ * Timings for setting refresh of VBE 3.0 video modes are generated
+ * using VBEHZ program from http://home.nexgo.de/g.s/vbehz.htm
+ */
+CRTCInfoBlock_640x480_120Hz: /* 65kHz monitor required */
+.word 816
+.word 648
+.word 672
+.word 512
+.word 481
+.word 484
+.byte 0
+.long 48956866
+.word 11718
+.space 40
+
+CRTCInfoBlock_800x600_100Hz: /* 70kHz monitor required */
+.word 1072
+.word 832
+.word 936
+.word 636
+.word 601
+.word 604
+.byte 0
+.long 69679142
+.word 10220
+.space 40
+
+CRTCInfoBlock_1024x768_80Hz: /* 70kHz monitor required */
+.word 1392
+.word 1096
+.word 1208
+.word 814
+.word 769
+.word 772
+.byte 0
+.long 90477076
+.word 7985
+.space 40
|
Есть и другие патчи, в которых частоту можно настраивать. Но этот IMHO проще всего в использовании (просто запускаешь patch -p0 < vesafb_refresh.patch из корня файловой системы и пересобираешь ядро) |
|
Back to top |
|
|
|