Update to xf86-video-siliconmotion 1.7.9

This commit is contained in:
matthieu 2017-02-18 18:08:53 +00:00
parent 8fe54088b8
commit 91607ef1dc
9 changed files with 67 additions and 22 deletions

View File

@ -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 commit 70d3d3a384651e5d22840a0de8644eb8b10c5775
Author: Julien Cristau <jcristau@debian.org> Author: Julien Cristau <jcristau@debian.org>
Date: Sat May 9 16:56:51 2015 +0200 Date: Sat May 9 16:56:51 2015 +0200

View File

@ -3,7 +3,7 @@
scriptversion=2012-10-14.11; # UTC 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>. # Written by Tom Tromey <tromey@cygnus.com>.
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify

View File

@ -1,6 +1,6 @@
#! /bin/sh #! /bin/sh
# Guess values for system-dependent variables and create Makefiles. # 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>. # Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/siliconmotion>.
# #
@ -591,8 +591,8 @@ MAKEFLAGS=
# Identity of this package. # Identity of this package.
PACKAGE_NAME='xf86-video-siliconmotion' PACKAGE_NAME='xf86-video-siliconmotion'
PACKAGE_TARNAME='xf86-video-siliconmotion' PACKAGE_TARNAME='xf86-video-siliconmotion'
PACKAGE_VERSION='1.7.8' PACKAGE_VERSION='1.7.9'
PACKAGE_STRING='xf86-video-siliconmotion 1.7.8' PACKAGE_STRING='xf86-video-siliconmotion 1.7.9'
PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/siliconmotion' PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/siliconmotion'
PACKAGE_URL='' 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. # 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. # This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF 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]... Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1437,7 +1437,7 @@ fi
if test -n "$ac_init_help"; then if test -n "$ac_init_help"; then
case $ac_init_help in 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 esac
cat <<\_ACEOF cat <<\_ACEOF
@ -1569,7 +1569,7 @@ fi
test -n "$ac_init_help" && exit $ac_status test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then if $ac_init_version; then
cat <<\_ACEOF cat <<\_ACEOF
xf86-video-siliconmotion configure 1.7.8 xf86-video-siliconmotion configure 1.7.9
generated by GNU Autoconf 2.69 generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc. Copyright (C) 2012 Free Software Foundation, Inc.
@ -1984,7 +1984,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake. 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 generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@ $ $0 $@
@ -10458,7 +10458,7 @@ fi
# Define the identity of the package. # Define the identity of the package.
PACKAGE='xf86-video-siliconmotion' PACKAGE='xf86-video-siliconmotion'
VERSION='1.7.8' VERSION='1.7.9'
cat >>confdefs.h <<_ACEOF 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 # report actual input values of CONFIG_FILES etc. instead of their
# values after options handling. # values after options handling.
ac_log=" 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 generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES CONFIG_FILES = $CONFIG_FILES
@ -18832,7 +18832,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\ 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, configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\" with options \\"\$ac_cs_config\\"

View File

@ -23,7 +23,7 @@
# Initialize Autoconf # Initialize Autoconf
AC_PREREQ([2.60]) AC_PREREQ([2.60])
AC_INIT([xf86-video-siliconmotion], AC_INIT([xf86-video-siliconmotion],
[1.7.8], [1.7.9],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/siliconmotion], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/siliconmotion],
[xf86-video-siliconmotion]) [xf86-video-siliconmotion])

View File

@ -75,8 +75,13 @@
#define SCREEN_INIT_ARGS_DECL ScreenPtr pScreen, int argc, char **argv #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_DECL ScreenPtr arg, pointer pTimeout, pointer pReadmask
#define BLOCKHANDLER_ARGS arg, pTimeout, pReadmask #define BLOCKHANDLER_ARGS arg, pTimeout, pReadmask
#endif
#define CLOSE_SCREEN_ARGS_DECL ScreenPtr pScreen #define CLOSE_SCREEN_ARGS_DECL ScreenPtr pScreen
#define CLOSE_SCREEN_ARGS pScreen #define CLOSE_SCREEN_ARGS pScreen

View File

@ -34,6 +34,7 @@ authorization from the XFree86 Project and Silicon Motion.
#include <string.h> #include <string.h>
#include <stdio.h> #include <stdio.h>
#include <X11/Xarch.h>
#include "xf86.h" #include "xf86.h"
#include "xf86_OSproc.h" #include "xf86_OSproc.h"

View File

