> We have bought a number of Dells with the OEM RadeonVE card. I can > certainly confirm that they are strange compared to the out-of-box > Radeon VE QY, although the PCI vendor id is identical. Have a look at: > > http://wetlogic.net/stewart/xfree-radeon-ve/radeon-ve-dell.jpg > > to see the card and the single connector on the board. Unlike the > retail version of the board I have, this board does not duplicate > output on both connectors, but instead displays only on cable 1 (the > blue connector on the Y-adaptor in the picture), and nothing at all > on cable 2.
Nice picture. Just to add, Dell also has a different Y-adaptor with two DVI-D outputs (working for the same card) as disscussed below. > When I tried a dual-head configuration that works successfully on a > retail version of the Radeon VE versions, I found two problems which > I patched: > > - The first problem is that the primary interface does not report > the BIOS value that radeon_driver.c expects in the function > RADEONGetBIOSParameters(). Instead, it reports only a CRT on > the secondary connector. In the single-headed case this works > correctly. > > In the dual-head case things would also work correctly except > that when RADEONPreInit() is called on the second screen instance, > it checks for BypassSecondary and quite silently returns FALSE. > This stumped me for a long time since there were no error > messages in the X log file that indicated why Screen 1 was > completely ignored in my XF86Config-4. > > I'm not sure I understand why it is an error ifthe BIOS > doesn't claim to detect a second monitor. Does this mean > the user must reboot in order to attach a second monitor, or > in many cases just because it happened to be off at boot time? > In my patch, I commented the return out, but I think it's > worth opening a discussion (I'm not on Xpert, so please Cc > me). The behavior as a result of this change is that if > there's a second screen definition and the card is multi-head, > and there's at least one monitor attached, the second monitor > is pre-initted. Current driver uses BIOS settings to detect connected monitors, this requires you to have correct monitors connected during the boot (some versions of BIOS can handle hot-plug, which will set correct settings even after boot). Ideally the driver should do monitor probe itself (scan through all DDC types and try to talk to the possible connected monitors). Even more, it should handle hot-plug interrupt, so that you can swap or plug a monitor even after X started. But all this takes time and man power to get implemented. BypassSecondary is used when only one monitor connected to the second CRT port while you have dual-head setup in the config file. I remember there was some problem before this flag was added. So be careful to comment it out. In you case, it seems you didn't have all monitors connected during the boot, the BIOS didn't detect one of your monitor which causes it's bypassed. > - The second problem is that the secondary monitor on the OEM > Dell Radeon VE uses DAC2 for output. There was actually a > bit of commented out code in RADEONInitCrtc2Registers() already, > so I simply added an option named "Crt2Dac2" and tested for > it there. The true maintainers of this code may want to add > another boolean field to RADEONEntRec and hunt for the option > elsewhere, if they think that's cleaner. > Thesecond screen definition in my XF86Config-4 now looks like: > > Section "Device" > Identifier "ATI Radeon 1" > Driver "radeon" > BoardName "Radeon" > BusID "PCI:1:0:0" > Option "AGPMode" "4" > Option "Crt2Dac2" > Screen 1 > EndSection DELL card can be auto detected from Sub-System Card ID of PCI configuration space. So you don't really need an option for it's special configuration. Yes, for DELL's two CRTs adaptor, you need to turn on TV DAC to drive secondary CRT (RADEON_DAC2_DAC2_CLK_SEL). For dual DVI-D cable, things are more complicated, mode validation routines have to be added and FP2 registers need to be programmed for the second flat panel. > The third problem, which I didn't deal with, is that the DDC info > for the two monitors attached was swapped. In other words, the DDC > info listed for screen 0 (the monitor displaying the settings listed > in the "Screen 0" Section, also the monitor connected to the first > cable) appeared in the section of the log file dedicated to screen 1, > and vice versa. This wasn't a big enough problem for me to solve, > and since it's hard to solve it without yet another option, I decided > to forego it. The DDCType from DELL card's BIOS does not follow the old rule, it need to be hard coded. I have working code on my system for both 2-CRT and 2-DVI adaptors. The code has lots of other changes since XF4.20, part of them is being merged into current CVS tree. I can send you a copy if you are interested. I've sent to other people for testing a couple of days ago. > Anyway, I hope this helps some people. Here it is, based on > 4.2.99.1 (CVS as of yesterday): Thanks, it's certainly useful. And good for you to dig into this. _______________________________________________ Xpert mailing list [EMAIL PROTECTED] http://XFree86.Org/mailman/listinfo/xpert
