[Megoldva] Linux és a TV-k, mint monitor

A helyzet a következő: Van egy intel vga-s (igazából szerintem lényegtelen) alaplap, amire monitorként egy 32"-es Tv kerülne. Többször volt már hasonló projekt, a lap ugyanaz, de a TV-k mindig mások.

A probléma az, hogy a linux nem ismeri fel a TV-t, nem tudja detektálni a képességeit valamiért, így 640, 800 és 1024-es 4:3-as felbontások vannak össz-vissz.
A korábbi tévéknél valahogy mindig megoldottam, hogy átváltson nagyobb felbontásra. A legutóbbi modellnél a .kde/Autostart-ba rakott scripttel, ami xrandr-al hozzáadja a felbontást, majd beállítja a kimenetre minden loginnál. Azért lett így, mert a KDE monitor kezelője ezt sem, és ezután sem tudta kezelni, és az xorg-conf gyártás is kudarcot vallott, el se indult az X, vagy kifagyott indulásnál.
Ezzel a TV-vel viszont akárhogy probálom, nem megy.


xrandr --newmode "1360x768_60.00"   84.75  1360 1432 1568 1776  768 771 781 798 -hsync +vsync
xrandr --addmode default "1360x768_60.00"
xrandr -s 1360x768
xrandr --dpi 96

Az xrandr is hibát dob:


xrandr: Failed to get size of gamma for output default

Ha meg hozzáadom a gammákat, akkor ilyet ír:


X Error of failed request:  BadName (named color or font does not exist)
  Major opcode of failed request:  139 (RANDR)
  Minor opcode of failed request:  16 (RRCreateMode)
  Serial number of failed request:  18
  Current serial number in output stream:  18

Így nézne ki most a script:


#!/bin/bash

xrandr --output default --gamma 1:1:1 --newmode "1360x768_60.00"   84.75  1360 1432 1568 1776  768 771 781 798 -hsync +vsync
xrandr --output default --gamma 1:1:1 --addmode default "1360x768_60.00"
xrandr --output default --gamma 1:1:1 -s 1360x768
xrandr --output default --gamma 1:1:1 --dpi 96

Eddig Fedora 18-at telepítettem, most mivel nem ment, tettem fel próbaképp 19-et, hátha ez már jobban támogat valami hardvert, de a helyzet semmit sem változott.

Egyéb infó: ez, és a korábbi TV-k is, ha windózra dugom őket, azonnal látják mit tud a TV, minden gond nélkül be tudom állítani a felbontást. Ha erre a lapra egy rendes monitort teszek, az is működik pöccre rendesen. Ha a TV-t másik (saját laptopra) dugom, akkoe is az a helyzet, hogy 1024x768, és sehogy nem tudom fentebb venni. Ha erre a lapra windózt teszek, akkor ezzel is megy a TV rendsen.

Szóval a kérdés, hogy hogy lehetne rendesen működésre bírni a TV-t?

Hozzászólások

Az Intel VGA kártyádat melyik driver hajtja? Ha jól sejtem, akkor vesa és nem intel.

A xrandr értéket honnan szedted? Csak azért kérdezem, mert a múlt héten lőttem be a full hd-s monitoromat linux alatt és vagy 6 órát szívtam a megfelelő adatok kinyerésével. Opensuse 12.3 alatt quadro fx 370-es kártya szivatott, mert nem tudta kiolvasni rendesen a monitor adatait. A megoldás a monitor-edid lett. A kiolvasott értékeket a /etc/X11/xorg.conf.d/10-monitor.conf-ba szerkesztettem be és azóta ööm bodottá...

A monitor-edid egy parancssoros alkalmazás, rpm csomagként fenn van a neten. Kiolvassa a monitor (megjelenítő) eepromban, epromban tárolt konfigurációs adatait. A kimenetet simán copy-paste-eltem x alatt az xorg configjába. Egyedül ezzel sikerült rendes működésre bírni a monitort. Az rpmfind.net-en megtalálod a distrodnak megfelelőt.

