Hello community,
here is the log from the commit of package xorg-x11-driver-video
checked in at Sun Aug 5 11:50:56 CEST 2007.
--------
--- xorg-x11-driver-video/xorg-x11-driver-video.changes 2007-07-25 13:28:46.000000000 +0200
+++ /mounts/work_src_done/STABLE/xorg-x11-driver-video/xorg-x11-driver-video.changes 2007-08-04 11:45:36.259238000 +0200
@@ -1,0 +2,16 @@
+Sat Aug 4 11:12:57 CEST 2007 - sndirsch@suse.de
+
+- update ati driver to release 6.6.193:
+ * This is another ati driver RC aimed at server 1.3. Still not
+ randr-1.2. It contains a bunch of fixes for the upcoming (I
+ swear) 6.7 release. Main features: fix a serious crasher in
+ DPMS code, addition of EXA hook for zero-copy TFP and RS480
+ support. Along with numerous other cleanups. There is a blocker
+ bug 11749 for the 6.7 release in bugs.freedesktop.org
+- obsoletes xf86-video-ati-rs482-singledac.diff
+- obsoletes radeon-Clean-up-PortInfo-to-CRTC-mapping.diff
+- obsoletes radeon-Fix-the-last-instance-of-RadeonUnblank.diff
+- adjusted radeon-Fix-CRT-on-RS400.diff
+- updated mga/ati randr12 drivers to current git (2007-08-04)
+
+-------------------------------------------------------------------
Old:
----
radeon-Clean-up-PortInfo-to-CRTC-mapping.diff
radeon-Fix-the-last-instance-of-RadeonUnblank.diff
xf86-video-ati-6.6.192.tar.bz2
xf86-video-ati.randr12-20070603.tar.bz2
xf86-video-ati-rs482-singledac.diff
xf86-video-mga.randr12-20070417.tar.bz2
New:
----
xf86-video-ati-6.6.193.tar.bz2
xf86-video-ati.randr12-20070804.tar.bz2
xf86-video-mga.randr12-20070804.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xorg-x11-driver-video.spec ++++++
--- /var/tmp/diff_new_pack.um5635/_old 2007-08-05 11:50:26.000000000 +0200
+++ /var/tmp/diff_new_pack.um5635/_new 2007-08-05 11:50:26.000000000 +0200
@@ -15,7 +15,7 @@
BuildRequires: Mesa-devel libdrm-devel pkgconfig xorg-x11-proto-devel xorg-x11-server-sdk
URL: http://xorg.freedesktop.org/
Version: 7.2
-Release: 137
+Release: 142
License: X11/MIT
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Group: System/X11/Servers/XF86_4
@@ -25,7 +25,7 @@
Source0: xf86-video-apm-X11R7.1-1.1.1.tar.bz2
Source1: xf86-video-ark-X11R7.1-0.6.0.tar.bz2
Source2: xf86-video-ast-X11R7.1-0.81.0.tar.bz2
-Source3: xf86-video-ati-6.6.192.tar.bz2
+Source3: xf86-video-ati-6.6.193.tar.bz2
Source4: xf86-video-chips-X11R7.1-1.1.1.tar.bz2
Source5: xf86-video-cirrus-X11R7.1-1.1.0.tar.bz2
Source6: xf86-video-cyrix-X11R7.1-1.1.0.tar.bz2
@@ -68,8 +68,8 @@
Source43: xf86-video-impact-0.2.0.tar.bz2
Source44: HALlib-4.1.tar.gz
Source45: xf86-video-intel-2.1.0.tar.bz2
-Source46: xf86-video-ati.randr12-20070603.tar.bz2
-Source48: xf86-video-mga.randr12-20070417.tar.bz2
+Source46: xf86-video-ati.randr12-20070804.tar.bz2
+Source48: xf86-video-mga.randr12-20070804.tar.bz2
Patch: xf86-video-intel.diff
Patch1: radeon-xrandr-dotclock.diff
Patch2: radeon_dell.diff
@@ -85,13 +85,10 @@
Patch18: radeon-vbios-ppc.diff
Patch27: xf86-video-ati-mergedfb-dpi.diff
Patch28: xf86-video-ati.randr12.diff
-Patch29: xf86-video-ati-rs482-singledac.diff
Patch30: xf86-video-mga.randr12.diff
Patch31: xf86-video-ati-mergedfb-disable.diff
Patch33: bug-263199_radeon-autocrt.diff
Patch34: radeon-Fix-CRT-on-RS400.diff
-Patch35: radeon-Clean-up-PortInfo-to-CRTC-mapping.diff
-Patch36: radeon-Fix-the-last-instance-of-RadeonUnblank.diff
Patch37: xf86-video-intel-commit-1e2e301.diff
%description
@@ -120,12 +117,9 @@
%patch27 -p0
popd
pushd xf86-video-ati-*
-%patch29 -p1
%patch33 -p1
%patch31 -p0
-%patch34 -p0
-%patch35 -p0
-%patch36 -p1
+%patch34 -p1
popd
pushd xf86-video-nv-*/src
%patch3 -p6
@@ -276,6 +270,19 @@
%{_mandir}/man4/*
%changelog
+* Sat Aug 04 2007 - sndirsch@suse.de
+- update ati driver to release 6.6.193:
+ * This is another ati driver RC aimed at server 1.3. Still not
+ randr-1.2. It contains a bunch of fixes for the upcoming (I
+ swear) 6.7 release. Main features: fix a serious crasher in
+ DPMS code, addition of EXA hook for zero-copy TFP and RS480
+ support. Along with numerous other cleanups. There is a blocker
+ bug 11749 for the 6.7 release in bugs.freedesktop.org
+- obsoletes xf86-video-ati-rs482-singledac.diff
+- obsoletes radeon-Clean-up-PortInfo-to-CRTC-mapping.diff
+- obsoletes radeon-Fix-the-last-instance-of-RadeonUnblank.diff
+- adjusted radeon-Fix-CRT-on-RS400.diff
+- updated mga/ati randr12 drivers to current git (2007-08-04)
* Wed Jul 25 2007 - sndirsch@suse.de
- xf86-video-nv.diff:
* G80: Allow DVI scaling. Revamp how the scaling code works. When
++++++ radeon-Fix-CRT-on-RS400.diff ++++++
--- /var/tmp/diff_new_pack.um5635/_old 2007-08-05 11:50:26.000000000 +0200
+++ /var/tmp/diff_new_pack.um5635/_new 2007-08-05 11:50:26.000000000 +0200
@@ -1,13 +1,29 @@
---- src/radeon_bios.c.orig 2007-07-16 15:51:12.000000000 +0200
-+++ src/radeon_bios.c 2007-07-16 16:31:15.000000000 +0200
-@@ -317,6 +317,10 @@ Bool RADEONGetConnectorInfoFromBIOS (Scr
- connector_found = 1;
- }
-
-+ if ((info->ChipFamily == CHIP_FAMILY_RS400) &&
-+ (pRADEONEnt->PortInfo[0]->ConnectorType == CONNECTOR_PROPRIETARY))
-+ pRADEONEnt->PortInfo[0]->ConnectorType = CONNECTOR_CRT;
+From a8ce76cdbacc1b9c35e563edb01a612acd69da79 Mon Sep 17 00:00:00 2001
+From: Luc Verhaegen
+Date: Fri, 13 Jul 2007 21:41:22 +0200
+Subject: [PATCH] Fix CRT on RS400.
+
+Cause: bad entry in the BIOS connector table.
+---
+ src/radeon_bios.c | 5 +++++
+ 1 files changed, 5 insertions(+), 0 deletions(-)
+
+diff --git a/src/radeon_bios.c b/src/radeon_bios.c
+index fefa6ff..636862d 100644
+--- a/src/radeon_bios.c
++++ b/src/radeon_bios.c
+@@ -53,6 +53,11 @@ int RADEONBIOSApplyConnectorQuirks(ScrnI
+ pRADEONEnt->PortInfo[1]->DDCType = DDC_MONID;
+ }
+ }
++
++ if ((info->ChipFamily == CHIP_FAMILY_RS400) &&
++ (pRADEONEnt->PortInfo[0]->ConnectorType == CONNECTOR_PROPRIETARY))
++ pRADEONEnt->PortInfo[0]->ConnectorType = CONNECTOR_CRT;
+
- if (connector_found == 0) {
- xf86DrvMsg(pScrn->scrnIndex, X_WARNING, "No connector found in Connector Info Table.\n");
- } else {
+ return connector_found;
+ }
+
+--
+1.4.3.4
+
++++++ xf86-video-ati-6.6.192.tar.bz2 -> xf86-video-ati-6.6.193.tar.bz2 ++++++
++++ 9531 lines of diff (skipped)
++++++ xf86-video-ati.randr12-20070603.tar.bz2 -> xf86-video-ati.randr12-20070804.tar.bz2 ++++++
++++ 2149 lines of diff (skipped)
++++++ xf86-video-mga.randr12-20070417.tar.bz2 -> xf86-video-mga.randr12-20070804.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/xf86-video-mga.randr12/src/mga_2064_crtc.c new/xf86-video-mga.randr12/src/mga_2064_crtc.c
--- old/xf86-video-mga.randr12/src/mga_2064_crtc.c 2007-04-17 05:09:32.000000000 +0200
+++ new/xf86-video-mga.randr12/src/mga_2064_crtc.c 2007-08-04 11:40:13.000000000 +0200
@@ -919,3 +919,24 @@
if (crtc->driver_private)
xfree (crtc->driver_private);
}
+
+Bool
+Mga2064CrtcInit(ScrnInfoPtr scrn)
+{
+ xf86CrtcPtr crtc;
+ MgaCrtcDataPtr data;
+
+ data = xnfcalloc (sizeof (MgaCrtcDataRec), 1);
+ if (!data)
+ return FALSE;
+
+ crtc = xf86CrtcCreate (scrn, &crtc_funcs);
+ if (!crtc) {
+ xfree(data);
+ return FALSE;
+ }
+
+ crtc->driver_private = data;
+
+ return TRUE;
+}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/xf86-video-mga.randr12/src/mga_2064_output.c new/xf86-video-mga.randr12/src/mga_2064_output.c
--- old/xf86-video-mga.randr12/src/mga_2064_output.c 2007-04-17 05:09:32.000000000 +0200
+++ new/xf86-video-mga.randr12/src/mga_2064_output.c 2007-08-04 11:40:13.000000000 +0200
@@ -172,7 +172,7 @@
}
xf86OutputPtr
-MgaOutput2064New(ScrnInfoPtr scrn)
+Mga2064OutputInit(ScrnInfoPtr scrn)
{
MGAPtr pMga = MGAPTR(scrn);
xf86OutputPtr output;
@@ -182,7 +182,7 @@
if (!data)
return NULL;
- output = xf86OutputCreate(scrn, &output_funcs, "VGA 1");
+ output = xf86OutputCreate(scrn, &output_funcs, "VGA");
if (!output) {
xfree(data);
return NULL;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/xf86-video-mga.randr12/src/mga_bios.c new/xf86-video-mga.randr12/src/mga_bios.c
--- old/xf86-video-mga.randr12/src/mga_bios.c 2007-03-11 13:19:51.000000000 +0100
+++ new/xf86-video-mga.randr12/src/mga_bios.c 2007-08-04 11:40:13.000000000 +0200
@@ -118,6 +118,7 @@
(void) memset( bios, 0, sizeof( *bios ) );
bios->pixel.min_freq = 50000;
+ bios->connector[0] = bios->connector[1] = MGA_CONNECTOR_NONE;
switch( pMga->Chipset ) {
case PCI_CHIP_MGA2064:
@@ -341,6 +342,7 @@
const CARD8 * bios_data )
{
const unsigned scale = (bios_data[4] != 0) ? 8000 : 6000;
+ mga_connector_t connector;
if ( bios_data[38] != 0xff ) {
@@ -397,6 +399,14 @@
}
bios->host_interface = (bios_data[113] >> 3) & 0x07;
+
+ connector = bios_data[116] & 0x0f;
+ if (connector <= MGA_CONNECTOR_LAST)
+ bios->connector[0] = connector;
+
+ connector = (bios_data[116] >> 4) & 0x0f;
+ if (connector <= MGA_CONNECTOR_LAST)
+ bios->connector[1] = connector;
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/xf86-video-mga.randr12/src/mga_driver.c new/xf86-video-mga.randr12/src/mga_driver.c
--- old/xf86-video-mga.randr12/src/mga_driver.c 2007-04-17 05:09:32.000000000 +0200
+++ new/xf86-video-mga.randr12/src/mga_driver.c 2007-08-04 11:40:13.000000000 +0200
@@ -1076,26 +1076,49 @@
}
static void
-setup_outputs(ScrnInfoPtr scrn)
+setup_g_outputs(ScrnInfoPtr scrn)
{
+ MGAPtr pMga;
xf86OutputPtr output;
+ Bool number_vga = FALSE, number_dvi = FALSE;
- /* FIXME:
- * Create outputs depending on the hardware.
- */
- output = MgaGOutputPanelInit (scrn);
+ pMga = MGAPTR(scrn);
+
+ /* first output */
+ switch (pMga->bios.connector[0]) {
+ case MGA_CONNECTOR_DVI:
+ number_dvi = pMga->bios.connector[1] == MGA_CONNECTOR_DVI;
+ output = MgaGOutputPanel1Init (scrn, number_dvi);
+ break;
+ default:
+ /* in case PInS doesn't contain connector info
+ * or it claims there's no primary output
+ * we just assume it's VGA.
+ */
+ number_vga = pMga->bios.connector[1] == MGA_CONNECTOR_HD15;
+ output = MgaGOutputDac1Init (scrn, number_vga);
+ break;
+ }
+
+ /* the first output can be mapped to any crtc */
output->possible_crtcs = 1 | 2;
- output->possible_clones = 1 | 2;
-#if 0
- output = MgaGOutputDac1Init (scrn);
- output->possible_crtcs = 1 | 2;
- output->possible_clones = 1 | 2;
-#endif
+ /* second output */
+ switch (pMga->bios.connector[1]) {
+ case MGA_CONNECTOR_HD15:
+ output = MgaGOutputDac2Init (scrn, number_vga);
+ break;
+ case MGA_CONNECTOR_DVI:
+ output = MgaGOutputPanel2Init (scrn, number_dvi);
+ break;
+ default:
+ output = NULL;
+ break;
+ }
- output = MgaGOutputDac2Init (scrn);
- output->possible_crtcs = 2;
- output->possible_clones = 2;
+ /* the second output can only be mapped to crtc 2 */
+ if (output)
+ output->possible_crtcs = 2;
}
/* Mandatory */
@@ -1109,7 +1132,8 @@
ClockRangePtr clockRanges;
const char *s;
int flags24;
- Bool Default;
+ Bool Default, is_2064 = FALSE;
+ xf86OutputPtr output;
/*
* Note: This function is only called once at server startup, and
@@ -1512,8 +1536,8 @@
case PCI_CHIP_MGA2064:
case PCI_CHIP_MGA2164:
case PCI_CHIP_MGA2164_AGP:
+ is_2064 = TRUE;
MGA2064SetupFuncs(pScrn);
- /* register 2064 CRTC and output */
break;
case PCI_CHIP_MGA1064:
case PCI_CHIP_MGAG100:
@@ -1731,17 +1755,29 @@
xf86CrtcSetSizeRange(pScrn, 320, 200, 2560, 1024);
- /* FIXME:
- * Obviously, this cannot be done unconditionally.
- */
- MgaGCrtc1Init (pScrn);
- MgaGCrtc2Init (pScrn);
+ if (is_2064)
+ Mga2064CrtcInit (pScrn);
+ else {
+ switch(pMga->Chipset) {
+ case PCI_CHIP_MGAG400:
+ case PCI_CHIP_MGAG550:
+ MgaGCrtc1Init (pScrn);
+ MgaGCrtc2Init (pScrn);
+ break;
+ default:
+ MgaGCrtc1Init (pScrn);
+ }
+ }
if (pMga->i2cInit) {
pMga->i2cInit(pScrn);
}
- setup_outputs(pScrn);
+ if (is_2064) {
+ output = Mga2064OutputInit (pScrn);
+ output->possible_crtcs = 1;
+ } else
+ setup_g_outputs (pScrn);
/*
* fill MGAdac struct
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/xf86-video-mga.randr12/src/mga_g_output.c new/xf86-video-mga.randr12/src/mga_g_output.c
--- old/xf86-video-mga.randr12/src/mga_g_output.c 2007-04-17 05:09:32.000000000 +0200
+++ new/xf86-video-mga.randr12/src/mga_g_output.c 2007-08-04 11:40:13.000000000 +0200
@@ -44,7 +44,8 @@
static void output_dac1_dpms(xf86OutputPtr output, int mode);
static void output_dac2_dpms(xf86OutputPtr output, int mode);
-static void output_panel_dpms(xf86OutputPtr output, int mode);
+static void output_panel1_dpms(xf86OutputPtr output, int mode);
+static void output_panel2_dpms(xf86OutputPtr output, int mode);
static void output_save(xf86OutputPtr output);
static void output_restore(xf86OutputPtr output);
static void output_panel_restore(xf86OutputPtr output);
@@ -56,8 +57,10 @@
DisplayModePtr adjusted_mode);
static void output_dac2_mode_set(xf86OutputPtr output, DisplayModePtr mode,
DisplayModePtr adjusted_mode);
-static void output_panel_mode_set(xf86OutputPtr output, DisplayModePtr mode,
- DisplayModePtr adjusted_mode);
+static void output_panel1_mode_set(xf86OutputPtr output, DisplayModePtr mode,
+ DisplayModePtr adjusted_mode);
+static void output_panel2_mode_set(xf86OutputPtr output, DisplayModePtr mode,
+ DisplayModePtr adjusted_mode);
static void output_commit(xf86OutputPtr output);
static xf86OutputStatus output_detect(xf86OutputPtr output);
static DisplayModePtr output_get_modes(xf86OutputPtr output);
@@ -91,14 +94,28 @@
.destroy = output_destroy
};
-static const xf86OutputFuncsRec output_panel_funcs = {
- .dpms = output_panel_dpms,
+static const xf86OutputFuncsRec output_panel1_funcs = {
+ .dpms = output_panel1_dpms,
.save = output_save,
.restore = output_panel_restore,
.mode_valid = output_mode_valid,
.mode_fixup = output_mode_fixup,
.prepare = output_prepare,
- .mode_set = output_panel_mode_set,
+ .mode_set = output_panel1_mode_set,
+ .commit = output_commit,
+ .detect = output_detect,
+ .get_modes = output_get_modes,
+ .destroy = output_destroy
+};
+
+static const xf86OutputFuncsRec output_panel2_funcs = {
+ .dpms = output_panel2_dpms,
+ .save = output_save,
+ .restore = output_panel_restore,
+ .mode_valid = output_mode_valid,
+ .mode_fixup = output_mode_fixup,
+ .prepare = output_prepare,
+ .mode_set = output_panel2_mode_set,
.commit = output_commit,
.detect = output_detect,
.get_modes = output_get_modes,
@@ -205,7 +222,7 @@
}
static void
-output_panel_dpms(xf86OutputPtr output, int mode)
+output_panel1_dpms(xf86OutputPtr output, int mode)
{
MGAPtr pMga = MGAPTR(output->scrn);
CARD8 pwr_ctl, mask;
@@ -221,6 +238,27 @@
}
static void
+output_panel2_dpms(xf86OutputPtr output, int mode)
+{
+ MGAPtr pMga = MGAPTR(output->scrn);
+ CARD8 pwr_ctl, mask;
+
+ pwr_ctl = inMGAdac(MGA1064_PWR_CTL);
+ mask = MGA1064_PWR_CTL_PANEL_EN;
+
+ if (mode == DPMSModeOn) {
+ outMGAdac(MGA1064_PWR_CTL, pwr_ctl | mask);
+ outMGAdac(MGA1064_DVI_PIPE_CTL, 0x20);
+ } else {
+ /* see above
+ *
+ * outMGAdac(MGA1064_PWR_CTL, pwr_ctl & ~mask);
+ */
+ outMGAdac(MGA1064_DVI_PIPE_CTL, 0x0);
+ }
+}
+
+static void
output_save(xf86OutputPtr output)
{
}
@@ -320,7 +358,7 @@
}
static void
-output_panel_mode_set(xf86OutputPtr output, DisplayModePtr mode,
+output_panel1_mode_set(xf86OutputPtr output, DisplayModePtr mode,
DisplayModePtr adjusted_mode)
{
MGAPtr pMga = MGAPTR(output->scrn);
@@ -339,7 +377,12 @@
disp_ctl |= MGA1064_DISP_CTL_PANOUTSEL_CRTC2RGB;
outMGAdac(MGA1064_DISP_CTL, disp_ctl);
+}
+static void
+output_panel2_mode_set(xf86OutputPtr output, DisplayModePtr mode,
+ DisplayModePtr adjusted_mode)
+{
}
static xf86OutputStatus
@@ -374,17 +417,18 @@
}
xf86OutputPtr
-MgaGOutputDac1Init(ScrnInfoPtr scrn)
+MgaGOutputDac1Init(ScrnInfoPtr scrn, Bool number)
{
MGAPtr pMga = MGAPTR(scrn);
xf86OutputPtr output;
MgaOutputDataPtr data;
+ const char *name = number ? "VGA1" : "VGA";
data = xnfcalloc(sizeof(MgaOutputDataRec), 1);
if (!data)
return NULL;
- output = xf86OutputCreate(scrn, &output_dac1_funcs, "VGA1");
+ output = xf86OutputCreate(scrn, &output_dac1_funcs, name);
if (!output) {
xfree(data);
return NULL;
@@ -398,17 +442,18 @@
}
xf86OutputPtr
-MgaGOutputDac2Init(ScrnInfoPtr scrn)
+MgaGOutputDac2Init(ScrnInfoPtr scrn, Bool number)
{
MGAPtr pMga = MGAPTR(scrn);
xf86OutputPtr output;
MgaOutputDataPtr data;
+ const char *name = number ? "VGA2" : "VGA";
data = xnfcalloc(sizeof(MgaOutputDataRec), 1);
if (!data)
return NULL;
- output = xf86OutputCreate(scrn, &output_dac2_funcs, "VGA2");
+ output = xf86OutputCreate(scrn, &output_dac2_funcs, name);
if (!output) {
xfree(data);
return NULL;
@@ -422,17 +467,18 @@
}
xf86OutputPtr
-MgaGOutputPanelInit(ScrnInfoPtr scrn)
+MgaGOutputPanel1Init(ScrnInfoPtr scrn, Bool number)
{
MGAPtr pMga = MGAPTR(scrn);
xf86OutputPtr output;
MgaOutputDataPtr data;
+ const char *name = number ? "DVI1" : "DVI";
data = xnfcalloc(sizeof(MgaOutputDataRec), 1);
if (!data)
return NULL;
- output = xf86OutputCreate(scrn, &output_panel_funcs, "Panel1");
+ output = xf86OutputCreate(scrn, &output_panel1_funcs, name);
if (!output) {
xfree(data);
return NULL;
@@ -444,3 +490,28 @@
return output;
}
+
+xf86OutputPtr
+MgaGOutputPanel2Init(ScrnInfoPtr scrn, Bool number)
+{
+ MGAPtr pMga = MGAPTR(scrn);
+ xf86OutputPtr output;
+ MgaOutputDataPtr data;
+ const char *name = number ? "DVI2" : "DVI";
+
+ data = xnfcalloc(sizeof(MgaOutputDataRec), 1);
+ if (!data)
+ return NULL;
+
+ output = xf86OutputCreate(scrn, &output_panel2_funcs, name);
+ if (!output) {
+ xfree(data);
+ return NULL;
+ }
+
+ output->driver_private = data;
+
+ data->ddc_bus = pMga->DDC_Bus2;
+
+ return output;
+}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/xf86-video-mga.randr12/src/mga.h new/xf86-video-mga.randr12/src/mga.h
--- old/xf86-video-mga.randr12/src/mga.h 2007-04-17 05:09:32.000000000 +0200
+++ new/xf86-video-mga.randr12/src/mga.h 2007-08-04 11:40:13.000000000 +0200
@@ -301,6 +301,14 @@
MGA_HOST_AGP_4x = 7 /**< AGP 4x capable. */
} mga_host_t;
+typedef enum {
+ MGA_CONNECTOR_NONE = 0,
+ MGA_CONNECTOR_HD15,
+ MGA_CONNECTOR_DVI,
+ MGA_CONNECTOR_TV,
+ MGA_CONNECTOR_LAST = MGA_CONNECTOR_TV
+} mga_connector_t;
+
/**
* Card information derrived from BIOS PInS data.
*/
@@ -341,6 +349,11 @@
* Type of physical interface used for the card.
*/
mga_host_t host_interface;
+
+ /**
+ * On G450 and G550 PInS lists the available connectors.
+ */
+ mga_connector_t connector[2];
};
@@ -623,12 +636,16 @@
void MGAG200SERestoreMode(ScrnInfoPtr, vgaRegPtr);
void MGAG200SEHWProtect(ScrnInfoPtr, Bool);
+Bool Mga2064CrtcInit(ScrnInfoPtr pScrn);
+xf86OutputPtr Mga2064OutputInit(ScrnInfoPtr pScrn);
+
Bool MgaGCrtc1Init(ScrnInfoPtr pScrn);
Bool MgaGCrtc2Init(ScrnInfoPtr pScrn);
-xf86OutputPtr MgaGOutputDac1Init(ScrnInfoPtr pScrn);
-xf86OutputPtr MgaGOutputDac2Init(ScrnInfoPtr pScrn);
-xf86OutputPtr MgaGOutputPanelInit(ScrnInfoPtr pScrn);
+xf86OutputPtr MgaGOutputDac1Init(ScrnInfoPtr pScrn, Bool number);
+xf86OutputPtr MgaGOutputDac2Init(ScrnInfoPtr pScrn, Bool number);
+xf86OutputPtr MgaGOutputPanel1Init(ScrnInfoPtr pScrn, Bool number);
+xf86OutputPtr MgaGOutputPanel2Init(ScrnInfoPtr pScrn, Bool number);
static __inline__ void
MGA_MARK_SYNC(MGAPtr pMga, ScrnInfoPtr pScrn)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org