summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFerris McCormick <fmccor@gentoo.org>2004-05-27 20:14:23 +0000
committerFerris McCormick <fmccor@gentoo.org>2004-05-27 20:14:23 +0000
commit81207c278e1b402edfd6eebbe02fd5377eeaa2f2 (patch)
tree6ddfb8d92d0747de1b99213c63f09debae3f765d /x11-misc/afbinit
parentAdded v4l2 use flag for mpeg4ip-1.1 (diff)
downloadgentoo-2-81207c278e1b402edfd6eebbe02fd5377eeaa2f2.tar.gz
gentoo-2-81207c278e1b402edfd6eebbe02fd5377eeaa2f2.tar.bz2
gentoo-2-81207c278e1b402edfd6eebbe02fd5377eeaa2f2.zip
Add code to detect afb (Elite frame buffer) when using 2.6.x kernel.
Diffstat (limited to 'x11-misc/afbinit')
-rw-r--r--x11-misc/afbinit/ChangeLog9
-rw-r--r--x11-misc/afbinit/Manifest9
-rw-r--r--x11-misc/afbinit/afbinit-1.0.1-r2.ebuild41
-rw-r--r--x11-misc/afbinit/files/digest-afbinit-1.0.1-r21
-rw-r--r--x11-misc/afbinit/files/rc.afb-1.0.1-r2.patch60
5 files changed, 116 insertions, 4 deletions
diff --git a/x11-misc/afbinit/ChangeLog b/x11-misc/afbinit/ChangeLog
index 02b79e352fcb..8421a6efd5c0 100644
--- a/x11-misc/afbinit/ChangeLog
+++ b/x11-misc/afbinit/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for x11-misc/afbinit
# Copyright 2000-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-misc/afbinit/ChangeLog,v 1.4 2004/04/14 09:09:01 aliz Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-misc/afbinit/ChangeLog,v 1.5 2004/05/27 20:14:23 fmccor Exp $
+
+*afbinit-1.0.1-r2 (27 May 2004)
+
+ 27 May 2004; Ferris McCormick <fmccor@gentoo.org> afbinit-1.0.1-r2.ebuild,
+ files/rc.afb-1.0.1-r2.patch:
+ Version bump to add code to load the afb microcode for kernel 2.6.x series as
+ well as for 2.4.x.
14 Apr 2004; Daniel Ahlberg <aliz@gentoo.org> afbinit-1.0.1-r1.ebuild,
afbinit-1.0.1.ebuild:
diff --git a/x11-misc/afbinit/Manifest b/x11-misc/afbinit/Manifest
index 3d6db03159b6..afc01c976025 100644
--- a/x11-misc/afbinit/Manifest
+++ b/x11-misc/afbinit/Manifest
@@ -1,7 +1,10 @@
-MD5 f29cbb399eb2fd6a28190eb73150fc88 afbinit-1.0.1.ebuild 732
MD5 5e92029e82ccbdfa3544c5385f9a58e8 afbinit-1.0.1-r1.ebuild 815
-MD5 8a761f7b1a89cc1e482c73ef3b6bd041 ChangeLog 844
MD5 9ba3ceca3ae81ec759fbb9a277c0e45c metadata.xml 165
-MD5 7cc0fd6a5f8e9a0318e45755e3cf9748 files/afbinit.init 361
+MD5 45b18df3b4018b8c5c82ab3cae0d8284 afbinit-1.0.1-r2.ebuild 1076
+MD5 f29cbb399eb2fd6a28190eb73150fc88 afbinit-1.0.1.ebuild 732
+MD5 797e629109361fbef353cd255589ccc0 ChangeLog 1087
MD5 90bf5556bac035420dd69ae4466ff9a2 files/digest-afbinit-1.0.1-r1 64
+MD5 90bf5556bac035420dd69ae4466ff9a2 files/digest-afbinit-1.0.1-r2 64
+MD5 7cc0fd6a5f8e9a0318e45755e3cf9748 files/afbinit.init 361
MD5 90bf5556bac035420dd69ae4466ff9a2 files/digest-afbinit-1.0.1 64
+MD5 194a2423d8a3f0398f958d989f891c91 files/rc.afb-1.0.1-r2.patch 1594
diff --git a/x11-misc/afbinit/afbinit-1.0.1-r2.ebuild b/x11-misc/afbinit/afbinit-1.0.1-r2.ebuild
new file mode 100644
index 000000000000..a1adacec2468
--- /dev/null
+++ b/x11-misc/afbinit/afbinit-1.0.1-r2.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2004 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-misc/afbinit/afbinit-1.0.1-r2.ebuild,v 1.1 2004/05/27 20:14:23 fmccor Exp $
+
+inherit eutils
+
+DESCRIPTION="loads the microcode for Elite3D framebuffers to use X"
+HOMEPAGE="I dont have a home :("
+SRC_URI="http://cvs.gentoo.org/~weeve/files/${P}.tar.bz2"
+IUSE=""
+
+LICENSE="GPL-1"
+SLOT="0"
+KEYWORDS="-* -sparc"
+
+DEPEND="virtual/glibc"
+
+src_unpack() {
+ unpack ${A}
+ ##
+ # Patch rc.afb to handle both kernels 2.4.x and 2.6.x
+ einfo "Patching to handle both kernel 2.4.x and 2.6.x style afb identification"
+ cd ${S}
+ epatch ${FILESDIR}/rc.afb-${PVR}.patch || die "Cannot patch rc.afb init script"
+}
+
+src_compile() {
+ emake || die "make failed"
+}
+
+src_install() {
+ dosbin afbinit
+ dosbin rc.afb
+ exeinto /etc/init.d ; newexe ${FILESDIR}/afbinit.init afbinit
+}
+
+pkg_postinst() {
+ einfo "To use afbinit, you'll need the AFB microcode."
+ einfo "This is available via a Solaris install at /usr/lib/afb.ucode"
+ einfo "or via sun.com"
+}
diff --git a/x11-misc/afbinit/files/digest-afbinit-1.0.1-r2 b/x11-misc/afbinit/files/digest-afbinit-1.0.1-r2
new file mode 100644
index 000000000000..fae08145a46a
--- /dev/null
+++ b/x11-misc/afbinit/files/digest-afbinit-1.0.1-r2
@@ -0,0 +1 @@
+MD5 e8fe8ac0fc16d942ff3b1508e8324e6a afbinit-1.0.1.tar.bz2 3288
diff --git a/x11-misc/afbinit/files/rc.afb-1.0.1-r2.patch b/x11-misc/afbinit/files/rc.afb-1.0.1-r2.patch
new file mode 100644
index 000000000000..6244a4f2e40c
--- /dev/null
+++ b/x11-misc/afbinit/files/rc.afb-1.0.1-r2.patch
@@ -0,0 +1,60 @@
+--- rc.afb- 2004-05-27 17:59:23.549406000 +0000
++++ rc.afb 2004-05-27 18:32:34.709406000 +0000
+@@ -10,25 +10,44 @@
+ exit 0
+ fi
+
+-if [ `/bin/dmesg | /bin/grep -c "Elite 3D"` -eq 0 ]
++# The microcode loader binary and the microcode
++# itself must exist.
++if [ ! -x /usr/sbin/afbinit -o ! -f /usr/lib/afb.ucode ]
+ then
+ exit 0
+ fi
+
+-# The microcode loader binary and the microcode
+-# itself must exist.
+-if [ ! -x /usr/sbin/afbinit -o ! -f /usr/lib/afb.ucode ]
++# Make FB device list, depending on which kind of kernel we have.
++# First, try kernel 2.4.x
++
++if [ `/bin/dmesg | /bin/grep -c "Elite 3D"` -gt 0 ]
+ then
++
++ afb_devs=`/bin/dmesg | /bin/egrep -i "Elite 3D" | /bin/sed 's/\:.*//'`
++
++ # Load microcode onto each card.
++ for AFB in ${afb_devs}
++ do
++ echo -n "${AFB}: Loading Elite3D microcode... "
++ /usr/sbin/afbinit /dev/${AFB} /usr/lib/afb.ucode
++ echo "done."
++ done
+ exit 0
+ fi
++##
++# OK, we're not kernel 2.4.x
++# try kernel 2.6.x
+
+-# Make FB device list.
+-afb_devs=`/bin/dmesg | /bin/egrep -i "Elite 3D" | /bin/sed 's/\:.*//'`
++if [ `/bin/dmesg | /bin/grep -c "ffb: AFB"` -gt 0 ]
++then
+
+-# Load microcode onto each card.
+-for AFB in ${afb_devs}
+-do
+- echo -n "${AFB}: Loading Elite3D microcode... "
+- /usr/sbin/afbinit /dev/${AFB} /usr/lib/afb.ucode
+- echo "done."
+-done
++ afb_devs=`/bin/cat -s /proc/fb | /bin/egrep -i "Elite 3D" | /bin/sed 's/\ .*//'`
++ # Load microcode onto each card.
++ for AFB in ${afb_devs}
++ do
++ echo -n "/dev/fb/${AFB}: Loading Elite3D microcode... "
++ /usr/sbin/afbinit /dev/fb/${AFB} /usr/lib/afb.ucode
++ echo "done."
++ done
++ exit 0
++fi