diff options
Diffstat (limited to 'driver/xf86-video-siliconmotion')
-rw-r--r-- | driver/xf86-video-siliconmotion/ChangeLog | 35 | ||||
-rw-r--r-- | driver/xf86-video-siliconmotion/compile | 2 | ||||
-rw-r--r-- | driver/xf86-video-siliconmotion/configure | 20 | ||||
-rw-r--r-- | driver/xf86-video-siliconmotion/configure.ac | 2 | ||||
-rw-r--r-- | driver/xf86-video-siliconmotion/src/compat-api.h | 5 | ||||
-rw-r--r-- | driver/xf86-video-siliconmotion/src/smi.h | 1 | ||||
-rw-r--r-- | driver/xf86-video-siliconmotion/src/smi_driver.c | 2 | ||||
-rw-r--r-- | driver/xf86-video-siliconmotion/src/smi_exa.c | 4 | ||||
-rw-r--r-- | driver/xf86-video-siliconmotion/src/smi_xaa.c | 18 |
9 files changed, 67 insertions, 22 deletions
diff --git a/driver/xf86-video-siliconmotion/ChangeLog b/driver/xf86-video-siliconmotion/ChangeLog index 6d8e7c88f..12dd31fbe 100644 --- a/driver/xf86-video-siliconmotion/ChangeLog +++ b/driver/xf86-video-siliconmotion/ChangeLog @@ -1,3 +1,38 @@ +commit d269962724b57e21142c9e1c6631a45a46d87b47 +Author: Matt Turner <mattst88@gmail.com> +Date: Tue Jan 17 14:44:51 2017 -0800 + + xf86-video-siliconmotion 1.7.9 + + Signed-off-by: Matt Turner <mattst88@gmail.com> + +commit e67f3949648c20e16ac756ae28ea4a2b4a1d0f4c +Author: Adam Jackson <ajax@redhat.com> +Date: Tue Jul 19 10:03:56 2016 -0400 + + Adapt Block/WakeupHandler signature for ABI 23 + + Signed-off-by: Adam Jackson <ajax@redhat.com> + +commit 647e5a93d9387e3bc8d2c8569e3a5f996acfb169 +Author: Thomas Klausner <wiz@NetBSD.org> +Date: Mon Sep 14 18:36:32 2015 +0200 + + Use X11/Xarch.h for endian detection. + + Reviewed-by: Connor Behan <connor.behan@gmail.com> + +commit a4e406c20ab0590214f779c2319ac7b92594a606 +Author: Connor Behan <connor.behan@gmail.com> +Date: Sun Aug 23 11:46:37 2015 -0400 + + Check for drawables before compositing + + This should prevent a crash when something like Cairo tries to composite + a solid picture. + + Signed-off-by: Connor Behan <connor.behan@gmail.com> + commit 70d3d3a384651e5d22840a0de8644eb8b10c5775 Author: Julien Cristau <jcristau@debian.org> Date: Sat May 9 16:56:51 2015 +0200 diff --git a/driver/xf86-video-siliconmotion/compile b/driver/xf86-video-siliconmotion/compile index 531136b06..a85b723c7 100644 --- a/driver/xf86-video-siliconmotion/compile +++ b/driver/xf86-video-siliconmotion/compile @@ -3,7 +3,7 @@ scriptversion=2012-10-14.11; # UTC -# Copyright (C) 1999-2013 Free Software Foundation, Inc. +# Copyright (C) 1999-2014 Free Software Foundation, Inc. # Written by Tom Tromey <tromey@cygnus.com>. # # This program is free software; you can redistribute it and/or modify diff --git a/driver/xf86-video-siliconmotion/configure b/driver/xf86-video-siliconmotion/configure index a03eeaa4c..76f23c209 100644 --- a/driver/xf86-video-siliconmotion/configure +++ b/driver/xf86-video-siliconmotion/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for xf86-video-siliconmotion 1.7.8. +# Generated by GNU Autoconf 2.69 for xf86-video-siliconmotion 1.7.9. # # Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/siliconmotion>. # @@ -591,8 +591,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='xf86-video-siliconmotion' PACKAGE_TARNAME='xf86-video-siliconmotion' -PACKAGE_VERSION='1.7.8' -PACKAGE_STRING='xf86-video-siliconmotion 1.7.8' +PACKAGE_VERSION='1.7.9' +PACKAGE_STRING='xf86-video-siliconmotion 1.7.9' PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/siliconmotion' PACKAGE_URL='' @@ -1366,7 +1366,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures xf86-video-siliconmotion 1.7.8 to adapt to many kinds of systems. +\`configure' configures xf86-video-siliconmotion 1.7.9 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1437,7 +1437,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of xf86-video-siliconmotion 1.7.8:";; + short | recursive ) echo "Configuration of xf86-video-siliconmotion 1.7.9:";; esac cat <<\_ACEOF @@ -1569,7 +1569,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -xf86-video-siliconmotion configure 1.7.8 +xf86-video-siliconmotion configure 1.7.9 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1984,7 +1984,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by xf86-video-siliconmotion $as_me 1.7.8, which was +It was created by xf86-video-siliconmotion $as_me 1.7.9, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -10458,7 +10458,7 @@ fi # Define the identity of the package. PACKAGE='xf86-video-siliconmotion' - VERSION='1.7.8' + VERSION='1.7.9' cat >>confdefs.h <<_ACEOF @@ -18766,7 +18766,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by xf86-video-siliconmotion $as_me 1.7.8, which was +This file was extended by xf86-video-siliconmotion $as_me 1.7.9, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -18832,7 +18832,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -xf86-video-siliconmotion config.status 1.7.8 +xf86-video-siliconmotion config.status 1.7.9 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/driver/xf86-video-siliconmotion/configure.ac b/driver/xf86-video-siliconmotion/configure.ac index 431a5648b..ad388e177 100644 --- a/driver/xf86-video-siliconmotion/configure.ac +++ b/driver/xf86-video-siliconmotion/configure.ac @@ -23,7 +23,7 @@ # Initialize Autoconf AC_PREREQ([2.60]) AC_INIT([xf86-video-siliconmotion], - [1.7.8], + [1.7.9], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/siliconmotion], [xf86-video-siliconmotion]) diff --git a/driver/xf86-video-siliconmotion/src/compat-api.h b/driver/xf86-video-siliconmotion/src/compat-api.h index 6bc946fd6..89976e41c 100644 --- a/driver/xf86-video-siliconmotion/src/compat-api.h +++ b/driver/xf86-video-siliconmotion/src/compat-api.h @@ -75,8 +75,13 @@ #define SCREEN_INIT_ARGS_DECL ScreenPtr pScreen, int argc, char **argv +#if ABI_VIDEODRV_VERSION >= SET_ABI_VERSION(23, 0) +#define BLOCKHANDLER_ARGS_DECL ScreenPtr arg, pointer pTimeout +#define BLOCKHANDLER_ARGS arg, pTimeout +#else #define BLOCKHANDLER_ARGS_DECL ScreenPtr arg, pointer pTimeout, pointer pReadmask #define BLOCKHANDLER_ARGS arg, pTimeout, pReadmask +#endif #define CLOSE_SCREEN_ARGS_DECL ScreenPtr pScreen #define CLOSE_SCREEN_ARGS pScreen diff --git a/driver/xf86-video-siliconmotion/src/smi.h b/driver/xf86-video-siliconmotion/src/smi.h index 5e4489257..2742c8d9e 100644 --- a/driver/xf86-video-siliconmotion/src/smi.h +++ b/driver/xf86-video-siliconmotion/src/smi.h @@ -34,6 +34,7 @@ authorization from the XFree86 Project and Silicon Motion. #include <string.h> #include <stdio.h> +#include <X11/Xarch.h> #include "xf86.h" #include "xf86_OSproc.h" diff --git a/driver/xf86-video-siliconmotion/src/smi_driver.c b/driver/xf86-video-siliconmotion/src/smi_driver.c index 2568637ae..8949caecf 100644 --- a/driver/xf86-video-siliconmotion/src/smi_driver.c +++ b/driver/xf86-video-siliconmotion/src/smi_driver.c @@ -487,7 +487,7 @@ SMI_PreInit(ScrnInfoPtr pScrn, int flags) if (pScrn->depth > 8) { /* The defaults are OK for us */ rgb zeros = {0, 0, 0}; -#if __BYTE_ORDER == __BIG_ENDIAN +#if X_BYTE_ORDER == X_BIG_ENDIAN rgb masks = {0xff00,0xff0000,0xff000000}; #else rgb masks = {0, 0, 0}; diff --git a/driver/xf86-video-siliconmotion/src/smi_exa.c b/driver/xf86-video-siliconmotion/src/smi_exa.c index 70298ed92..67a6fdde5 100644 --- a/driver/xf86-video-siliconmotion/src/smi_exa.c +++ b/driver/xf86-video-siliconmotion/src/smi_exa.c @@ -623,6 +623,10 @@ SMI_PrepareComposite(int op, PicturePtr pSrcPicture, PicturePtr pMaskPicture, Pi { ScrnInfoPtr pScrn = xf86ScreenToScrn(pDst->drawable.pScreen); SMIPtr pSmi = SMIPTR(pScrn); + + if (!pSrc) return FALSE; + if (!pSrcPicture->pDrawable) return FALSE; + int src_pitch = exaGetPixmapPitch(pSrc) / (pSrc->drawable.bitsPerPixel >> 3); int dst_pitch = exaGetPixmapPitch(pDst) / (pDst->drawable.bitsPerPixel >> 3); diff --git a/driver/xf86-video-siliconmotion/src/smi_xaa.c b/driver/xf86-video-siliconmotion/src/smi_xaa.c index a878098f7..cd861a171 100644 --- a/driver/xf86-video-siliconmotion/src/smi_xaa.c +++ b/driver/xf86-video-siliconmotion/src/smi_xaa.c @@ -211,7 +211,7 @@ SMI_SetupForScreenToScreenCopy(ScrnInfoPtr pScrn, int xdir, int ydir, int rop, ENTER(); DEBUG("xdir=%d ydir=%d rop=%02X trans=%08X\n", xdir, ydir, rop, trans); -#if __BYTE_ORDER == __BIG_ENDIAN +#if X_BYTE_ORDER == X_BIG_ENDIAN if (pScrn->depth >= 24) trans = lswapl(trans); #endif @@ -296,7 +296,7 @@ SMI_SetupForSolidFill(ScrnInfoPtr pScrn, int color, int rop, | SMI_BITBLT | SMI_START_ENGINE; -#if __BYTE_ORDER == __BIG_ENDIAN +#if X_BYTE_ORDER == X_BIG_ENDIAN if (pScrn->depth >= 24) { /* because of the BGR values are in the MSB bytes, * 'white' is not possible and -1 has a different meaning. @@ -408,7 +408,7 @@ SMI_SetupForCPUToScreenColorExpandFill(ScrnInfoPtr pScrn, int fg, int bg, ENTER(); DEBUG("fg=%08X bg=%08X rop=%02X\n", fg, bg, rop); -#if __BYTE_ORDER == __BIG_ENDIAN +#if X_BYTE_ORDER == X_BIG_ENDIAN if (pScrn->depth >= 24) { /* see remark elswere */ if (fg == 0x7FFFFFFF) @@ -431,7 +431,7 @@ SMI_SetupForCPUToScreenColorExpandFill(ScrnInfoPtr pScrn, int fg, int bg, WRITE_DPR(pSmi, 0x18, ~fg); WRITE_DPR(pSmi, 0x20, fg); } else { -#if __BYTE_ORDER == __BIG_ENDIAN +#if X_BYTE_ORDER == X_BIG_ENDIAN if (bg == 0xFFFFFF7F) bg = -1; #endif @@ -498,7 +498,7 @@ SMI_SetupForMono8x8PatternFill(ScrnInfoPtr pScrn, int patx, int paty, int fg, DEBUG("patx=%08X paty=%08X fg=%08X bg=%08X rop=%02X\n", patx, paty, fg, bg, rop); -#if __BYTE_ORDER == __BIG_ENDIAN +#if X_BYTE_ORDER == X_BIG_ENDIAN if (pScrn->depth >= 24) { if (fg == 0x7FFFFFFF) fg = -1; @@ -524,7 +524,7 @@ SMI_SetupForMono8x8PatternFill(ScrnInfoPtr pScrn, int patx, int paty, int fg, WRITE_DPR(pSmi, 0x34, patx); WRITE_DPR(pSmi, 0x38, paty); } else { -#if __BYTE_ORDER == __BIG_ENDIAN +#if X_BYTE_ORDER == X_BIG_ENDIAN if (bg == 0xFFFFFF7F) bg = -1; #endif @@ -582,7 +582,7 @@ SMI_SetupForColor8x8PatternFill(ScrnInfoPtr pScrn, int patx, int paty, int rop, | SMI_COLOR_PATTERN | SMI_START_ENGINE; -#if __BYTE_ORDER == __BIG_ENDIAN +#if X_BYTE_ORDER == X_BIG_ENDIAN if (pScrn->depth >= 24) trans_color = lswapl(trans_color); #endif @@ -666,7 +666,7 @@ SMI_SetupForImageWrite(ScrnInfoPtr pScrn, int rop, unsigned int planemask, DEBUG("rop=%02X trans_color=%08X bpp=%d depth=%d\n", rop, trans_color, bpp, depth); -#if __BYTE_ORDER == __BIG_ENDIAN +#if X_BYTE_ORDER == X_BIG_ENDIAN if (pScrn->depth >= 24) trans_color = lswapl(trans_color); #endif @@ -675,7 +675,7 @@ SMI_SetupForImageWrite(ScrnInfoPtr pScrn, int rop, unsigned int planemask, | SMI_START_ENGINE; if (trans_color != -1) { -#if __BYTE_ORDER == __BIG_ENDIAN +#if X_BYTE_ORDER == X_BIG_ENDIAN if (trans_color == 0xFFFFFF7F) trans_color = -1; #endif |