Nálam a cvt nem működött, mert csak kalkulált adatokkal dolgozik. A monitor-edid mint írtam, kiolvassa a konkrét értékeket a monitorból.

Ok, megvan, kiírta, beraktam.
Ezzel nekem az a problémám, hogy ezáltal ugyanúgy nem indul el az X, mint eddig mindig amikor csináltam konfigot.


Section "ServerLayout"
        Identifier     "X.org Configured"
        Screen      0  "Screen0" 0 0
        Screen      1  "Screen1" RightOf "Screen0"
        Screen      2  "Screen2" RightOf "Screen1"
        Screen      3  "Screen3" RightOf "Screen2"
        Screen      4  "Screen4" RightOf "Screen3"
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
        ModulePath   "/usr/lib64/xorg/modules"
        FontPath     "catalogue:/etc/X11/fontpath.d"
        FontPath     "built-ins"
EndSection

Section "Module"
        Load  "glx"
EndSection

Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "kbd"
EndSection

Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "mouse"
        Option      "Protocol" "auto"
        Option      "Device" "/dev/input/mice"
        Option      "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
        Identifier   "Monitor0"
        VendorName   "Monitor Vendor"
        ModelName    "Monitor Model"
        HorizSync 31-75
        VertRefresh 50-76

        # Monitor preferred modeline (60.0 Hz vsync, 47.7 kHz hsync, ratio 16/9) (bad ratio)
        ModeLine "1360x768" 85.5 1360 1424 1536 1792 768 771 777 795 +hsync +vsync

        # Monitor supported modeline (60.0 Hz vsync, 47.4 kHz hsync, ratio 15/9) (bad ratio)
        ModeLine "1280x768" 68.25 1280 1328 1360 1440 768 771 778 790 -hsync +vsync
EndSection

Section "Monitor"
        Identifier   "Monitor1"
        VendorName   "Monitor Vendor"
        ModelName    "Monitor Model"
EndSection

Section "Monitor"
        Identifier   "Monitor2"
        VendorName   "Monitor Vendor"
        ModelName    "Monitor Model"
EndSection

Section "Monitor"
        Identifier   "Monitor3"
        VendorName   "Monitor Vendor"
        ModelName    "Monitor Model"
EndSection

