Only compile tested.

Index: configure
===================================================================
RCS file: /cvs/xenocara/xserver/configure,v
retrieving revision 1.63
diff -u -p -r1.63 configure
--- configure   11 Oct 2016 22:15:52 -0000      1.63
+++ configure   2 Feb 2017 06:52:46 -0000
@@ -1075,6 +1075,8 @@ I386_VIDEO_FALSE
 I386_VIDEO_TRUE
 HPPA_VIDEO_FALSE
 HPPA_VIDEO_TRUE
+ARM64_VIDEO_FALSE
+ARM64_VIDEO_TRUE
 ARM_VIDEO_FALSE
 ARM_VIDEO_TRUE
 ALPHA_VIDEO_FALSE
@@ -22439,6 +22441,10 @@ DEFAULT_INT10="x86emu"
 
 
 case $host_cpu in
+  aarch64*)
+       ARM64_VIDEO=yes
+       GLX_ARCH_DEFINES="-D__GLX_ALIGN64"
+       ;;
   alpha*)
        ALPHA_VIDEO=yes
        case $host_os in
@@ -22543,6 +22549,14 @@ else
   ARM_VIDEO_FALSE=
 fi
 
+ if test "x$ARM64_VIDEO" = xyes; then
+  ARM64_VIDEO_TRUE=
+  ARM64_VIDEO_FALSE='#'
+else
+  ARM64_VIDEO_TRUE='#'
+  ARM64_VIDEO_FALSE=
+fi
+
  if test "x$HPPA_VIDEO" = xyes; then
   HPPA_VIDEO_TRUE=
   HPPA_VIDEO_FALSE='#'
@@ -31734,6 +31748,10 @@ Usually this means the macro was only in
 fi
 if test -z "${ARM_VIDEO_TRUE}" && test -z "${ARM_VIDEO_FALSE}"; then
   as_fn_error $? "conditional \"ARM_VIDEO\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
+if test -z "${ARM64_VIDEO_TRUE}" && test -z "${ARM64_VIDEO_FALSE}"; then
+  as_fn_error $? "conditional \"ARM64_VIDEO\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${HPPA_VIDEO_TRUE}" && test -z "${HPPA_VIDEO_FALSE}"; then
Index: configure.ac
===================================================================
RCS file: /cvs/xenocara/xserver/configure.ac,v
retrieving revision 1.57
diff -u -p -r1.57 configure.ac
--- configure.ac        13 Aug 2016 14:05:23 -0000      1.57
+++ configure.ac        2 Feb 2017 06:52:17 -0000
@@ -314,6 +314,10 @@ DEFAULT_INT10="x86emu"
 dnl Override defaults as needed for specific platforms:
 
 case $host_cpu in
+  aarch64*)
+       ARM64_VIDEO=yes
+       GLX_ARCH_DEFINES="-D__GLX_ALIGN64"
+       ;;
   alpha*)
        ALPHA_VIDEO=yes
        case $host_os in
@@ -391,6 +395,7 @@ AC_SUBST(GLX_ARCH_DEFINES)
 dnl BSD *_video.c selection
 AM_CONDITIONAL(ALPHA_VIDEO, [test "x$ALPHA_VIDEO" = xyes])
 AM_CONDITIONAL(ARM_VIDEO, [test "x$ARM_VIDEO" = xyes])
+AM_CONDITIONAL(ARM64_VIDEO, [test "x$ARM64_VIDEO" = xyes])
 AM_CONDITIONAL(HPPA_VIDEO, [test "x$HPPA_VIDEO" = xyes])
 AM_CONDITIONAL(I386_VIDEO, [test "x$I386_VIDEO" = xyes])
 AM_CONDITIONAL(LUNA88K_VIDEO, [test "x$LUNA88K_VIDEO" = xyes])
Index: hw/xfree86/os-support/bsd/Makefile.am
===================================================================
RCS file: /cvs/xenocara/xserver/hw/xfree86/os-support/bsd/Makefile.am,v
retrieving revision 1.19
diff -u -p -r1.19 Makefile.am
--- hw/xfree86/os-support/bsd/Makefile.am       16 Sep 2015 19:10:23 -0000      
1.19
+++ hw/xfree86/os-support/bsd/Makefile.am       2 Feb 2017 06:52:17 -0000
@@ -35,6 +35,11 @@ ARCH_SOURCES = arm_video.c \
        $(srcdir)/../shared/ioperm_noop.c
 endif
 
+if ARM64_VIDEO
+ARCH_SOURCES = arm64_video.c \
+       $(srcdir)/../shared/ioperm_noop.c
+endif
+
 if HPPA_VIDEO
 ARCH_SOURCES = hppa_video.c\
        $(srcdir)/../shared/ioperm_noop.c