@ -487,7 +487,7 @@ SMI_PreInit(ScrnInfoPtr pScrn, int flags)
if (pScrn->depth > 8) { if (pScrn->depth > 8) {
/* The defaults are OK for us */ /* The defaults are OK for us */
rgb zeros = {0, 0, 0}; rgb zeros = {0, 0, 0};
#if __BYTE_ORDER == __BIG_ENDIAN #if X_BYTE_ORDER == X_BIG_ENDIAN
rgb masks = {0xff00,0xff0000,0xff000000}; rgb masks = {0xff00,0xff0000,0xff000000};
#else #else
rgb masks = {0, 0, 0}; rgb masks = {0, 0, 0};

View File

@ -623,6 +623,10 @@ SMI_PrepareComposite(int op, PicturePtr pSrcPicture, PicturePtr pMaskPicture, Pi
{ {
ScrnInfoPtr pScrn = xf86ScreenToScrn(pDst->drawable.pScreen); ScrnInfoPtr pScrn = xf86ScreenToScrn(pDst->drawable.pScreen);
SMIPtr pSmi = SMIPTR(pScrn); SMIPtr pSmi = SMIPTR(pScrn);
if (!pSrc) return FALSE;
if (!pSrcPicture->pDrawable) return FALSE;
int src_pitch = exaGetPixmapPitch(pSrc) / (pSrc->drawable.bitsPerPixel >> 3); int src_pitch = exaGetPixmapPitch(pSrc) / (pSrc->drawable.bitsPerPixel >> 3);
int dst_pitch = exaGetPixmapPitch(pDst) / (pDst->drawable.bitsPerPixel >> 3); int dst_pitch = exaGetPixmapPitch(pDst) / (pDst->drawable.bitsPerPixel >> 3);

View File

@ -211,7 +211,7 @@ SMI_SetupForScreenToScreenCopy(ScrnInfoPtr pScrn, int xdir, int ydir, int rop,
ENTER(); ENTER();
DEBUG("xdir=%d ydir=%d rop=%02X trans=%08X\n", xdir, ydir, rop, trans); 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) if (pScrn->depth >= 24)
trans = lswapl(trans); trans = lswapl(trans);
#endif #endif
@ -296,7 +296,7 @@ SMI_SetupForSolidFill(ScrnInfoPtr pScrn, int color, int rop,
| SMI_BITBLT | SMI_BITBLT
| SMI_START_ENGINE; | SMI_START_ENGINE;
#if __BYTE_ORDER == __BIG_ENDIAN #if X_BYTE_ORDER == X_BIG_ENDIAN
if (pScrn->depth >= 24) { if (pScrn->depth >= 24) {
/* because of the BGR values are in the MSB bytes, /* because of the BGR values are in the MSB bytes,
* 'white' is not possible and -1 has a different meaning. * 'white' is not possible and -1 has a different meaning.
@ -408,7 +408,7 @@ SMI_SetupForCPUToScreenColorExpandFill(ScrnInfoPtr pScrn, int fg, int bg,
ENTER(); ENTER();
DEBUG("fg=%08X bg=%08X rop=%02X\n", fg, bg, rop); 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) { if (pScrn->depth >= 24) {
/* see remark elswere */ /* see remark elswere */
if (fg == 0x7FFFFFFF) if (fg == 0x7FFFFFFF)
@ -431,7 +431,7 @@ SMI_SetupForCPUToScreenColorExpandFill(ScrnInfoPtr pScrn, int fg, int bg,
WRITE_DPR(pSmi, 0x18, ~fg); WRITE_DPR(pSmi, 0x18, ~fg);
WRITE_DPR(pSmi, 0x20, fg); WRITE_DPR(pSmi, 0x20, fg);
} else { } else {
#if __BYTE_ORDER == __BIG_ENDIAN #if X_BYTE_ORDER == X_BIG_ENDIAN
if (bg == 0xFFFFFF7F) if (bg == 0xFFFFFF7F)
bg = -1; bg = -1;
#endif #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", DEBUG("patx=%08X paty=%08X fg=%08X bg=%08X rop=%02X\n",
patx, paty, fg, bg, rop); patx, paty, fg, bg, rop);
#if __BYTE_ORDER == __BIG_ENDIAN #if X_BYTE_ORDER == X_BIG_ENDIAN
if (pScrn->depth >= 24) { if (pScrn->depth >= 24) {
if (fg == 0x7FFFFFFF) if (fg == 0x7FFFFFFF)
fg = -1; fg = -1;
@ -524,7 +524,7 @@ SMI_SetupForMono8x8PatternFill(ScrnInfoPtr pScrn, int patx, int paty, int fg,
WRITE_DPR(pSmi, 0x34, patx); WRITE_DPR(pSmi, 0x34, patx);
WRITE_DPR(pSmi, 0x38, paty); WRITE_DPR(pSmi, 0x38, paty);
} else { } else {
#if __BYTE_ORDER == __BIG_ENDIAN #if X_BYTE_ORDER == X_BIG_ENDIAN
if (bg == 0xFFFFFF7F) if (bg == 0xFFFFFF7F)
bg = -1; bg = -1;
#endif #endif
@ -582,7 +582,7 @@ SMI_SetupForColor8x8PatternFill(ScrnInfoPtr pScrn, int patx, int paty, int rop,
| SMI_COLOR_PATTERN | SMI_COLOR_PATTERN
| SMI_START_ENGINE; | SMI_START_ENGINE;
#if __BYTE_ORDER == __BIG_ENDIAN #if X_BYTE_ORDER == X_BIG_ENDIAN
if (pScrn->depth >= 24) if (pScrn->depth >= 24)
trans_color = lswapl(trans_color); trans_color = lswapl(trans_color);
#endif #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", DEBUG("rop=%02X trans_color=%08X bpp=%d depth=%d\n",
rop, trans_color, bpp, depth); rop, trans_color, bpp, depth);
#if __BYTE_ORDER == __BIG_ENDIAN #if X_BYTE_ORDER == X_BIG_ENDIAN
if (pScrn->depth >= 24) if (pScrn->depth >= 24)
trans_color = lswapl(trans_color); trans_color = lswapl(trans_color);
#endif #endif
@ -675,7 +675,7 @@ SMI_SetupForImageWrite(ScrnInfoPtr pScrn, int rop, unsigned int planemask,
| SMI_START_ENGINE; | SMI_START_ENGINE;
if (trans_color != -1) { if (trans_color != -1) {
#if __BYTE_ORDER == __BIG_ENDIAN #if X_BYTE_ORDER == X_BIG_ENDIAN
if (trans_color == 0xFFFFFF7F) if (trans_color == 0xFFFFFF7F)
trans_color = -1; trans_color = -1;
#endif #endif