Section "Monitor"
        Identifier   "Monitor4"
        VendorName   "Monitor Vendor"
        ModelName    "Monitor Model"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option     "NoAccel"                   # [<bool>]
        #Option     "AccelMethod"               # <str>
        #Option     "Backlight"                 # <str>
        #Option     "DRI"                       # <str>
        #Option     "ColorKey"                  # <i>
        #Option     "VideoKey"                  # <i>
        #Option     "Tiling"                    # [<bool>]
        #Option     "LinearFramebuffer"         # [<bool>]
        #Option     "SwapbuffersWait"           # [<bool>]
        #Option     "TripleBuffer"              # [<bool>]
        #Option     "XvPreferOverlay"           # [<bool>]
        #Option     "HotPlug"                   # [<bool>]
        #Option     "ReprobeOutputs"            # [<bool>]
        #Option     "XvMC"                      # [<bool>]
        #Option     "ZaphodHeads"               # <str>
        #Option     "TearFree"                  # [<bool>]
        #Option     "PerCrtcPixmaps"            # [<bool>]
        #Option     "FallbackDebug"             # [<bool>]
        #Option     "DebugFlushBatches"         # [<bool>]
        #Option     "DebugFlushCaches"          # [<bool>]
        #Option     "DebugWait"                 # [<bool>]
        #Option     "BufferCache"               # [<bool>]
        Identifier  "Card0"
        Driver      "intel"
        BusID       "PCI:0:2:0"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option     "NoAccel"                   # [<bool>]
        #Option     "AccelMethod"               # <str>
        #Option     "Backlight"                 # <str>
        #Option     "DRI"                       # <str>
        #Option     "ColorKey"                  # <i>
        #Option     "VideoKey"                  # <i>
        #Option     "Tiling"                    # [<bool>]
        #Option     "LinearFramebuffer"         # [<bool>]
        #Option     "SwapbuffersWait"           # [<bool>]
        #Option     "TripleBuffer"              # [<bool>]
        #Option     "XvPreferOverlay"           # [<bool>]
        #Option     "HotPlug"                   # [<bool>]
        #Option     "ReprobeOutputs"            # [<bool>]
        #Option     "XvMC"                      # [<bool>]
        #Option     "ZaphodHeads"               # <str>
        #Option     "TearFree"                  # [<bool>]
        #Option     "PerCrtcPixmaps"            # [<bool>]
        #Option     "FallbackDebug"             # [<bool>]
        #Option     "DebugFlushBatches"         # [<bool>]
        #Option     "DebugFlushCaches"          # [<bool>]
        #Option     "DebugWait"                 # [<bool>]
        #Option     "BufferCache"               # [<bool>]
        Identifier  "Card1"
        Driver      "intel"
        BusID       "PCI:0:2:1"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option     "SWcursor"                  # [<bool>]
        #Option     "kmsdev"                    # <str>
        #Option     "ShadowFB"                  # [<bool>]
        Identifier  "Card2"
        Driver      "modesetting"
        BusID       "PCI:0:2:0"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option     "ShadowFB"                  # [<bool>]
        #Option     "Rotate"                    # <str>
        #Option     "fbdev"                     # <str>
        #Option     "debug"                     # [<bool>]
        Identifier  "Card3"
        Driver      "fbdev"
        BusID       "PCI:0:2:0"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option     "ShadowFB"                  # [<bool>]
        #Option     "DefaultRefresh"            # [<bool>]
        #Option     "ModeSetClearScreen"        # [<bool>]
        Identifier  "Card4"
        Driver      "vesa"
        BusID       "PCI:0:2:0"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device     "Card0"
        Monitor    "Monitor0"
        SubSection "Display"
                Viewport   0 0
                Depth     1
                Modes "1360x768"
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     4
                Modes "1360x768"
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     8
                Modes "1360x768"
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     15
                Modes "1360x768"
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     16
                Modes "1360x768"
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24
                Modes "1360x768"
        EndSubSection
EndSection

Section "Screen"
        Identifier "Screen1"
        Device     "Card1"
        Monitor    "Monitor1"
        SubSection "Display"
                Viewport   0 0
                Depth     1
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     4
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     8
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     15
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     16
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24
        EndSubSection
EndSection

Section "Screen"
        Identifier "Screen2"
        Device     "Card2"
        Monitor    "Monitor2"
        SubSection "Display"
                Viewport   0 0
                Depth     1
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     4
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     8
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     15
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     16
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24
        EndSubSection
EndSection

Section "Screen"
        Identifier "Screen3"
        Device     "Card3"
        Monitor    "Monitor3"
        SubSection "Display"
                Viewport   0 0
                Depth     1
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     4
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     8
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     15
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     16
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24
        EndSubSection
EndSection

Section "Screen"
        Identifier "Screen4"
        Device     "Card4"
        Monitor    "Monitor4"
        SubSection "Display"
                Viewport   0 0
                Depth     1
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     4
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     8
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     15
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     16
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24
        EndSubSection
EndSection

--
The Community ENTerprise Operating System

Na most akkor nem világos, a sima, piszkálatlan "X -configure" által generált konfig mindenféle módosítás nélkül elindul-e.
Ha nem, akkor talán kellene egy Xorg.0.log, amiből kiderül, miért nem indul el, azt meg kellene oldani, és utána megpróbálni beszúrni a kívánt kiegészítést, majd újra megnézni.

Dobd ki a generált konfigból az összes kártyát a Card0 kivételével (fbdev, vesa megy a kukába, csak az intel marad), és az összes rájuk hivatkozó Screen konfigurációt, aztán próbáld még egyszer.

Ja, és első körben elég az összes "(EE)"-t tartalmazó sor az Xorg.0.log-ból...

