summaryrefslogtreecommitdiff
path: root/hw/xfree86
diff options
context:
space:
mode:
authorMartin Bochnig <mb1x@gmx.com>2006-06-26 01:52:24 +0200
committerAlan Coopersmith <alanc@alf.(none)>2006-06-29 16:25:36 -0700
commit6bd4c254396cb0f4e8ae21ff455ebb15cd9f4f10 (patch)
treed64670db668ae991ec233e8a42c652ceb2598f8f /hw/xfree86
parent54d9acd5113318274e291abab4554b8e678227df (diff)
Updated Solaris aperture driver to build on sun4v & amd64 kernels
Updated for Solaris 10 changes to DDI
Diffstat (limited to 'hw/xfree86')
-rw-r--r--hw/xfree86/os-support/solaris/apSolaris.shar378
1 files changed, 208 insertions, 170 deletions
diff --git a/hw/xfree86/os-support/solaris/apSolaris.shar b/hw/xfree86/os-support/solaris/apSolaris.shar
index c8e2cfa49..a3548f7b4 100644
--- a/hw/xfree86/os-support/solaris/apSolaris.shar
+++ b/hw/xfree86/os-support/solaris/apSolaris.shar
@@ -1,40 +1,28 @@
#!/bin/sh
-# $XFree86$
-# This is a shell archive (produced by GNU sharutils 4.2c).
-# To extract the files from this archive, save it to some FILE, remove
-# everything before the `!/bin/sh' line above, then type `sh FILE'.
#
-# Made on 2002-10-04 13:41 MDT by <root@abcyxhiz>.
-# Source directory was `/archives'.
+# This is a shell archive. Save it in a file, remove anything before
+# this line, and then unpack it by entering "sh file". Note, it may
+# create directories; files and directories will be owned by you and
+# have default permissions.
+# Made on Sun Jun 25 20:24:59 CEST 2006 by Martin Bochnig at martux.org
#
-# Existing files will *not* be overwritten unless `-c' is specified.
-# This format requires very little intelligence at unshar time.
-# "if test", "echo", "mkdir", and "sed" may be needed.
+# This archive contains:
#
-# This shar contains:
-# length mode name
-# ------ ---------- ------------------------------------------
-# 1521 -rw-r--r-- aperture/Makefile
-# 1659 -rw-r--r-- aperture/README
-# 7557 -rw-r--r-- aperture/aperture.c
-# 450 -rw-r--r-- aperture/aperture.conf
-# 87 -rw-r--r-- aperture/devlink.tab
-# 1062 -rw-r--r-- aperture/Makefile.sun4u
+# ./aperture
+#
+# ./aperture/Makefile
+# ./aperture/Makefile.amd64
+# ./aperture/Makefile.sparcv9
+# ./aperture/README
+# ./aperture/aperture.c
+# ./aperture/aperture.conf
+# ./aperture/devlink.tab
#
-echo=echo
-shar_tty= shar_n= shar_c='
-'
-mkdir _sh09806 || ( echo 'failed to create locking directory' '_sh09806'; exit 1 )
-# ============= aperture/Makefile ==============
-if test ! -d 'aperture'; then
- $echo $echo_n 'x -' 'aperture: '$echo_c
- if mkdir 'aperture'; then $echo 'created'; else $echo 'failed to create'; fi
-fi
-if test -f 'aperture/Makefile' && test "$first_param" != -c; then
- $echo 'x -' SKIPPING 'aperture/Makefile' '(file already exists)'
-else
- $echo 'x -' extracting 'aperture/Makefile' '(text)'
- sed 's/^X//' << 'SHAR_EOF' > 'aperture/Makefile' &&
+echo c - ./aperture
+mkdir -p ./aperture > /dev/null 2>&1
+#
+echo x - ./aperture/Makefile
+sed 's/^X//' >./aperture/Makefile << 'END-of-./aperture/Makefile'
X#
X# File: makefile for aperture Framebuffer Driver
X# Author: Doug Anson (danson@lgc.com)
@@ -46,14 +34,22 @@ X# Modified: Marc Aurele La France (tsi@xfree86.org)
X# Date: 2001.06.08
X# - SPARC support, cleanup and turf aptest.
X#
-X# >>NOTE<< Have a look at Makefile.sun4u for sun4u specifics.
+X# >>NOTE<< Have a look at Makefile.sparcv9 for specifics.
+X#
+X# Modified: Martin Bochnig (martin@martux.org)
+X# Date: 2006.06.24
+X# - Slightly modified to also build on Solaris 10 and 11.
+X# - amd64 64 bit kernel support
+X# - cosmetical changes to also support sun4v, not only sun4u
+X#
+X# >>NOTE<< Have a look at Makefile.amd64 for amd64 specifics.
X#
X# GNU gcc compiler
XCC=gcc
XCFLGS=-fno-builtin -Wall -O3
X
X#
-X# Proworks compiler
+X# SUNWspro compiler
X#CC=/opt/SUNWspro/bin/cc
X#CFLGS=-Xa -xnolib -xO3
X
@@ -75,26 +71,26 @@ X# Make rules
Xall: $(DRIVER)
X
X$(DRIVER): $(OBJS)
-X @if [ -f "Makefile.`uname -m`" ]; then \
-X make -f Makefile.`uname -m` $(DRIVER); \
+X @if [ -f "Makefile.`isainfo -k`" ]; then \
+X make -f Makefile.`isainfo -k` $(DRIVER); \
X else \
X rm -f $(DRIVER); \
X ld -r -o $(DRIVER) $(OBJS); \
X fi
X
Xinstall: $(DRIVER)
-X @if [ -f "Makefile.`uname -m`" ]; then \
-X make -f Makefile.`uname -m` install; \
+X @if [ -f "Makefile.`isainfo -k`" ]; then \
+X make -f Makefile.`isainfo -k` install; \
X else \
X cp aperture.conf /kernel/drv; \
X cp $(DRIVER) /kernel/drv; \
X fi
X
Xadd_drv:
-X @if [ -f "Makefile.`uname -m`" ]; then \
-X make -f Makefile.`uname -m` add_drv; \
+X @if [ -f "Makefile.`isainfo -k`" ]; then \
+X make -f Makefile.`isainfo -k` add_drv; \
X else \
-X add_drv /kernel/drv/aperture; \
+X add_drv aperture; \
X fi
X
Xclean:
@@ -106,29 +102,156 @@ X.c.i:
X $(CC) -E $(CFLAGS) $*.c > $@
X
X.c.o:
-X @if [ -f "Makefile.`uname -m`" ]; then \
-X make -f Makefile.`uname -m` $@; \
+X @if [ -f "Makefile.`isainfo -k`" ]; then \
+X make -f Makefile.`isainfo -k` $@; \
X else \
X rm -f $@; \
X $(CC) -c $(CFLAGS) $*.c -o $@; \
X fi
-SHAR_EOF
- : || $echo 'restore of' 'aperture/Makefile' 'failed'
-fi
-# ============= aperture/README ==============
-if test -f 'aperture/README' && test "$first_param" != -c; then
- $echo 'x -' SKIPPING 'aperture/README' '(file already exists)'
-else
- $echo 'x -' extracting 'aperture/README' '(text)'
- sed 's/^X//' << 'SHAR_EOF' > 'aperture/README' &&
-XFramebuffer apperture driver.
+END-of-./aperture/Makefile
+echo x - ./aperture/Makefile.amd64
+sed 's/^X//' >./aperture/Makefile.amd64 << 'END-of-./aperture/Makefile.amd64'
+X#
+X# File: Makefile for aperture Framebuffer Driver
+X# Author: Doug Anson (danson@lgc.com)
+X# Date: 2/15/94
+X# Modified: David Holland (davidh@use.com)
+X# Date: 2/23/94
+X# - Changed name, and debugging structure
+X# Modified: Marc Aurele La France (tsi@xfree86.org)
+X# Date: 2001.06.08
+X# - SPARC support, cleanup and turf aptest.
+X# Modified: Martin Bochnig (martin@martux.org)
+X# - amd64 64 bit kernel support, cosmetics and also
+X# supporting sun4v (and arbitrary sparcv9) platforms
+X# as well as SunOS 5.10 or higher now
+X# - Changed name
+X#
+X
+X#
+X# GNU gcc compiler, version 3.2 or later
+X#
+XCC=gcc
+XCFLGS=-fno-builtin -Wall -O3 -m64 -mcmodel=kernel
+X
+X#
+X# SUNWspro compiler (untested, might not properly work for amd64 here)
+X#CC=/opt/SUNWspro/bin/cc
+X#CFLGS=-Xa -xarch=v9 -xnolib -xO3
+X
+X#
+X# Debug error reporting
+X#DEBUG_FLG=
+X#DEBUG_FLG=-DAPERTURE_DEBUG
+X
+X#
+X# Files and object declarations
+XKERNEL_FLGS=-D_KERNEL -DSUNDDI
+XCFLAGS= $(CFLGS) $(KERNEL_FLGS) $(DEBUG_FLG)
+XCFILES= aperture.c
+XOBJS= aperture.o
+XDRIVER= aperture
+X
+X#
+X# Make rules
+Xall: $(DRIVER)
+X
+X$(DRIVER): $(OBJS)
+X rm -f $(DRIVER)
+X ld -r -o $(DRIVER) $(OBJS)
+X
+Xinstall: $(DRIVER)
+X cp aperture.conf /kernel/drv
+X cp $(DRIVER) /kernel/drv/amd64
+X
+Xadd_drv:
+X add_drv aperture
+X
+Xclean:
+X rm -f *% *.BAK $(OBJS) $(DRIVER) core
+X
+X.SUFFIXES: .i
+X
+X.c.i:
+X $(CC) -E $(CFLAGS) $*.c > $@
+END-of-./aperture/Makefile.amd64
+echo x - ./aperture/Makefile.sparcv9
+sed 's/^X//' >./aperture/Makefile.sparcv9 << 'END-of-./aperture/Makefile.sparcv9'
+X#
+X# File: makefile for aperture Framebuffer Driver
+X# Author: Doug Anson (danson@lgc.com)
+X# Date: 2/15/94
+X# Modified: David Holland (davidh@use.com)
+X# Date: 2/23/94
+X# - Changed name, and debugging structure
+X# Modified: Marc Aurele La France (tsi@xfree86.org)
+X# Date: 2001.06.08
+X# - SPARC support, cleanup and turf aptest.
+X# Modified: Martin Bochnig (martin@martux.org)
+X# Date: 2006.06.24
+X# - Changed name for generic sparcv9 support
+X# - updated to better work with Solaris 10 and 11
+X#
+X
+X#
+X# GNU gcc compiler, version 3.2 or later
+X#
+XCC=gcc
+XCFLGS=-fno-builtin -Wall -O3 -m64
+X
+X#
+X# SUNWspro compiler
+X#CC=/opt/SUNWspro/bin/cc
+X#CFLGS=-Xa -xarch=v9 -xnolib -xO3
+X
+X#
+X# Debug error reporting
+X#DEBUG_FLG=
+X#DEBUG_FLG=-DAPERTURE_DEBUG
+X
+X#
+X# Files and object declarations
+XKERNEL_FLGS=-D_KERNEL -DSUNDDI
+XCFLAGS= $(CFLGS) $(KERNEL_FLGS) $(DEBUG_FLG)
+XCFILES= aperture.c
+XOBJS= aperture.o
+XDRIVER= aperture
+X
+X#
+X# Make rules
+Xall: $(DRIVER)
+X
+X$(DRIVER): $(OBJS)
+X rm -f $(DRIVER)
+X ld -r -o $(DRIVER) $(OBJS)
+X
+Xinstall: $(DRIVER)
+X cp aperture.conf /kernel/drv
+X cp $(DRIVER) /kernel/drv/sparcv9
+X
+Xadd_drv:
+X add_drv aperture
+X
+Xclean:
+X rm -f *% *.BAK $(OBJS) $(DRIVER) core
+X
+X.SUFFIXES: .i
+X
+X.c.i:
+X $(CC) -E $(CFLAGS) $*.c > $@
+END-of-./aperture/Makefile.sparcv9
+echo x - ./aperture/README
+sed 's/^X//' >./aperture/README << 'END-of-./aperture/README'
+XFramebuffer aperture driver.
X
XThis driver was written to provide a device that, unlike /dev/mem, allows
Xmmap()'ing of ranges beyond installed memory.
X
-XThe original x86-based version of this driver was the corroborative work of
+XThe original x86-based version of this driver was the collaborative work of
XDoug Anson (danson@lgc.com), and David Holland (davidh@use.com). It has since
-Xbeen rewritten to also work on sun4u machines.
+Xbeen rewritten to also work on sparc machines and - later on - also on sparcv9
+Xand recently amd64 64 bit kernels.
+XIt flawlessly compiles and installs on Solaris 10 and 11 now.
X
X
XInstallation instructions:
@@ -137,23 +260,23 @@ X1) Check the Makefile, for appropriate CC, and CFLAGS definitions. Compiling
X with APERTURE_DEBUG defined means the driver will generate reams of
X debugging output. You'll probably want to leave this off...
X
-X2) type 'make'. The driver and test program should compile with out any
-X problems. There also should not be any warning messages.
+X2) Type 'make' (or 'gmake'). Both the driver and test program should compile
+X without any problems. No warning messages should be generated.
X
X3) Become 'root'.
X
-X4) type 'make install' and 'make add_drv'. The screen should look something
+X4) Type 'make install' and 'make add_drv'. The screen should look something
X like this:
X
X # make install
X cp aperture aperture.conf /kernel/drv
X # make add_drv
-X add_drv /kernel/drv/aperture
+X add_drv aperture
X
-X On a sun4u machine this will mention the /kernel/drv/sparcv9 directory
-X instead of /kernel/drv.
+X On a sparcv9 machine this will mention the /kernel/drv/sparcv9 directory
+X instead of /kernel/drv. Similarily /kernel/drv/amd64 should be used on amd64.
X
-X This installs the driver in the system.
+X This installs the driver to the system.
X
X5) While as root modify the file /etc/devlink.tab, adding these lines:
X
@@ -163,7 +286,7 @@ X
X Add that line exactly as shown. You may also simply add the
X contents of the devlink.tab file supplied to /etc/devlink.tab.
X It contains the lines as well. (Yes, that is a tab between
-X aperture, and fbs, not spaces - very important)
+X aperture and fbs, not spaces - very important)
X
X6) Perform a reconfiguration boot of the system.
X
@@ -171,15 +294,9 @@ X # touch /reconfigure
X # init 6
X
XBug reports, questions, suggestions, etc can be sent to xfree86@xfree86.org.
-SHAR_EOF
- : || $echo 'restore of' 'aperture/README' 'failed'
-fi
-# ============= aperture/aperture.c ==============
-if test -f 'aperture/aperture.c' && test "$first_param" != -c; then
- $echo 'x -' SKIPPING 'aperture/aperture.c' '(file already exists)'
-else
- $echo 'x -' extracting 'aperture/aperture.c' '(text)'
- sed 's/^X//' << 'SHAR_EOF' > 'aperture/aperture.c' &&
+END-of-./aperture/README
+echo x - ./aperture/aperture.c
+sed 's/^X//' >./aperture/aperture.c << 'END-of-./aperture/aperture.c'
X/*
X * Copyright (C) 2001 The XFree86 Project, Inc. All Rights Reserved.
X *
@@ -210,6 +327,13 @@ X/*
X * Aperture driver for Solaris.
X */
X
+X/*
+X * Modified: Martin Bochnig (martin@martux.org)
+X * Log: Commented out obsolete kernel interfaces DDI_IDENTIFIED and DDI_NOT_IDENTIFIED
+X * not supported by SunOS 5.10 or higher anymore,
+X * see http://docs.sun.com/app/docs/doc/819-2255/6n4ibnffr?a=view
+X */
+X
X#include <sys/conf.h>
X#include <sys/ddi.h>
X#include <sys/modctl.h>
@@ -412,9 +536,9 @@ X
X#endif
X
X if (strcmp(ddi_get_name(dip), DEV_IDENT))
-X error = DDI_NOT_IDENTIFIED;
+X error = 1 /* DDI_NOT_IDENTIFIED obsolete since SunOS 5.10 */ ;
X else
-X error = DDI_IDENTIFIED;
+X error = 2 /* DDI_IDENTIFIED obsolete since SunOS 5.10 */ ;
X
X#ifdef APERTURE_DEBUG
X
@@ -465,7 +589,7 @@ X else
X {
X error = ddi_create_minor_node(dip, ddi_get_name(dip), S_IFCHR,
X (minor_t)ddi_get_instance(dip),
-X NULL, NODESPECIFIC_DEV);
+X NULL, 0 /* NODESPECIFIC_DEV obsolete since SunOS 5.10 */ );
X
X if (error == DDI_SUCCESS)
X {
@@ -653,15 +777,9 @@ X#endif
X
X return error;
X}
-SHAR_EOF
- : || $echo 'restore of' 'aperture/aperture.c' 'failed'
-fi
-# ============= aperture/aperture.conf ==============
-if test -f 'aperture/aperture.conf' && test "$first_param" != -c; then
- $echo 'x -' SKIPPING 'aperture/aperture.conf' '(file already exists)'
-else
- $echo 'x -' extracting 'aperture/aperture.conf' '(text)'
- sed 's/^X//' << 'SHAR_EOF' > 'aperture/aperture.conf' &&
+END-of-./aperture/aperture.c
+echo x - ./aperture/aperture.conf
+sed 's/^X//' >./aperture/aperture.conf << 'END-of-./aperture/aperture.conf'
X#
X# Copyright 1994 Doug Anson, danson@lgc.com & David Holland, davidh@use.com
X#
@@ -678,91 +796,11 @@ X#
X# Purpose: This conf file is used by the aperture driver.
X#
Xname="aperture" parent="pseudo";
-SHAR_EOF
- : || $echo 'restore of' 'aperture/aperture.conf' 'failed'
-fi
-# ============= aperture/devlink.tab ==============
-if test -f 'aperture/devlink.tab' && test "$first_param" != -c; then
- $echo 'x -' SKIPPING 'aperture/devlink.tab' '(file already exists)'
-else
- $echo 'x -' extracting 'aperture/devlink.tab' '(text)'
- sed 's/^X//' << 'SHAR_EOF' > 'aperture/devlink.tab' &&
+END-of-./aperture/aperture.conf
+echo x - ./aperture/devlink.tab
+sed 's/^X//' >./aperture/devlink.tab << 'END-of-./aperture/devlink.tab'
X# The following entry is for the aperture driver
Xtype=ddi_pseudo;name=aperture fbs/\M0
-SHAR_EOF
- : || $echo 'restore of' 'aperture/devlink.tab' 'failed'
-fi
-# ============= aperture/Makefile.sun4u ==============
-if test -f 'aperture/Makefile.sun4u' && test "$first_param" != -c; then
- $echo 'x -' SKIPPING 'aperture/Makefile.sun4u' '(file already exists)'
-else
- $echo 'x -' extracting 'aperture/Makefile.sun4u' '(text)'
- sed 's/^X//' << 'SHAR_EOF' > 'aperture/Makefile.sun4u' &&
-X#
-X# File: makefile for aperture Framebuffer Driver
-X# Author: Doug Anson (danson@lgc.com)
-X# Date: 2/15/94
-X# Modified: David Holland (davidh@use.com)
-X# Date: 2/23/94
-X# - Changed name, and debugging structure
-X# Modified: Marc Aurele La France (tsi@xfree86.org)
-X# Date: 2001.06.08
-X# - SPARC support, cleanup and turf aptest.
-X#
-X
-X#
-X# GNU gcc compiler, version 3.2 or later
-X#
-XCC=gcc
-XCFLGS=-fno-builtin -Wall -O3 -m64
-X
-X#
-X# Proworks compiler
-X#CC=/opt/SUNWspro/bin/cc
-X#CFLGS=-Xa -xarch=v9 -xnolib -xO3
-X
-X#
-X# Debug error reporting
-X#DEBUG_FLG=
-X#DEBUG_FLG=-DAPERTURE_DEBUG
-X
-X#
-X# Files and object declarations
-XKERNEL_FLGS=-D_KERNEL -DSUNDDI
-XCFLAGS= $(CFLGS) $(KERNEL_FLGS) $(DEBUG_FLG)
-XCFILES= aperture.c
-XOBJS= aperture.o
-XDRIVER= aperture
-X
-X#
-X# Make rules
-Xall: $(DRIVER)
-X
-X$(DRIVER): $(OBJS)
-X rm -f $(DRIVER)
-X ld -r -o $(DRIVER) $(OBJS)
-X
-Xinstall: $(DRIVER)
-X cp aperture.conf /kernel/drv
-X cp $(DRIVER) /kernel/drv/sparcv9
-X
-Xadd_drv:
-X add_drv /kernel/drv/sparcv9/aperture
-X
-Xclean:
-X rm -f *% *.BAK $(OBJS) $(DRIVER) core
-X
-X.SUFFIXES: .i
-X
-X.c.i:
-X $(CC) -E $(CFLAGS) $*.c > $@
-SHAR_EOF
- : || $echo 'restore of' 'aperture/Makefile.sun4u' 'failed'
-fi
-$echo $shar_n 'x -' 'lock directory' "\`_sh09806': " $shar_c
-if rm -fr _sh09806; then
- $echo 'removed'
-else
- $echo 'failed to remove'
-fi
-exit 0
+END-of-./aperture/devlink.tab
+exit
+