Compare commits
6 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
154aad6d27 | ||
|
|
8a2fc3c1eb | ||
|
|
da58d08327 | ||
|
|
da151093e0 | ||
|
|
27bcb92bdd | ||
|
|
d1cf771758 |
4 changed files with 126 additions and 25 deletions
|
|
@ -1,6 +1,6 @@
|
|||
Name: 915resolution
|
||||
Version: 0.5.3
|
||||
Release: 2%{?dist}
|
||||
Release: 4%{?dist}
|
||||
Summary: Intel video BIOS hack to support certain resolutions
|
||||
|
||||
Group: User Interface/X Hardware Support
|
||||
|
|
@ -10,6 +10,11 @@ Source0: http://www.geocities.com/stomljen/%{name}-%{version}.tar.gz
|
|||
Source1: %{name}-init
|
||||
Source2: %{name}-config
|
||||
Source3: %{name}-pm-hook
|
||||
|
||||
# support for additional chipsets
|
||||
Patch0: 965GM.patch
|
||||
Patch1: E7221.patch
|
||||
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
|
||||
# this doesn't make much sense on ppc. That, and it fails to build :)
|
||||
|
|
@ -41,6 +46,8 @@ differs substantially. 915resolution's code base is much simpler.
|
|||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
|
||||
# keep rpmlint from complaining....
|
||||
chmod -x dump_bios
|
||||
|
|
@ -64,9 +71,9 @@ install -m 0755 -T %{SOURCE1} \
|
|||
mkdir -p %{buildroot}%{_sysconfdir}/sysconfig
|
||||
install -m 0644 -T %{SOURCE2} \
|
||||
%{buildroot}%{_sysconfdir}/sysconfig/915resolution
|
||||
mkdir -p %{buildroot}%{_sysconfdir}/pm/hooks
|
||||
mkdir -p %{buildroot}%{_sysconfdir}/pm/sleep.d
|
||||
install -m 0755 -T %{SOURCE3} \
|
||||
%{buildroot}%{_sysconfdir}/pm/hooks/99resolution
|
||||
%{buildroot}%{_sysconfdir}/pm/sleep.d/99resolution
|
||||
|
||||
|
||||
%clean
|
||||
|
|
@ -93,11 +100,18 @@ fi
|
|||
%doc LICENSE.txt README* changes.log chipset_info.txt dump_bios
|
||||
%{_sbindir}/*
|
||||
%{_sysconfdir}/rc.d/init.d/*
|
||||
%{_sysconfdir}/pm/hooks/*
|
||||
%{_sysconfdir}/pm/sleep.d/*
|
||||
%config(noreplace) %{_sysconfdir}/sysconfig/*
|
||||
|
||||
|
||||
%changelog
|
||||
* Sat Dec 15 2007 Chris Weyl <cweyl@alumni.drew.edu> 0.5.3-4
|
||||
- add support for the E7221 chipset (BZ#425789)
|
||||
- fix suspend/resume hook placement (BZ#253453)
|
||||
|
||||
* Tue Nov 13 2007 Chris Weyl <cweyl@alumni.drew.edu> 0.5.3-3
|
||||
- incorporate patch from bz #331411
|
||||
|
||||
* Tue Aug 21 2007 Chris Weyl <cweyl@alumni.drew.edu> 0.5.3-2
|
||||
- bump
|
||||
|
||||
|
|
|
|||
54
965GM.patch
Normal file
54
965GM.patch
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
--- 915resolution-0.5.3/915resolution.c.lr 2007-10-14 19:35:46.000000000 +0200
|
||||
+++ 915resolution-0.5.3/915resolution.c 2007-10-14 19:38:49.000000000 +0200
|
||||
@@ -56,12 +56,12 @@
|
||||
|
||||
typedef enum {
|
||||
CT_UNKWN, CT_830, CT_845G, CT_855GM, CT_865G, CT_915G, CT_915GM, CT_945G, CT_945GM,
|
||||
- CT_946GZ, CT_G965, CT_Q965
|
||||
+ CT_946GZ, CT_G965, CT_965GM, CT_Q965
|
||||
} chipset_type;
|
||||
|
||||
char * chipset_type_names[] = {
|
||||
"UNKNOWN", "830", "845G", "855GM", "865G", "915G", "915GM", "945G", "945GM",
|
||||
- "946GZ", "G965", "Q965"
|
||||
+ "946GZ", "G965", "965GM", "Q965"
|
||||
};
|
||||
|
||||
typedef enum {
|
||||
@@ -221,6 +221,10 @@
|
||||
type = CT_G965;
|
||||
break;
|
||||
|
||||
+ case 0x2a008086:
|
||||
+ type = CT_965GM;
|
||||
+ break;
|
||||
+
|
||||
case 0x29908086:
|
||||
type = CT_Q965;
|
||||
break;
|
||||
@@ -510,6 +514,7 @@
|
||||
case CT_945GM:
|
||||
case CT_946GZ:
|
||||
case CT_G965:
|
||||
+ case CT_965GM:
|
||||
case CT_Q965:
|
||||
outl(0x80000090, 0xcf8);
|
||||
map->b1 = inb(0xcfd);
|
||||
@@ -550,6 +555,7 @@
|
||||
case CT_945GM:
|
||||
case CT_946GZ:
|
||||
case CT_G965:
|
||||
+ case CT_965GM:
|
||||
case CT_Q965:
|
||||
outl(0x80000090, 0xcf8);
|
||||
outb(map->b1, 0xcfd);
|
||||
@@ -809,6 +815,9 @@
|
||||
else if (!strcmp(argv[index], "G965")) {
|
||||
*forced_chipset = CT_G965;
|
||||
}
|
||||
+ else if (!strcmp(argv[index], "965GM")) {
|
||||
+ *forced_chipset = CT_965GM;
|
||||
+ }
|
||||
else if (!strcmp(argv[index], "Q965")) {
|
||||
*forced_chipset = CT_Q965;
|
||||
}
|
||||
54
E7221.patch
Normal file
54
E7221.patch
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
--- 915resolution-0.5.3/915resolution.c.lr 2007-10-14 19:35:46.000000000 +0200
|
||||
+++ 915resolution-0.5.3/915resolution.c 2007-10-14 19:38:49.000000000 +0200
|
||||
@@ -55,12 +55,12 @@ typedef unsigned char boolean;
|
||||
typedef unsigned int cardinal;
|
||||
|
||||
typedef enum {
|
||||
- CT_UNKWN, CT_830, CT_845G, CT_855GM, CT_865G, CT_915G, CT_915GM, CT_945G, CT_945GM,
|
||||
+ CT_UNKWN, CT_830, CT_845G, CT_855GM, CT_865G, CT_915G, CT_E7221, CT_915GM, CT_945G, CT_945GM,
|
||||
CT_946GZ, CT_G965, CT_965GM, CT_Q965
|
||||
} chipset_type;
|
||||
|
||||
char * chipset_type_names[] = {
|
||||
- "UNKNOWN", "830", "845G", "855GM", "865G", "915G", "915GM", "945G", "945GM",
|
||||
+ "UNKNOWN", "830", "845G", "855GM", "865G", "915G", "E7221 (i915)", "915GM", "945G", "945GM",
|
||||
"946GZ", "G965", "965GM", "Q965"
|
||||
};
|
||||
|
||||
@@ -201,6 +201,10 @@ chipset_type get_chipset(cardinal id) {
|
||||
type = CT_915G;
|
||||
break;
|
||||
|
||||
+ case 0x25888086:
|
||||
+ type = CT_E7221;
|
||||
+ break;
|
||||
+
|
||||
case 0x25908086:
|
||||
type = CT_915GM;
|
||||
break;
|
||||
@@ -509,6 +513,7 @@ void unlock_vbios(vbios_map * map) {
|
||||
case CT_845G:
|
||||
case CT_865G:
|
||||
case CT_915G:
|
||||
+ case CT_E7221:
|
||||
case CT_915GM:
|
||||
case CT_945G:
|
||||
case CT_945GM:
|
||||
@@ -550,6 +555,7 @@ void relock_vbios(vbios_map * map) {
|
||||
case CT_845G:
|
||||
case CT_865G:
|
||||
case CT_915G:
|
||||
+ case CT_E7221:
|
||||
case CT_915GM:
|
||||
case CT_945G:
|
||||
case CT_945GM:
|
||||
@@ -800,6 +806,9 @@ int parse_args(int argc, char *argv[], c
|
||||
else if (!strcmp(argv[index], "915G")) {
|
||||
*forced_chipset = CT_915G;
|
||||
}
|
||||
+ else if (!strcmp(argv[index], "E7221")) {
|
||||
+ *forced_chipset = CT_E7221;
|
||||
+ }
|
||||
else if (!strcmp(argv[index], "915GM")) {
|
||||
*forced_chipset = CT_915GM;
|
||||
}
|
||||
21
Makefile
21
Makefile
|
|
@ -1,21 +0,0 @@
|
|||
# Makefile for source rpm: 915resolution
|
||||
# $Id: Makefile,v 1.1 2006/08/02 04:19:54 cweyl Exp $
|
||||
NAME := 915resolution
|
||||
SPECFILE = $(firstword $(wildcard *.spec))
|
||||
|
||||
define find-makefile-common
|
||||
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
|
||||
endef
|
||||
|
||||
MAKEFILE_COMMON := $(shell $(find-makefile-common))
|
||||
|
||||
ifeq ($(MAKEFILE_COMMON),)
|
||||
# attept a checkout
|
||||
define checkout-makefile-common
|
||||
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
|
||||
endef
|
||||
|
||||
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
|
||||
endif
|
||||
|
||||
include $(MAKEFILE_COMMON)
|
||||
Reference in a new issue