Egyszerűsítek, próbálkozz vmi ilyesmivel:


Section "ServerLayout"
        Identifier     "X.org Configured"
        Screen      0  "Screen0" 0 0
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
        ModulePath   "/usr/lib64/xorg/modules"
        FontPath     "catalogue:/etc/X11/fontpath.d"
        FontPath     "built-ins"
EndSection

Section "Module"
        Load  "glx"
EndSection

Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "kbd"
EndSection

Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "mouse"
        Option      "Protocol" "auto"
        Option      "Device" "/dev/input/mice"
        Option      "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
        Identifier   "Monitor0"
        VendorName   "Monitor Vendor"
        ModelName    "Monitor Model"
        HorizSync 31-75
        VertRefresh 50-76

        # Monitor preferred modeline (60.0 Hz vsync, 47.7 kHz hsync, ratio 16/9) (bad ratio)
        ModeLine "1360x768" 85.5 1360 1424 1536 1792 768 771 777 795 +hsync +vsync

        # Monitor supported modeline (60.0 Hz vsync, 47.4 kHz hsync, ratio 15/9) (bad ratio)
        ModeLine "1280x768" 68.25 1280 1328 1360 1440 768 771 778 790 -hsync +vsync
EndSection

Section "Device"
        Identifier  "Card0"
        Driver      "intel"
        BusID       "PCI:0:2:0"
EndSection

Section "Device"
        Identifier  "Card1"
        Driver      "intel"
        BusID       "PCI:0:2:1"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device     "Card0"
        Monitor    "Monitor0"
        SubSection "Display"
                Viewport   0 0
                Depth     24
                Modes "1280x768"
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24
                Modes "1360x768"
        EndSubSection
EndSection

Section "Screen"
        Identifier "Screen1"
        Device     "Card1"
        Monitor    "Monitor0"
        SubSection "Display"
                Viewport   0 0
                Depth     24
                Modes "1280x768"
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24
                Modes "1360x768"
        EndSubSection
EndSection

[root@localhost log]# grep EE Xorg.0.log 
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[    27.085] Initializing built-in extension MIT-SCREEN-SAVER
[    27.654] (EE) No devices detected.
[    27.663] (EE) 
[    27.663] (EE) no screens found(EE) 
[    27.663] (EE) 
[    27.663] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[    27.663] (EE) 

--
The Community ENTerprise Operating System

Csináltam egy ilyet, semmi hatása:


Section "Monitor"
        Identifier "Monitor0"
        HorizSync 31-75
        VertRefresh 50-76

        # Monitor preferred modeline (60.0 Hz vsync, 47.7 kHz hsync, ratio 16/9) (bad ratio)
        ModeLine "1360x768" 85.5 1360 1424 1536 1792 768 771 777 795 +hsync +vsync

        # Monitor supported modeline (60.0 Hz vsync, 47.4 kHz hsync, ratio 15/9) (bad ratio)
        ModeLine "1280x768" 68.25 1280 1328 1360 1440 768 771 778 790 -hsync +vsync
EndSection

--
The Community ENTerprise Operating System

A 9.25-ös hozzászólásod alapján rendelkezel xorg.conf-fal, ha jól látom. Erre nincs szükség. Ha mást nem javítottál az xorg.conf.d alatt, telepítéskori állapot szerint el kell indulnia az X-nek.

PS: az 1280-as sort is vedd ki. Egy működő állapotot kell elérned, aztán lehet utána mókolni a többit.

Milyen csatlakozón keresztül próbálod? Nekem volt olyan, hogy DVI-on keresztül sehogy se ment a felbontás felismerés, de sima VGA-n keresztül igen. HDMI-vel szintén jó a tapasztalatom.


[root@localhost ~]# Xorg :1 -configure

