Unverschämter VESA DDC!

Hallo, NG!

Ich habe einen speziellen Videomonitoradapter eigener Entwicklung mit einem DVI-Eingang. Auf dem Adapter gibt es eine Reihe von ICs, die (bei Weiterentwicklung der Firmware) ueber den internen I2C-Bus (3.3V, eher soll es SMBus heissen) kommunizieren sollen. Auf diesem I2C-Bus gibt es auch einen I2C-EEPROM, wo EDID geschrieben ist. Ein PCA9306DCU Chip verbindet den internen I2C-Bus mit dem VESA DDC am DVI.

Das Problem: die Grafikkarten (ausprobiert mit einer von nVidia und einer von ATI im Notebook) lassen entweder SCL oder SDA Signal auf "0" stecken bleiben, nachdem sie EDID ausgelesen haben. Dadurch koennen die anderen ICs den Bus nicht mehr nutzen. Ich habe dieses Verhalten bei DDC gar nicht erwartet und nirgendwo darueber gelesen. Ist es normal oder ist es auf die schlampig geschriebenen GraKa-Treiber zurueckzufuehren? Man kann natuerlich den PCA9306DCU abschalten und somit den DDC- vom I2C-Bus trennen, doch in der Schaltung war es leider nicht vorgesenen, und die Platinen sind schon produziert worden.

TIA,

Igor.

Reply to
Igor "Knight" Ivanov
Loading thread data ...

Diese Grafikkarten benutzen den DDC um dar=C3=BCber auch

3D-Shutter-Brillen anzusteuern. Dabei wird AFAIK das SCL auf 0 gehalten und auf SDA der Shutter-Clock =C3=BCbertragen.

Wolfgang Draxinger

--=20 E-Mail address works, Jabber: snipped-for-privacy@jabber.org, ICQ: 134682867

Reply to
Wolfgang Draxinger

Hi, Wolfgang

Habe ich das in DDC-Doku uebersehen?

TIA,

Igor.

Reply to
Igor "Knight" Ivanov

Nein, aber normalerweise wird der DDC f=C3=BCr nichts anderes verwendet als die einmalige Kommunikation zwischen Monitor und Grafikkarte zum Abfragen der Betriebsparameter und erlaubten Modi. Das Ihr da jetzt noch ganz andere Sachen dar=C3=BCber laufen lassen wollt, davon wussten die Leute bei nVidia nichts (die haben damit angefangen) und ATI hat nachgezogen.

Wolfgang Draxinger

--=20 E-Mail address works, Jabber: snipped-for-privacy@jabber.org, ICQ: 134682867

Reply to
Wolfgang Draxinger

Hallo!

Igor "Knight" Ivanov schrieb:

Ist eigenartig, gerade weil DDC seit einiger Zeit nicht nur zum EDID-lesen, sondern auch für die Steuerung des Monitors (Helligkeit, Farbtemp. und was das OSD sonst noch so hergibt) verwendet wird.

nVidia (und AFAIK auch ATI) bieten unter Linux den DDC2-Bus neuerdings sogar völlig Linux-konform als I2C-Device an. Ich habe mir kürzlich für VGA einen Zwischenstecker mit einem 24LC02 gebaut, der EDID für ein nicht-DDC- fähiges Gerät nachrüstet. Den 24LC02 im Stecker habe ich direkt am VGA-Port programmiert.

Das alles passt nicht so direkt ins Bild des "dummen Graka-Treibers", der nur EDID macht. Vielleicht sieht das bei anderen OS (Win?) aber wieder ganz anders aus.

Gruß, Till.

--
wollenberg (at) web (punkt) de
Reply to
Till Wollenberg

Am Thu, 16 Nov 2006 14:35:54 +0100 schrieb Wolfgang Draxinger :

Vielleicht kann man die Shutter Brillen Steuerung in den Treibereinstellungen deaktivieren?

--
Martin
Reply to
Martin Lenz

Hi, Till!

"Till Wollenberg" schrieb im Newsbeitrag news: snipped-for-privacy@mid.individual.net...

[..]

Nun, das passt ja, solange die GraKa der alleinige Master auf dem Bus sein darf. Ich befuerchte, die Treiber der GraKa gehen hochnaesig davon aus :) und scheren sich nicht um die konformen Zustaende aufm I2C-Bus. DDC heisst zwar nicht I2C, jedoch wird's ja immer gesagt, das ist der I2C. So erwarte man, dass die Master aufm Bus von der Multimasternatur des Busses ausgehen sollen. Anscheinend ist es nicht der Fall. Deswegen sprach ich von schlampigen Treibern.

Mir bleibt nur die Ansteuerung von PCA9306DCU, der eben dafuer gedacht ist, zwei (noch dazu mit unterschiedlichen Spannungen) verschiedene I2C-Busse miteinander zu verbinden und doch auseinander zu halten. Ich habe zum Glueck die Moeglichkeit gefunden, durch einen einzigen Patch-Draht auf den bestehenden Platinen, den Chip entsprechend anzusteuern.

Igor.

Reply to
Igor "Knight" Ivanov

Nix derartiges gefunden.

Igor.

Reply to
Igor "Knight" Ivanov

Vermutlich zu recht.

Jein. Echter Multi-Master-Betrieb würde Zusatzhardware erfordern - konformes Timing ist mit einer reinen Software-Implementierung im PC-Treiber kaum möglich. Warum sollte man sowas tun, wenn DDC exakt für die Kommunikation von 1 Grafikkarte mit 1 Monitor gedacht ist?

Außerdem: steht in der Vesa-Doku, daß das I2C ist, incl. Multi-Master-Betrieb? Daß es in der Praxis wie I2C funktioniert, heißt ja nicht, daß das in allen Details auch garantiert ist.

cu Michael

--
Some people have no respect of age unless it is bottled.
Reply to
Michael Schwingen

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.