Index: hw/xfree86/os-support/bsd/Makefile.in
===================================================================
RCS file: /cvs/xenocara/xserver/hw/xfree86/os-support/bsd/Makefile.in,v
retrieving revision 1.41
diff -u -p -r1.41 Makefile.in
--- hw/xfree86/os-support/bsd/Makefile.in       11 Oct 2016 22:15:56 -0000      
1.41
+++ hw/xfree86/os-support/bsd/Makefile.in       2 Feb 2017 06:52:17 -0000
@@ -76,26 +76,29 @@ libbsd_la_LIBADD =
 am__libbsd_la_SOURCES_DIST = $(srcdir)/../shared/posix_tty.c \
        $(srcdir)/../shared/sigio.c $(srcdir)/../shared/vidmem.c \
        bsd_VTsw.c bsd_init.c bsd_bell.c alpha_video.c bsd_ev56.c \
-       arm_video.c $(srcdir)/../shared/ioperm_noop.c hppa_video.c \
-       i386_video.c luna88k_video.c ppc_video.c sgi_video.c \
-       sparc64_video.c bsd_sbus.c $(srcdir)/../shared/agp_noop.c \
-       bsd_agp.c $(srcdir)/../shared/pm_noop.c $(srcdir)/bsd_apm.c \
+       arm64_video.c $(srcdir)/../shared/ioperm_noop.c arm_video.c \
+       hppa_video.c i386_video.c luna88k_video.c ppc_video.c \
+       sgi_video.c sparc64_video.c bsd_sbus.c \
+       $(srcdir)/../shared/agp_noop.c bsd_agp.c \
+       $(srcdir)/../shared/pm_noop.c $(srcdir)/bsd_apm.c \
        $(srcdir)/bsd_kqueue_apm.c $(srcdir)/../shared/kmod_noop.c \
        bsd_kmod.c
-@ALPHA_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_FALSE@@LUNA88K_VIDEO_FALSE@@PPC_VIDEO_FALSE@@SGI_VIDEO_FALSE@@SPARC64_VIDEO_TRUE@am__objects_1
 = sparc64_video.lo \
-@ALPHA_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_FALSE@@LUNA88K_VIDEO_FALSE@@PPC_VIDEO_FALSE@@SGI_VIDEO_FALSE@@SPARC64_VIDEO_TRUE@
    bsd_sbus.lo \
-@ALPHA_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_FALSE@@LUNA88K_VIDEO_FALSE@@PPC_VIDEO_FALSE@@SGI_VIDEO_FALSE@@SPARC64_VIDEO_TRUE@
    ioperm_noop.lo
-@ALPHA_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_FALSE@@LUNA88K_VIDEO_FALSE@@PPC_VIDEO_FALSE@@SGI_VIDEO_TRUE@am__objects_1
 = sgi_video.lo \
-@ALPHA_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_FALSE@@LUNA88K_VIDEO_FALSE@@PPC_VIDEO_FALSE@@SGI_VIDEO_TRUE@
 ioperm_noop.lo
-@ALPHA_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_FALSE@@LUNA88K_VIDEO_FALSE@@PPC_VIDEO_TRUE@am__objects_1
 = ppc_video.lo \
-@ALPHA_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_FALSE@@LUNA88K_VIDEO_FALSE@@PPC_VIDEO_TRUE@
  ioperm_noop.lo
-@ALPHA_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_FALSE@@LUNA88K_VIDEO_TRUE@am__objects_1
 = luna88k_video.lo \
-@ALPHA_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_FALSE@@LUNA88K_VIDEO_TRUE@
   ioperm_noop.lo
-@ALPHA_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_TRUE@am__objects_1
 = i386_video.lo
-@ALPHA_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_TRUE@am__objects_1 = 
hppa_video.lo \
-@ALPHA_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_TRUE@  ioperm_noop.lo
-@ALPHA_VIDEO_FALSE@@ARM_VIDEO_TRUE@am__objects_1 = arm_video.lo \
-@ALPHA_VIDEO_FALSE@@ARM_VIDEO_TRUE@    ioperm_noop.lo
+@ALPHA_VIDEO_FALSE@@ARM64_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_FALSE@@LUNA88K_VIDEO_FALSE@@PPC_VIDEO_FALSE@@SGI_VIDEO_FALSE@@SPARC64_VIDEO_TRUE@am__objects_1
 = sparc64_video.lo \
+@ALPHA_VIDEO_FALSE@@ARM64_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_FALSE@@LUNA88K_VIDEO_FALSE@@PPC_VIDEO_FALSE@@SGI_VIDEO_FALSE@@SPARC64_VIDEO_TRUE@
 bsd_sbus.lo \
+@ALPHA_VIDEO_FALSE@@ARM64_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_FALSE@@LUNA88K_VIDEO_FALSE@@PPC_VIDEO_FALSE@@SGI_VIDEO_FALSE@@SPARC64_VIDEO_TRUE@
 ioperm_noop.lo
+@ALPHA_VIDEO_FALSE@@ARM64_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_FALSE@@LUNA88K_VIDEO_FALSE@@PPC_VIDEO_FALSE@@SGI_VIDEO_TRUE@am__objects_1
 = sgi_video.lo \