X.Org X Server 1.14.3
Release Date: 2013-09-12
X Protocol Version 11, Revision 0
Build Operating System:  3.10.9-200.fc19.x86_64 
Current Operating System: Linux localhost.localdomain 3.11.2-201.fc19.x86_64 #1 SMP Fri Sep 27 19:20:55 UTC 2013 x86_64
Kernel command line: BOOT_IMAGE=/vmlinuz-3.11.2-201.fc19.x86_64 root=UUID=14331e68-6685-45d8-aa54-7da97547c658 ro rd.lvm.lv=fedora/swap nomodeset rd.md=0 rd.dm=0 rd.luks=0 vconsole.font=latarcyrheb-sun16 vconsole.keymap=hu101 rhgb quiet LANG=hu_HU.UTF-8
Build Date: 16 September 2013  12:43:35AM
Build ID: xorg-x11-server 1.14.3-1.fc19 
Current version of pixman: 0.30.0
        Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.1.log", Time: Fri Oct 11 09:05:09 2013
List of video drivers:
        intel
        modesetting
        vmware
        ati
        openchrome
        nouveau
        radeon
        qxl
        mga
        fbdev
        vesa
(++) Using config file: "/root/xorg.conf.new"
(==) Using config directory: "/etc/X11/xorg.conf.d"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
Number of created screens does not match number of detected devices.
  Configuration failed.
(EE) Server terminated with error (2). Closing log file.
[root@localhost ~]#

--
The Community ENTerprise Operating System

Nos, közben megpróbáltuk a TV-t egy ubuntus laptopon, és furi, mert pöccre jól adta ki rá a felbontást, már a splashscreennél is... Az már más kérdés, hogy egy terminálra váltásnál kifagyott, aztán következő indulásnál el se indult, és semmire nem reagált, de hát az én kezem közt mindig ilyen ez a "bugmentes" ubuntu. :)
Ami viszont a lényeg, hogy próbáltam xorg configot generáltatni, hátha itt jó lesz, de ugyanúgy nem sikerült.
Van valami ötlet esetleg arra, hogy hogy menthetném le az ubuntu beállításait?
--
The Community ENTerprise Operating System

Nézgettem a betöltött modulokat, ez az X -configure teljesen hülyeséget generál... Nem is az intel modult használja a kártyához, hanem az i915-öt. (A fedora és az ubuntu is...) Szóval erre nincs mit adni.
--
The Community ENTerprise Operating System

Megvan... :)
A következőt csináltam: módosítottam az /etc/sysconfig/grub-ot a következő képpen (kommentelve a default, telepítő által kreált beállítás, alatta amit módosítottam):


GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
#GRUB_DISABLE_SUBMENU=true
GRUB_DISABLE_SUBMENU=false
#GRUB_TERMINAL_OUTPUT="console"
GRUB_TERMINAL_OUTPUT="gfxterm"
#GRUB_CMDLINE_LINUX="rd.lvm.lv=fedora/swap nomodeset rd.md=0 rd.dm=0 $([ -x /usr/sbin/rhcrashkernel-param ] && /usr/sbin/rhcrashkernel-param || :) rd.luks=0 vconsole.font=latarcyrheb-sun16 vconsole.keymap=hu101 rhgb quiet"
GRUB_CMDLINE_LINUX="rd.lvm.lv=fedora/swap rd.md=0 rd.dm=0 $([ -x /usr/sbin/rhcrashkernel-param ] && /usr/sbin/rhcrashkernel-param || :) rd.luks=0 vconsole.font=latarcyrheb-sun16 vconsole.keymap=hu101 rhgb quiet"
#GRUB_DISABLE_RECOVERY="true"
GRUB_DISABLE_RECOVERY="false"

grub2-mkconfig, reboot, és tökéletesen megy minden... Szóval konklúzió: ha rendes felbontást akarsz a GUI-n, a bootmanagert is erre kell állítanod. Éljen a grub2 és a kernel mode settings és a hasonló remek technikák...
FullHD-s grub2 menüt mindenkinek! Opa gangnam style...

UI.: Azt ne kérdezzétek, hogy rendes monitorral miért ment ennek ellenére is.
--
The Community ENTerprise Operating System