diff --git a/README.md b/README.md index 80e7455..6e1b082 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,4 @@ # xf86-video-savage +savage X.Org video drivers. + diff --git a/xf86-video-savage.spec b/xf86-video-savage.spec new file mode 100644 index 0000000..b01c6f5 --- /dev/null +++ b/xf86-video-savage.spec @@ -0,0 +1,105 @@ +%define xorg_ver %(pkg-config xorg-server --modversion|cut -d. -f 1-2) +Name: xf86-video-savage +Version: 2.4.0 +Release: 1mamba +Summary: savage X.Org video drivers +Group: System/X11 +Vendor: openmamba +Distribution: openmamba +Packager: Silvan Calarco +URL: https://www.x.org/wiki/ +Source: https://www.x.org/archive/individual/driver/xf86-video-savage-%{version}.tar.xz +Patch0: xorg-drv-video-savage-2.3.9-xorg-server-1.20.4.patch +License: MIT +## AUTOBUILDREQ-BEGIN +BuildRequires: glibc-devel +## AUTOBUILDREQ-END +BuildRequires: xorg-server-devel >= 21.1.3-1mamba +Requires: xorg-server >= %{xorg_ver} +Requires: xorg-server <= %{xorg_ver}.255 +Provides: xorg-drv-video-savage +Obsoletes: xorg-drv-video-savage < 2.4.0 + +%description +savage X.Org video drivers. + +%debug_package + +%prep +%setup -q +#%patch 0 -p1 + +%build +%configure +%make + +%install +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" +%makeinstall + +%clean +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" + +%files +%defattr(-,root,root) +%{_libdir}/xorg/modules/drivers/savage_drv.so +%{_mandir}/man4/savage.4* + +%changelog +* Thu Nov 02 2023 Silvan Calarco 2.4.0-1mamba +- update to 2.4.0 + +* Sat Feb 19 2022 Automatic Build System 2.3.9-4mamba +- rebuilt by autoport with build requirements: xorg-server-devel>=21.1.3-1mamba + +* Sun Mar 03 2019 Silvan Calarco 2.3.9-3mamba +- rebuilt with xorg-server 1.20.4 + +* Thu Dec 07 2017 Automatic Build System 2.3.9-2mamba +- rebuild with xorg-server 1.19.5 + +* Sun Oct 22 2017 Automatic Build System 2.3.9-1mamba +- automatic update by autodist + +* Fri Aug 21 2015 Silvan Calarco 2.3.8-2mamba +- rebuilt with xorg-server 1.17.2 + +* Fri Jun 05 2015 Automatic Build System 2.3.8-1mamba +- automatic update by autodist + +* Sat Jun 14 2014 Automatic Build System 2.3.7-2mamba +- X.org 1.15 rebuild + +* Mon Sep 30 2013 Automatic Build System 2.3.7-1mamba +- automatic update by autodist + +* Tue Mar 05 2013 Silvan Calarco 2.3.6-3mamba +- xorg-server 1.12 mass rebuild + +* Thu Dec 06 2012 Silvan Calarco 2.3.6-2mamba +- mass rebuild: xorg-server 1.10 backport from devel-xorg + +* Thu Aug 16 2012 Automatic Build System 2.3.6-1mamba +- automatic version update by autodist + +* Mon Jul 02 2012 Automatic Build System 2.3.4-1mamba +- automatic version update by autodist + +* Thu Jun 07 2012 Silvan Calarco 2.3.2-4mamba +- automatic update by autodist + +* Fri Feb 17 2012 Silvan Calarco 2.3.2-3mamba +- automatic update by autodist + +* Sun Aug 21 2011 Silvan Calarco 2.3.2-2mamba +- rebuilt with xorg-server 1.10 + +* Mon Dec 13 2010 Automatic Build System 2.3.2-1mamba +- automatic update by autodist + +* Wed Nov 25 2009 Silvan Calarco 2.3.1-1mamba +- update to 2.3.1 + +* Sat Jun 06 2009 Ercole 'ercolinux' Carpanetto 2.2.1-1mamba +- Package created + diff --git a/xorg-drv-video-savage-2.3.9-xorg-server-1.20.4.patch b/xorg-drv-video-savage-2.3.9-xorg-server-1.20.4.patch new file mode 100644 index 0000000..3713506 --- /dev/null +++ b/xorg-drv-video-savage-2.3.9-xorg-server-1.20.4.patch @@ -0,0 +1,42 @@ +From 0ece556daa8a88771b669d8104396abd9166d2d0 Mon Sep 17 00:00:00 2001 +From: Stefan Dirsch +Date: Mon, 25 Jun 2018 15:55:06 +0200 +Subject: [PATCH] Add check for max[HV]Value to ValidMode hook + +xorg-server 1.20 removed this check, so implement this in the driver +itself. + +Signed-off-by: Stefan Dirsch +Reviewed-by: Emil Velikov +--- + src/savage_driver.c | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +diff --git a/src/savage_driver.c b/src/savage_driver.c +index 58a294d..3cda923 100644 +--- a/src/savage_driver.c ++++ b/src/savage_driver.c +@@ -2034,8 +2034,6 @@ static Bool SavagePreInit(ScrnInfoPtr pScrn, int flags) + xf86DrvMsg(pScrn->scrnIndex, X_PROBED, "Detected current MCLK value of %1.3f MHz\n", + mclk / 1000.0); + +- pScrn->maxHValue = 2048 << 3; /* 11 bits of h_total 8-pixel units */ +- pScrn->maxVValue = 2048; /* 11 bits of v_total */ + pScrn->virtualX = pScrn->display->virtualX; + pScrn->virtualY = pScrn->display->virtualY; + +@@ -3637,6 +3635,14 @@ static ModeStatus SavageValidMode(SCRN_ARG_TYPE arg, DisplayModePtr pMode, + (pMode->VDisplay > psav->PanelY))) + return MODE_PANEL; + ++ /* 11 bits of h_total 8-pixel units */ ++ if (pMode->HTotal > (2048 << 3)) ++ return MODE_BAD_HVALUE; ++ ++ /* 11 bits of v_total */ ++ if (pMode->VTotal > 2048) ++ return MODE_BAD_VVALUE; ++ + if (psav->UseBIOS) { + refresh = SavageGetRefresh(pMode); + return (SavageMatchBiosMode(pScrn,pMode->HDisplay,