+@ALPHA_VIDEO_FALSE@@ARM64_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_FALSE@@LUNA88K_VIDEO_FALSE@@PPC_VIDEO_FALSE@@SGI_VIDEO_TRUE@
      ioperm_noop.lo
+@ALPHA_VIDEO_FALSE@@ARM64_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_FALSE@@LUNA88K_VIDEO_FALSE@@PPC_VIDEO_TRUE@am__objects_1
 = ppc_video.lo \
+@ALPHA_VIDEO_FALSE@@ARM64_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_FALSE@@LUNA88K_VIDEO_FALSE@@PPC_VIDEO_TRUE@
       ioperm_noop.lo
+@ALPHA_VIDEO_FALSE@@ARM64_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_FALSE@@LUNA88K_VIDEO_TRUE@am__objects_1
 = luna88k_video.lo \
+@ALPHA_VIDEO_FALSE@@ARM64_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_FALSE@@LUNA88K_VIDEO_TRUE@
        ioperm_noop.lo
+@ALPHA_VIDEO_FALSE@@ARM64_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_FALSE@@I386_VIDEO_TRUE@am__objects_1
 = i386_video.lo
+@ALPHA_VIDEO_FALSE@@ARM64_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_TRUE@am__objects_1
 = hppa_video.lo \
+@ALPHA_VIDEO_FALSE@@ARM64_VIDEO_FALSE@@ARM_VIDEO_FALSE@@HPPA_VIDEO_TRUE@       
ioperm_noop.lo
+@ALPHA_VIDEO_FALSE@@ARM64_VIDEO_FALSE@@ARM_VIDEO_TRUE@am__objects_1 = 
arm_video.lo \
+@ALPHA_VIDEO_FALSE@@ARM64_VIDEO_FALSE@@ARM_VIDEO_TRUE@ ioperm_noop.lo
+@ALPHA_VIDEO_FALSE@@ARM64_VIDEO_TRUE@am__objects_1 = arm64_video.lo \
+@ALPHA_VIDEO_FALSE@@ARM64_VIDEO_TRUE@  ioperm_noop.lo
 @ALPHA_VIDEO_TRUE@am__objects_1 = alpha_video.lo bsd_ev56.lo
 @AGP_FALSE@am__objects_2 = agp_noop.lo
 @AGP_TRUE@am__objects_2 = bsd_agp.lo
@@ -519,6 +522,9 @@ noinst_LTLIBRARIES = libbsd.la
 @ALPHA_VIDEO_TRUE@     alpha_video.c \
 @ALPHA_VIDEO_TRUE@     bsd_ev56.c
 
+@ARM64_VIDEO_TRUE@ARCH_SOURCES = arm64_video.c \
+@ARM64_VIDEO_TRUE@     $(srcdir)/../shared/ioperm_noop.c
+
 @ARM_VIDEO_TRUE@ARCH_SOURCES = arm_video.c \
 @ARM_VIDEO_TRUE@       $(srcdir)/../shared/ioperm_noop.c
 
@@ -622,6 +628,7 @@ distclean-compile:
 
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/agp_noop.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alpha_video.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/arm64_video.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/arm_video.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bsd_VTsw.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bsd_agp.Plo@am__quote@
--- /dev/null   Fri Feb  3 15:44:58 2017
+++ hw/xfree86/os-support/bsd/arm64_video.c     Thu Feb  2 17:50:50 2017
@@ -0,0 +1,57 @@
+/* $OpenBSD$ */
+/*
+ * Copyright 1992 by Rich Murphey <r...@rice.edu>
+ * Copyright 1993 by David Wexelblat <d...@goblin.org>
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the names of Rich Murphey and David Wexelblat
+ * not be used in advertising or publicity pertaining to distribution of
+ * the software without specific, written prior permission.  Rich Murphey and
+ * David Wexelblat make no representations about the suitability of this
+ * software for any purpose.  It is provided "as is" without express or
+ * implied warranty.
+ *
+ * RICH MURPHEY AND DAVID WEXELBLAT DISCLAIM ALL WARRANTIES WITH REGARD TO
+ * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
+ * FITNESS, IN NO EVENT SHALL RICH MURPHEY OR DAVID WEXELBLAT BE LIABLE FOR
+ * ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
+ * RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+ * CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ *
+ */
+
+#ifdef HAVE_XORG_CONFIG_H
+#include <xorg-config.h>
+#endif
+
+#include <X11/X.h>
+#include "xf86.h"
+#include "xf86Priv.h"
+
+#include "xf86_OSlib.h"
+#include "xf86OSpriv.h"
+
+/***************************************************************************/
+/* Video Memory Mapping section                                            */
+/***************************************************************************/
+
+void
+xf86OSInitVidMem(VidMemInfoPtr pVidMem)
+{
+       pVidMem->initialised = TRUE;
+}
+
+#ifdef X_PRIVSEP
+/*
+ * Do all initialisation that need root privileges
+ */
+_X_EXPORT void
+xf86PrivilegedInit(void)
+{
+       xf86OpenConsole();
+}
+#endif

Reply via email to