Module Name: xsrc Committed By: mrg Date: Sun Jul 11 00:13:27 UTC 2021
Modified Files: xsrc/external/mit/xkeyboard-config/dist: configure xsrc/external/mit/xkeyboard-config/dist/symbols: Makefile.in in pl xsrc/external/mit/xorg-server/dist: configure configure.ac xsrc/external/mit/xorg-server/dist/dix: devices.c xsrc/external/mit/xorg-server/dist/glx: glxcmds.c xsrc/external/mit/xorg-server/dist/hw/xfree86/common: xf86Bus.c xf86Config.c xf86Helper.c xf86str.h xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting: driver.c driver.h drmmode_display.c present.c vblank.c xsrc/external/mit/xorg-server/dist/randr: randrstr.h xsrc/external/mit/xorg-server/include: dix-config.h version-config.h xf86Build.h xorg-config.h xorg-server.h Log Message: merge xorg-server 1.20.12 and xkeyboard-config 2.33. To generate a diff of this commit: cvs rdiff -u -r1.20 -r1.21 xsrc/external/mit/xkeyboard-config/dist/configure cvs rdiff -u -r1.20 -r1.21 \ xsrc/external/mit/xkeyboard-config/dist/symbols/Makefile.in cvs rdiff -u -r1.15 -r1.16 xsrc/external/mit/xkeyboard-config/dist/symbols/in cvs rdiff -u -r1.3 -r1.4 xsrc/external/mit/xkeyboard-config/dist/symbols/pl cvs rdiff -u -r1.9 -r1.10 xsrc/external/mit/xorg-server/dist/configure cvs rdiff -u -r1.11 -r1.12 xsrc/external/mit/xorg-server/dist/configure.ac cvs rdiff -u -r1.11 -r1.12 xsrc/external/mit/xorg-server/dist/dix/devices.c cvs rdiff -u -r1.13 -r1.14 xsrc/external/mit/xorg-server/dist/glx/glxcmds.c cvs rdiff -u -r1.7 -r1.8 \ xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Bus.c cvs rdiff -u -r1.15 -r1.16 \ xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Config.c cvs rdiff -u -r1.4 -r1.5 \ xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Helper.c cvs rdiff -u -r1.5 -r1.6 \ xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86str.h cvs rdiff -u -r1.5 -r1.6 \ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c \ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.h \ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/present.c cvs rdiff -u -r1.6 -r1.7 \ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c \ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c cvs rdiff -u -r1.6 -r1.7 xsrc/external/mit/xorg-server/dist/randr/randrstr.h cvs rdiff -u -r1.41 -r1.42 xsrc/external/mit/xorg-server/include/dix-config.h cvs rdiff -u -r1.12 -r1.13 \ xsrc/external/mit/xorg-server/include/version-config.h cvs rdiff -u -r1.11 -r1.12 xsrc/external/mit/xorg-server/include/xf86Build.h cvs rdiff -u -r1.22 -r1.23 \ xsrc/external/mit/xorg-server/include/xorg-config.h \ xsrc/external/mit/xorg-server/include/xorg-server.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: xsrc/external/mit/xkeyboard-config/dist/configure diff -u xsrc/external/mit/xkeyboard-config/dist/configure:1.20 xsrc/external/mit/xkeyboard-config/dist/configure:1.21 --- xsrc/external/mit/xkeyboard-config/dist/configure:1.20 Tue Apr 27 03:38:48 2021 +++ xsrc/external/mit/xkeyboard-config/dist/configure Sun Jul 11 00:13:26 2021 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for xkeyboard-config 2.32. +# Generated by GNU Autoconf 2.69 for xkeyboard-config 2.33. # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. @@ -577,8 +577,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='xkeyboard-config' PACKAGE_TARNAME='xkeyboard-config' -PACKAGE_VERSION='2.32' -PACKAGE_STRING='xkeyboard-config 2.32' +PACKAGE_VERSION='2.33' +PACKAGE_STRING='xkeyboard-config 2.33' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -717,6 +717,7 @@ infodir docdir oldincludedir includedir +runstatedir localstatedir sharedstatedir sysconfdir @@ -807,6 +808,7 @@ datadir='${datarootdir}' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' +runstatedir='${localstatedir}/run' includedir='${prefix}/include' oldincludedir='/usr/include' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' @@ -1059,6 +1061,15 @@ do | -silent | --silent | --silen | --sile | --sil) silent=yes ;; + -runstatedir | --runstatedir | --runstatedi | --runstated \ + | --runstate | --runstat | --runsta | --runst | --runs \ + | --run | --ru | --r) + ac_prev=runstatedir ;; + -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ + | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ + | --run=* | --ru=* | --r=*) + runstatedir=$ac_optarg ;; + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ @@ -1196,7 +1207,7 @@ fi for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ datadir sysconfdir sharedstatedir localstatedir includedir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ - libdir localedir mandir + libdir localedir mandir runstatedir do eval ac_val=\$$ac_var # Remove trailing slashes. @@ -1309,7 +1320,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 xkeyboard-config 2.32 to adapt to many kinds of systems. +\`configure' configures xkeyboard-config 2.33 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1349,6 +1360,7 @@ Fine tuning of the installation director --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] + --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] @@ -1380,7 +1392,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of xkeyboard-config 2.32:";; + short | recursive ) echo "Configuration of xkeyboard-config 2.33:";; esac cat <<\_ACEOF @@ -1497,7 +1509,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -xkeyboard-config configure 2.32 +xkeyboard-config configure 2.33 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1677,7 +1689,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 xkeyboard-config $as_me 2.32, which was +It was created by xkeyboard-config $as_me 2.33, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2542,7 +2554,7 @@ fi # Define the identity of the package. PACKAGE='xkeyboard-config' - VERSION='2.32' + VERSION='2.33' cat >>confdefs.h <<_ACEOF @@ -3226,7 +3238,7 @@ $as_echo_n "checking for $am_display_PYT if ${am_cv_python_version+:} false; then : $as_echo_n "(cached) " >&6 else - am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[:3])"` + am_cv_python_version=`$PYTHON -c "import sys; print('%u.%u' % sys.version_info[:2])"` fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_version" >&5 $as_echo "$am_cv_python_version" >&6; } @@ -7634,7 +7646,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_wri # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by xkeyboard-config $as_me 2.32, which was +This file was extended by xkeyboard-config $as_me 2.33, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -7691,7 +7703,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="\\ -xkeyboard-config config.status 2.32 +xkeyboard-config config.status 2.33 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" Index: xsrc/external/mit/xkeyboard-config/dist/symbols/Makefile.in diff -u xsrc/external/mit/xkeyboard-config/dist/symbols/Makefile.in:1.20 xsrc/external/mit/xkeyboard-config/dist/symbols/Makefile.in:1.21 --- xsrc/external/mit/xkeyboard-config/dist/symbols/Makefile.in:1.20 Tue Apr 27 03:38:48 2021 +++ xsrc/external/mit/xkeyboard-config/dist/symbols/Makefile.in Sun Jul 11 00:13:26 2021 @@ -348,6 +348,7 @@ program_transform_name = @program_transf psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ +runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ Index: xsrc/external/mit/xkeyboard-config/dist/symbols/in diff -u xsrc/external/mit/xkeyboard-config/dist/symbols/in:1.15 xsrc/external/mit/xkeyboard-config/dist/symbols/in:1.16 --- xsrc/external/mit/xkeyboard-config/dist/symbols/in:1.15 Tue Apr 27 03:38:48 2021 +++ xsrc/external/mit/xkeyboard-config/dist/symbols/in Sun Jul 11 00:13:26 2021 @@ -16,7 +16,7 @@ // - Indic INSCRIPT keyboard layout diagrams: // http://java.sun.com/products/jfc/tsc/articles/InputMethod/indiclayout.html // - Bangla Baishakhi (Bangla layouts): -// - Bangla Baishakhi Inscript (Bangla layouts): +// - Bangla Baishakhi InScript (Bangla layouts): // - Bangla Bornona (Bangla layouts): // - Uni Gitanjali (Bangla layouts): // http://nltr.org @@ -319,7 +319,7 @@ xkb_symbols "ben_probhat" { include "rupeesign(4)" }; -// Bangla Baishakhi, Bangla Baishakhi Inscript, Bangla Bornona, Uni Gitanjali Layouts are added by Promathesh Mandal <promathesh812...@gmail.com> +// Bangla Baishakhi, Bangla Baishakhi InScript, Bangla Bornona, Uni Gitanjali Layouts are added by Promathesh Mandal <promathesh812...@gmail.com> xkb_symbols "ben_baishakhi" { name[Group1]= "Bangla (India, Baishakhi)"; @@ -397,7 +397,7 @@ xkb_symbols "ben_baishakhi" { }; xkb_symbols "ben_inscript" { - name[Group1]= "Bangla (India, Baishakhi Inscript)"; + name[Group1]= "Bangla (India, Baishakhi InScript)"; // Mainly numbers. key <TLDE> { [ 0x100200D, 0x100200C ] }; @@ -682,7 +682,7 @@ xkb_symbols "guj" { partial alphanumeric_keys xkb_symbols "kan" { - // Inscript layout for Kannada + // InScript layout for Kannada // Author : G Karunakar <karuna...@freedomink.org> // Date : Wed Nov 13 17:22:58 IST 2002 // Kannada digits mapped in basic only @@ -984,7 +984,7 @@ xkb_symbols "olck" { partial alphanumeric_keys xkb_symbols "ori" { - // Inscript layout for Oriya + // InScript layout for Oriya // Author: G Karunakar <karuna...@freedomink.org> // Date: Wed Nov 13 18:16:19 IST 2002 @@ -1046,10 +1046,133 @@ xkb_symbols "ori" { include "level3(ralt_switch)" }; +// Phonetic layout for Oriya like Hindi Bolnagiri +// Author: Lalit Mishra +// Date: 3rd March, 2021. +partial alphanumeric_keys +xkb_symbols "ori-bolnagri" { + name[Group1] = "Oriya (Bolnagri)"; + key.type="FOUR_LEVEL"; + // Roman digits + key <TLDE> { [ U0B02, U0B01, grave, asciitilde ] }; // grave: anusvara, candrabindu + key <AE01> { [ U0B67, exclam, 1 ] }; + key <AE02> { [ U0B68, at, 2, U20AC ] }; + key <AE03> { [ U0B69, numbersign, 3, U00A3 ] }; + key <AE04> { [ U0B6A, dollar, 4, U20B9 ] }; // Rupee symbol on Shift+AltGr+4 + key <AE05> { [ U0B6B, percent, 5 ] }; + key <AE06> { [ U0B6C, asciicircum, 6 ] }; + key <AE07> { [ U0B6D, ampersand, 7 ] }; + key <AE08> { [ U0B6E, asterisk, 8 ] }; + key <AE09> { [ U0B6F, parenleft, 9 ] }; + key <AE10> { [ U0B66, parenright, 0 ] }; + key <AE11> { [ minus, underscore ] }; + key <AE12> { [ equal, plus ] }; + key <BKSL> { [ U0964, U0965, U007C, U005C ] }; //pipe : danda, double danda + //Q Row + key <AD01> { [ U200C, U200D ] }; // Q: ZWNJ, ZWJ + key <AD02> { [ U0B71, U0B35 ] }; // W: wa + key <AD03> { [ U0B47, U0B48, U0B0F, U0B10 ] }; // E: e, ai matras + key <AD04> { [ U0B30, U0B43, U0B0B, U0B60 ] }; // R: ra, vocalic Ri + key <AD05> { [ U0B24, U0B25 ] }; // T: ta, tha + key <AD06> { [ U0B2f, U0B5F, U0B1E ] }; // Y: ya, nya + key <AD07> { [ U0B41, U0B42, U0B09, U0B0A ] }; // U: u, uu matras + key <AD08> { [ U0B3F, U0B40, U0B07, U0B08 ] }; // I: i, ii matras + key <AD09> { [ U0B4B, U0B4C, U0B13, U0B14 ] }; // O: o, au matras + key <AD10> { [ U0B2A, U0B2B ] }; // P: pa, pha + key <AD11> { [ bracketleft, braceleft ] }; + key <AD12> { [ bracketright, braceright] }; + //A Row + key <AC01> { [ U0B3E, U0B06, U0B05, U0B06 ] }; // A: aa, full A, AA + key <AC02> { [ U0B38, U0B37 ] }; // S: sa, ssa + key <AC03> { [ U0B26, U0B27 ] }; // D: da, dha + key <AC04> { [ U0B1F, U0B20 ] }; // F: TA, THA + key <AC05> { [ U0B17, U0B18 ] }; // G: ga, gha + key <AC06> { [ U0B39, U0B03 ] }; // H: ha, visarg + key <AC07> { [ U0B1C, U0B1D ] }; // J: ja, jha + key <AC08> { [ U0B15, U0B16 ] }; // K: ka, kha + key <AC09> { [ U0B32, U0B33, U0B62, U0B0C ] }; // L: la, vocalic L or lru matra + key <AC10> { [ semicolon, colon ] }; + key <AC11> { [ apostrophe, quotedbl ] }; + //Z Row + key <AB01> { [ U0B36 ] }; // Z: sha, akaar candra + key <AB02> { [ U0B4D ] }; // X: halant, aakaar candra, chandra A + key <AB03> { [ U0B1A, U0B1B ] }; // C: ca, cha + key <AB04> { [ U0B21, U0B22 ] }; // V: da, dha + key <AB05> { [ U0B2C, U0B2D ] }; // B: ba, bha + key <AB06> { [ U0B28, U0B23 ] }; // N: na, nna + key <AB07> { [ U0B2E, U0B19, U0B3D ] }; // M: ma, nga, avagraha + key <AB08> { [ comma, U0B70, U0B44, U0B61 ] }; // comma: comma, dev abbreviation sign + key <AB09> { [ period, U0B3C, U0B55 ] }; // period: period, nukta + key <AB10> { [ slash, question ] }; + +// modifier_map Shift { Shift_L }; +// modifier_map Lock { Caps_Lock }; +// modifier_map Control{ Control_L }; +// modifier_map Mod3 { Mode_switch }; + + include "level3(ralt_switch)" +}; + +// Phonetic layout for Oriya like Hindi Wx +// Author: Lalit Mishra +// Date: 3rd March, 2021. +partial alphanumeric_keys +xkb_symbols "ori-wx" { + name[Group1]= "Oriya (Wx)"; + key <TLDE> { [ grave, asciitilde, 0x100200C, 0x100200D ] }; + key <AE01> { [ 0x1000B67, exclam, 1 ] }; + key <AE02> { [ 0x1000B68, at, 2, 0x10020AC ] }; + key <AE03> { [ 0x1000B69, numbersign, 3, 0x10000A3 ] }; + key <AE04> { [ 0x1000B6A, dollar, 4, 0x10020B9 ] }; + key <AE05> { [ 0x1000B6B, percent, 5 ] }; + key <AE06> { [ 0x1000B6C, asciicircum, 6 ] }; + key <AE07> { [ 0x1000B6D, ampersand, 7 ] }; + key <AE08> { [ 0x1000B6e, asterisk, 8 ] }; + key <AE09> { [ 0x1000B6F, parenleft, 9 ] }; + key <AE10> { [ 0x1000B66, parenright, 0 ] }; + key <AE11> { [ minus, underscore ] }; + key <AE12> { [ equal, plus ] }; + key <AD01> { [ 0x1000B43, 0x1000B44, 0x1000B0B, 0x1000B60 ] }; + key <AD02> { [ 0x1000B24, 0x1000B25 ] }; + key <AD03> { [ 0x1000B47, 0x1000B48, 0x1000B0F, 0x1000B10 ] }; + key <AD04> { [ 0x1000B30, 0x1000B37 ] }; + key <AD05> { [ 0x1000B1F, 0x1000B20 ] }; + key <AD06> { [ 0x1000B2F, 0x1000B5F ] }; + key <AD07> { [ 0x1000B41, 0x1000B42, 0x1000B09, 0x1000B0A ] }; + key <AD08> { [ 0x1000B3F, 0x1000B40, 0x1000B07, 0x1000B08 ] }; + key <AD09> { [ 0x1000B4B, 0x1000B4C, 0x1000B13, 0x1000B14 ] }; + key <AD10> { [ 0x1000B2A, 0x1000B2B ] }; + key <AD11> { [ bracketleft, braceleft ] }; + key <AD12> { [ bracketright, braceright ] }; + key <BKSL> { [ 0x1000964, 0x1000965, backslash, bar ] }; + key <AC01> { [ 0x1000B4D, 0x1000B3E, 0x1000B05, 0x1000B06 ] }; + key <AC02> { [ 0x1000B38, 0x1000B36 ] }; + key <AC03> { [ 0x1000B21, 0x1000B22 ] }; + key <AC04> { [ 0x1000B19, 0x1000B1E ] }; + key <AC05> { [ 0x1000B17, 0x1000B18 ] }; + key <AC06> { [ 0x1000B39, 0x1000B03 ] }; + key <AC07> { [ 0x1000B1C, 0x1000B1D ] }; + key <AC08> { [ 0x1000B15, 0x1000B16 ] }; + key <AC09> { [ 0x1000B32, 0x1000B62, 0x1000B33, 0x1000B0C ] }; + key <AC10> { [ semicolon, colon ] }; + key <AC11> { [ apostrophe, quotedbl ] }; + key <AB01> { [ 0x1000B01, 0x1000B3C, 0x1000B3D ] }; + key <AB02> { [ 0x1000B26, 0x1000B27 ] }; + key <AB03> { [ 0x1000B1A, 0x1000B1B ] }; + key <AB04> { [ 0x1000B71, 0x1000B35 ] }; + key <AB05> { [ 0x1000B2C, 0x1000B2D ] }; + key <AB06> { [ 0x1000B28, 0x1000B23 ] }; + key <AB07> { [ 0x1000B2E, 0x1000B02 ] }; + key <AB08> { [ comma, less ] }; + key <AB09> { [ period, greater ] }; + key <AB10> { [ slash, question ] }; + + include "level3(ralt_switch)" +}; partial alphanumeric_keys xkb_symbols "tam" { - name[Group1]= "Tamil (Inscript)"; + name[Group1]= "Tamil (InScript)"; key <TLDE> { [ U0BCA, U0B92 ] }; @@ -1359,7 +1482,7 @@ xkb_symbols "tam_tamilnet_TAB" { partial alphanumeric_keys xkb_symbols "tel" { - // Inscript layout for Telugu using Unicode + // InScript layout for Telugu using Unicode // Author: G Karunakar <karuna...@freedomink.org> // Date: // See layout at http://www.indlinux.org/keymap/telugu.php @@ -1584,10 +1707,10 @@ xkb_symbols "guru" { include "level3(ralt_switch)" }; -//Name : Jhelum (Refind Inscript) +//Name : Jhelum (Refind InScript) //Description : A Jhelum keyboard layout for Gurmukhi (Punjabi) // http://www.satluj.org/Jhelum.html -//Modified for Inscript to make +//Modified for InScript to make //Original Author : Amanpreet Singh Alam <apreet.a...@gmail.com partial alphanumeric_keys @@ -1804,13 +1927,13 @@ xkb_symbols "eng" { // Author : Mahesh T Pai <paiva...@gmail.com> // Date : March, 2011 // Source : http://www.nongnu.org/smc/docs/images/ml_inscript_layout.jpg -// Comment : Based on the Inscript Keyboard created by M Baiju +// Comment : Based on the InScript Keyboard created by M Baiju // Mapping: partial alphanumeric_keys xkb_symbols "mal_enhanced" { - name[Group1] = "Malayalam (enhanced Inscript, with rupee)"; + name[Group1] = "Malayalam (enhanced InScript, with rupee)"; //From grave to backslash (\) @@ -2264,7 +2387,7 @@ xkb_symbols "iipa" { // Contact - niranjanvikasta...@gmail.com xkb_symbols "marathi" { - name[Group1]="Marathi (enhanced Inscript)"; + name[Group1]="Marathi (enhanced InScript)"; key <TLDE> { [ U0962, U090C, grave, asciitilde ] }; // Added ॢ & ऌ key <AE01> { [ U0967, exclam, 1, exclam ] }; // Added exclamation mark key <AE02> { [ U0968, U0945, 2, at ] }; // Added ॅ @@ -2454,3 +2577,11 @@ xkb_symbols "modi-kagapa" { include "level3(ralt_switch)" }; + +// Navees, a phonetic keyboard layout for Urdu +// https://saadatm.github.io/navees +partial alphanumeric_keys +xkb_symbols "urd-navees" { + include "pk(urd-navees)" + name[Group1]= "Urdu (Navees)"; +}; Index: xsrc/external/mit/xkeyboard-config/dist/symbols/pl diff -u xsrc/external/mit/xkeyboard-config/dist/symbols/pl:1.3 xsrc/external/mit/xkeyboard-config/dist/symbols/pl:1.4 --- xsrc/external/mit/xkeyboard-config/dist/symbols/pl:1.3 Tue Apr 27 03:38:48 2021 +++ xsrc/external/mit/xkeyboard-config/dist/symbols/pl Sun Jul 11 00:13:26 2021 @@ -518,7 +518,7 @@ xkb_symbols "colemak_dh" { }; partial alphanumeric_keys - xkb_symbols "sun_type6" { +xkb_symbols "sun_type6" { include "sun_vndr/pl(sun_type6)" }; Index: xsrc/external/mit/xorg-server/dist/configure diff -u xsrc/external/mit/xorg-server/dist/configure:1.9 xsrc/external/mit/xorg-server/dist/configure:1.10 --- xsrc/external/mit/xorg-server/dist/configure:1.9 Tue Apr 27 04:01:25 2021 +++ xsrc/external/mit/xorg-server/dist/configure Sun Jul 11 00:13:26 2021 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for xorg-server 1.20.11. +# Generated by GNU Autoconf 2.69 for xorg-server 1.20.12. # # Report bugs to <https://gitlab.freedesktop.org/xorg/xserver/issues>. # @@ -651,8 +651,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='xorg-server' PACKAGE_TARNAME='xorg-server' -PACKAGE_VERSION='1.20.11' -PACKAGE_STRING='xorg-server 1.20.11' +PACKAGE_VERSION='1.20.12' +PACKAGE_STRING='xorg-server 1.20.12' PACKAGE_BUGREPORT='https://gitlab.freedesktop.org/xorg/xserver/issues' PACKAGE_URL='' @@ -2045,7 +2045,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 xorg-server 1.20.11 to adapt to many kinds of systems. +\`configure' configures xorg-server 1.20.12 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -2116,7 +2116,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of xorg-server 1.20.11:";; + short | recursive ) echo "Configuration of xorg-server 1.20.12:";; esac cat <<\_ACEOF @@ -2307,10 +2307,10 @@ Optional Packages: org.x) --with-bundle-version=VERSION Version to use for X11.app's CFBundleVersion - (default: 1.20.11) + (default: 1.20.12) --with-bundle-version-string=VERSION Version to use for X11.app's - CFBundleShortVersionString (default: 1.20.11) + CFBundleShortVersionString (default: 1.20.12) --with-sparkle-feed-url=URL URL for the Sparkle feed (default: https://www.xquartz.org/releases/sparkle/release.xml) @@ -2567,7 +2567,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -xorg-server configure 1.20.11 +xorg-server configure 1.20.12 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -3276,7 +3276,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 xorg-server $as_me 1.20.11, which was +It was created by xorg-server $as_me 1.20.12, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3624,8 +3624,8 @@ ac_link='$CC -o conftest$ac_exeext $CFLA ac_compiler_gnu=$ac_cv_c_compiler_gnu -RELEASE_DATE="2021-04-13" -RELEASE_NAME="Arroz con Pollo" +RELEASE_DATE="2021-07-08" +RELEASE_NAME="Lemon Pepper Chicken" am__api_version='1.16' @@ -3833,12 +3833,7 @@ program_transform_name=`$as_echo "$progr am_aux_dir=`cd "$ac_aux_dir" && pwd` if test x"${MISSING+set}" != xset; then - case $am_aux_dir in - *\ * | *\ *) - MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; - *) - MISSING="\${SHELL} $am_aux_dir/missing" ;; - esac + MISSING="\${SHELL} '$am_aux_dir/missing'" fi # Use eval to expand $SHELL if eval "$MISSING --is-lightweight"; then @@ -4143,7 +4138,7 @@ fi # Define the identity of the package. PACKAGE='xorg-server' - VERSION='1.20.11' + VERSION='1.20.12' cat >>confdefs.h <<_ACEOF @@ -23778,7 +23773,7 @@ _ACEOF if test "${with_bundle_version+set}" = set; then : withval=$with_bundle_version; BUNDLE_VERSION="${withval}" else - BUNDLE_VERSION="1.20.11" + BUNDLE_VERSION="1.20.12" fi @@ -31304,7 +31299,7 @@ if test "x$DMX" = xyes; then fi DMX_INCLUDES="$XEXT_INC $RENDER_INC $RECORD_INC" XDMX_CFLAGS="$DMXMODULES_CFLAGS" - XDMX_LIBS="$FB_LIB $MI_LIB $XEXT_LIB $RENDER_LIB $RECORD_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $DRI3_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_SHADOW_LIB $MIEXT_DAMAGE_LIB $COMPOSITE_LIB $DAMAGE_LIB $MAIN_LIB $DIX_LIB $RANDR_LIB $CONFIG_LIB $OS_LIB $FIXES_LIB" + XDMX_LIBS="$FB_LIB $MI_LIB $XEXT_LIB $RENDER_LIB $RECORD_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $DRI3_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_SHADOW_LIB $MIEXT_DAMAGE_LIB $COMPOSITE_LIB $DAMAGE_LIB $MAIN_LIB $DIX_LIB $RANDR_LIB $RENDER_LIB $CONFIG_LIB $OS_LIB $FIXES_LIB" XDMX_SYS_LIBS="$DMXMODULES_LIBS" @@ -33623,7 +33618,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_wri # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by xorg-server $as_me 1.20.11, which was +This file was extended by xorg-server $as_me 1.20.12, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -33689,7 +33684,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="\\ -xorg-server config.status 1.20.11 +xorg-server config.status 1.20.12 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" Index: xsrc/external/mit/xorg-server/dist/configure.ac diff -u xsrc/external/mit/xorg-server/dist/configure.ac:1.11 xsrc/external/mit/xorg-server/dist/configure.ac:1.12 --- xsrc/external/mit/xorg-server/dist/configure.ac:1.11 Tue Apr 27 04:01:25 2021 +++ xsrc/external/mit/xorg-server/dist/configure.ac Sun Jul 11 00:13:26 2021 @@ -26,12 +26,12 @@ dnl dnl Process this file with autoconf to create configure. AC_PREREQ(2.60) -AC_INIT([xorg-server], 1.20.11, [https://gitlab.freedesktop.org/xorg/xserver/issues], xorg-server) -RELEASE_DATE="2021-04-13" -RELEASE_NAME="Arroz con Pollo" +AC_INIT([xorg-server], 1.20.12, [https://gitlab.freedesktop.org/xorg/xserver/issues], xorg-server) +RELEASE_DATE="2021-07-08" +RELEASE_NAME="Lemon Pepper Chicken" AC_CONFIG_SRCDIR([Makefile.am]) AC_CONFIG_MACRO_DIR([m4]) -AM_INIT_AUTOMAKE([foreign dist-bzip2]) +AM_INIT_AUTOMAKE([foreign dist-xz]) AC_USE_SYSTEM_EXTENSIONS # Require xorg-macros minimum of 1.14 for XORG_COMPILER_BRAND in XORG_DEFAULT_OPTIONS @@ -2236,7 +2236,7 @@ if test "x$DMX" = xyes; then fi DMX_INCLUDES="$XEXT_INC $RENDER_INC $RECORD_INC" XDMX_CFLAGS="$DMXMODULES_CFLAGS" - XDMX_LIBS="$FB_LIB $MI_LIB $XEXT_LIB $RENDER_LIB $RECORD_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $DRI3_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_SHADOW_LIB $MIEXT_DAMAGE_LIB $COMPOSITE_LIB $DAMAGE_LIB $MAIN_LIB $DIX_LIB $RANDR_LIB $CONFIG_LIB $OS_LIB $FIXES_LIB" + XDMX_LIBS="$FB_LIB $MI_LIB $XEXT_LIB $RENDER_LIB $RECORD_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $DRI3_LIB $PRESENT_LIB $MIEXT_SYNC_LIB $MIEXT_SHADOW_LIB $MIEXT_DAMAGE_LIB $COMPOSITE_LIB $DAMAGE_LIB $MAIN_LIB $DIX_LIB $RANDR_LIB $RENDER_LIB $CONFIG_LIB $OS_LIB $FIXES_LIB" XDMX_SYS_LIBS="$DMXMODULES_LIBS" AC_SUBST([XDMX_CFLAGS]) AC_SUBST([XDMX_LIBS]) Index: xsrc/external/mit/xorg-server/dist/dix/devices.c diff -u xsrc/external/mit/xorg-server/dist/dix/devices.c:1.11 xsrc/external/mit/xorg-server/dist/dix/devices.c:1.12 --- xsrc/external/mit/xorg-server/dist/dix/devices.c:1.11 Sat Dec 5 20:34:04 2020 +++ xsrc/external/mit/xorg-server/dist/dix/devices.c Sun Jul 11 00:13:27 2021 @@ -2261,6 +2261,9 @@ ProcChangePointerControl(ClientPtr clien REQUEST(xChangePointerControlReq); REQUEST_SIZE_MATCH(xChangePointerControlReq); + /* If the device has no PtrFeedbackPtr, the xserver has a bug */ + BUG_RETURN_VAL (!mouse->ptrfeed, BadImplementation); + ctrl = mouse->ptrfeed->ctrl; if ((stuff->doAccel != xTrue) && (stuff->doAccel != xFalse)) { client->errorValue = stuff->doAccel; Index: xsrc/external/mit/xorg-server/dist/glx/glxcmds.c diff -u xsrc/external/mit/xorg-server/dist/glx/glxcmds.c:1.13 xsrc/external/mit/xorg-server/dist/glx/glxcmds.c:1.14 --- xsrc/external/mit/xorg-server/dist/glx/glxcmds.c:1.13 Sun Feb 23 10:26:22 2020 +++ xsrc/external/mit/xorg-server/dist/glx/glxcmds.c Sun Jul 11 00:13:27 2021 @@ -473,8 +473,15 @@ __glXGetDrawable(__GLXcontext * glxc, GL __GLXscreen *pGlxScreen; int rc; - if (validGlxDrawable(client, drawId, GLX_DRAWABLE_ANY, - DixWriteAccess, &pGlxDraw, &rc)) { + rc = dixLookupResourceByType((void **)&pGlxDraw, drawId, + __glXDrawableRes, client, DixWriteAccess); + if (rc == Success && + /* If pGlxDraw->drawId == drawId, drawId is a valid GLX drawable. + * Otherwise, if pGlxDraw->type == GLX_DRAWABLE_WINDOW, drawId is + * an X window, but the client has already created a GLXWindow + * associated with it, so we don't want to create another one. */ + (pGlxDraw->drawId == drawId || + pGlxDraw->type == GLX_DRAWABLE_WINDOW)) { if (glxc != NULL && glxc->config != NULL && glxc->config != pGlxDraw->config) { @@ -641,10 +648,11 @@ xorgGlxMakeCurrent(ClientPtr client, GLX glxc->readPriv = NULL; return __glXError(GLXBadContext); } + } + glxServer.setContextTagPrivate(client, newContextTag, glxc); + if (glxc) glxc->currentClient = client; - glxServer.setContextTagPrivate(client, newContextTag, glxc); - } if (prevglxc) { prevglxc->currentClient = NULL; Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Bus.c diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Bus.c:1.7 xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Bus.c:1.8 --- xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Bus.c:1.7 Mon Dec 31 09:50:00 2018 +++ xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Bus.c Sun Jul 11 00:13:27 2021 @@ -525,8 +525,8 @@ xf86GetDevFromEntity(int entityIndex, in for (i = 0; i < xf86Entities[entityIndex]->numInstances; i++) if (xf86Entities[entityIndex]->devices[i]->screen == instance) - break; - return xf86Entities[entityIndex]->devices[i]; + return xf86Entities[entityIndex]->devices[i]; + return NULL; } /* Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Config.c diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Config.c:1.15 xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Config.c:1.16 --- xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Config.c:1.15 Mon Dec 31 09:50:00 2018 +++ xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Config.c Sun Jul 11 00:13:27 2021 @@ -1771,31 +1771,30 @@ configScreen(confScreenPtr screenp, XF86 count++; dispptr = (XF86ConfDisplayPtr) dispptr->list.next; } - screenp->displays = xnfallocarray(count, sizeof(DispRec)); + screenp->displays = xnfallocarray(count, sizeof(DispPtr)); screenp->numdisplays = count; - /* Fill in the default Virtual size, if any */ - if (conf_screen->scrn_virtualX && conf_screen->scrn_virtualY) { - for (count = 0, dispptr = conf_screen->scrn_display_lst; - dispptr; - dispptr = (XF86ConfDisplayPtr) dispptr->list.next, count++) { - screenp->displays[count].virtualX = conf_screen->scrn_virtualX; - screenp->displays[count].virtualY = conf_screen->scrn_virtualY; + for (count = 0, dispptr = conf_screen->scrn_display_lst; + dispptr; + dispptr = (XF86ConfDisplayPtr) dispptr->list.next, count++) { + + /* Allocate individual Display records */ + screenp->displays[count] = xnfcalloc(1, sizeof(DispRec)); + + /* Fill in the default Virtual size, if any */ + if (conf_screen->scrn_virtualX && conf_screen->scrn_virtualY) { + screenp->displays[count]->virtualX = conf_screen->scrn_virtualX; + screenp->displays[count]->virtualY = conf_screen->scrn_virtualY; } - } - /* Now do the per-Display Virtual sizes */ - count = 0; - dispptr = conf_screen->scrn_display_lst; - while (dispptr) { - configDisplay(&(screenp->displays[count]), dispptr); - count++; - dispptr = (XF86ConfDisplayPtr) dispptr->list.next; + /* Now do the per-Display Virtual sizes */ + configDisplay(screenp->displays[count], dispptr); } /* * figure out how many videoadaptor references there are and fill them in */ + count = 0; conf_adaptor = conf_screen->scrn_adaptor_lst; while (conf_adaptor) { count++; Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Helper.c diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Helper.c:1.4 xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Helper.c:1.5 --- xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Helper.c:1.4 Mon Dec 31 09:50:00 2018 +++ xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86Helper.c Sun Jul 11 00:13:27 2021 @@ -525,8 +525,8 @@ xf86SetDepthBpp(ScrnInfoPtr scrp, int de * Find the Display subsection matching the depth/fbbpp and initialise * scrp->display with it. */ - for (i = 0, disp = scrp->confScreen->displays; - i < scrp->confScreen->numdisplays; i++, disp++) { + for (i = 0; i < scrp->confScreen->numdisplays; i++) { + disp = scrp->confScreen->displays[i]; if ((disp->depth == scrp->depth && disp->fbbpp == scrp->bitsPerPixel) || (disp->depth == scrp->depth && disp->fbbpp <= 0) || (disp->fbbpp == scrp->bitsPerPixel && disp->depth <= 0)) { @@ -540,8 +540,8 @@ xf86SetDepthBpp(ScrnInfoPtr scrp, int de * depth or fbbpp specified. */ if (i == scrp->confScreen->numdisplays) { - for (i = 0, disp = scrp->confScreen->displays; - i < scrp->confScreen->numdisplays; i++, disp++) { + for (i = 0; i < scrp->confScreen->numdisplays; i++) { + disp = scrp->confScreen->displays[i]; if (disp->depth <= 0 && disp->fbbpp <= 0) { scrp->display = disp; break; @@ -556,24 +556,25 @@ xf86SetDepthBpp(ScrnInfoPtr scrp, int de scrp->confScreen->numdisplays++; scrp->confScreen->displays = xnfreallocarray(scrp->confScreen->displays, - scrp->confScreen->numdisplays, sizeof(DispRec)); + scrp->confScreen->numdisplays, sizeof(DispPtr)); xf86DrvMsg(scrp->scrnIndex, X_INFO, "Creating default Display subsection in Screen section\n" "\t\"%s\" for depth/fbbpp %d/%d\n", scrp->confScreen->id, scrp->depth, scrp->bitsPerPixel); - memset(&scrp->confScreen->displays[i], 0, sizeof(DispRec)); - scrp->confScreen->displays[i].blackColour.red = -1; - scrp->confScreen->displays[i].blackColour.green = -1; - scrp->confScreen->displays[i].blackColour.blue = -1; - scrp->confScreen->displays[i].whiteColour.red = -1; - scrp->confScreen->displays[i].whiteColour.green = -1; - scrp->confScreen->displays[i].whiteColour.blue = -1; - scrp->confScreen->displays[i].defaultVisual = -1; - scrp->confScreen->displays[i].modes = xnfalloc(sizeof(char *)); - scrp->confScreen->displays[i].modes[0] = NULL; - scrp->confScreen->displays[i].depth = depth; - scrp->confScreen->displays[i].fbbpp = fbbpp; - scrp->display = &scrp->confScreen->displays[i]; + scrp->confScreen->displays[i] = xnfcalloc(1, sizeof(DispRec)); + memset(scrp->confScreen->displays[i], 0, sizeof(DispRec)); + scrp->confScreen->displays[i]->blackColour.red = -1; + scrp->confScreen->displays[i]->blackColour.green = -1; + scrp->confScreen->displays[i]->blackColour.blue = -1; + scrp->confScreen->displays[i]->whiteColour.red = -1; + scrp->confScreen->displays[i]->whiteColour.green = -1; + scrp->confScreen->displays[i]->whiteColour.blue = -1; + scrp->confScreen->displays[i]->defaultVisual = -1; + scrp->confScreen->displays[i]->modes = xnfalloc(sizeof(char *)); + scrp->confScreen->displays[i]->modes[0] = NULL; + scrp->confScreen->displays[i]->depth = depth; + scrp->confScreen->displays[i]->fbbpp = fbbpp; + scrp->display = scrp->confScreen->displays[i]; } /* Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86str.h diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86str.h:1.5 xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86str.h:1.6 --- xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86str.h:1.5 Mon Dec 31 09:50:00 2018 +++ xsrc/external/mit/xorg-server/dist/hw/xfree86/common/xf86str.h Sun Jul 11 00:13:27 2021 @@ -350,7 +350,7 @@ typedef struct _confscreenrec { MonPtr monitor; GDevPtr device; int numdisplays; - DispPtr displays; + DispPtr *displays; int numxvadaptors; confXvAdaptorPtr xvadaptors; void *options; Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c:1.5 xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c:1.6 --- xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c:1.5 Sat Dec 5 20:34:04 2020 +++ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c Sun Jul 11 00:13:27 2021 @@ -1747,28 +1747,41 @@ ScreenInit(ScreenPtr pScreen, int argc, "Failed to initialize the DRI2 extension.\n"); } - if (!(ms->drmmode.present_enable = ms_present_screen_init(pScreen))) { - xf86DrvMsg(pScrn->scrnIndex, X_ERROR, - "Failed to initialize the Present extension.\n"); - } /* enable reverse prime if we are a GPU screen, and accelerated, and not - * i915. i915 is happy scanning out from sysmem. */ + * i915, evdi or udl. i915 is happy scanning out from sysmem. + * evdi and udl are virtual drivers scanning out from sysmem + * backed dumb buffers. + */ if (pScreen->isGPU) { drmVersionPtr version; /* enable if we are an accelerated GPU screen */ ms->drmmode.reverse_prime_offload_mode = TRUE; - /* disable if we detect i915 */ if ((version = drmGetVersion(ms->drmmode.fd))) { if (!strncmp("i915", version->name, version->name_len)) { ms->drmmode.reverse_prime_offload_mode = FALSE; } + if (!strncmp("evdi", version->name, version->name_len)) { + ms->drmmode.reverse_prime_offload_mode = FALSE; + } + if (!strncmp("udl", version->name, version->name_len)) { + ms->drmmode.reverse_prime_offload_mode = FALSE; + } + if (!ms->drmmode.reverse_prime_offload_mode) { + xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "Disable reverse prime offload mode for %s.\n", version->name); + } drmFreeVersion(version); } } } #endif + if (!(ms->drmmode.present_enable = ms_present_screen_init(pScreen))) { + xf86DrvMsg(pScrn->scrnIndex, X_ERROR, + "Failed to initialize the Present extension.\n"); + } + pScrn->vtSema = TRUE; Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.h diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.h:1.5 xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.h:1.6 --- xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.h:1.5 Sat Dec 5 20:34:04 2020 +++ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.h Sun Jul 11 00:13:27 2021 @@ -146,7 +146,7 @@ void ms_drm_abort(ScrnInfoPtr scrn, void *match_data); void ms_drm_abort_seq(ScrnInfoPtr scrn, uint32_t seq); -Bool ms_crtc_on(xf86CrtcPtr crtc); +Bool xf86_crtc_on(xf86CrtcPtr crtc); xf86CrtcPtr ms_dri2_crtc_covering_drawable(DrawablePtr pDraw); RRCrtcPtr ms_randr_crtc_covering_drawable(DrawablePtr pDraw); Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/present.c diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/present.c:1.5 xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/present.c:1.6 --- xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/present.c:1.5 Sat Dec 5 20:34:04 2020 +++ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/present.c Sun Jul 11 00:13:27 2021 @@ -244,7 +244,7 @@ ms_present_check_unflip(RRCrtcPtr crtc, if (drmmode_crtc->rotate_bo.gbm) return FALSE; - if (ms_crtc_on(config->crtc[i])) + if (xf86_crtc_on(config->crtc[i])) num_crtcs_on++; } Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c:1.6 xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c:1.7 --- xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c:1.6 Sat Dec 5 20:34:04 2020 +++ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c Sun Jul 11 00:13:27 2021 @@ -3001,9 +3001,9 @@ drmmode_output_init(ScrnInfoPtr pScrn, d output->driver_private = drmmode_output; output->non_desktop = nonDesktop; - output->possible_crtcs = 0x7f; + output->possible_crtcs = 0; for (i = 0; i < koutput->count_encoders; i++) { - output->possible_crtcs &= kencoders[i]->possible_crtcs >> crtcshift; + output->possible_crtcs |= (kencoders[i]->possible_crtcs >> crtcshift) & 0x7f; } /* work out the possible clones later */ output->possible_clones = 0; @@ -3025,8 +3025,14 @@ drmmode_output_init(ScrnInfoPtr pScrn, d "DPMS"); } - if (dynamic) + if (dynamic) { output->randr_output = RROutputCreate(xf86ScrnToScreen(pScrn), output->name, strlen(output->name), output); + if (output->randr_output) { + drmmode_output_create_resources(output); + RRPostPendingProperties(output->randr_output); + } + } + return 1; out_free_encoders: Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c:1.6 xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c:1.7 --- xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c:1.6 Sat Dec 5 20:34:04 2020 +++ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c Sun Jul 11 00:13:27 2021 @@ -49,7 +49,7 @@ static struct xorg_list ms_drm_queue; static uint32_t ms_drm_seq; -static void ms_box_intersect(BoxPtr dest, BoxPtr a, BoxPtr b) +static void box_intersect(BoxPtr dest, BoxPtr a, BoxPtr b) { dest->x1 = a->x1 > b->x1 ? a->x1 : b->x1; dest->x2 = a->x2 < b->x2 ? a->x2 : b->x2; @@ -64,20 +64,7 @@ static void ms_box_intersect(BoxPtr dest dest->x1 = dest->x2 = dest->y1 = dest->y2 = 0; } -static void ms_crtc_box(xf86CrtcPtr crtc, BoxPtr crtc_box) -{ - if (crtc->enabled) { - crtc_box->x1 = crtc->x; - crtc_box->x2 = - crtc->x + xf86ModeWidth(&crtc->mode, crtc->rotation); - crtc_box->y1 = crtc->y; - crtc_box->y2 = - crtc->y + xf86ModeHeight(&crtc->mode, crtc->rotation); - } else - crtc_box->x1 = crtc_box->x2 = crtc_box->y1 = crtc_box->y2 = 0; -} - -static void ms_randr_crtc_box(RRCrtcPtr crtc, BoxPtr crtc_box) +static void rr_crtc_box(RRCrtcPtr crtc, BoxPtr crtc_box) { if (crtc->mode) { crtc_box->x1 = crtc->x; @@ -99,133 +86,44 @@ static void ms_randr_crtc_box(RRCrtcPtr crtc_box->x1 = crtc_box->x2 = crtc_box->y1 = crtc_box->y2 = 0; } -static int ms_box_area(BoxPtr box) +static int box_area(BoxPtr box) { return (int)(box->x2 - box->x1) * (int)(box->y2 - box->y1); } +static Bool rr_crtc_on(RRCrtcPtr crtc, Bool crtc_is_xf86_hint) +{ + if (!crtc) { + return FALSE; + } + if (crtc_is_xf86_hint && crtc->devPrivate) { + return xf86_crtc_on(crtc->devPrivate); + } else { + return !!crtc->mode; + } +} + Bool -ms_crtc_on(xf86CrtcPtr crtc) +xf86_crtc_on(xf86CrtcPtr crtc) { drmmode_crtc_private_ptr drmmode_crtc = crtc->driver_private; return crtc->enabled && drmmode_crtc->dpms_mode == DPMSModeOn; } -/* - * Return the first output which is connected to an active CRTC on this screen. - * - * RRFirstOutput() will return an output from a slave screen if it is primary, - * which is not the behavior that ms_covering_crtc() wants. - */ - -static RROutputPtr ms_first_output(ScreenPtr pScreen) -{ - rrScrPriv(pScreen); - RROutputPtr output; - int i, j; - - if (!pScrPriv) - return NULL; - - if (pScrPriv->primaryOutput && pScrPriv->primaryOutput->crtc && - (pScrPriv->primaryOutput->pScreen == pScreen)) { - return pScrPriv->primaryOutput; - } - - for (i = 0; i < pScrPriv->numCrtcs; i++) { - RRCrtcPtr crtc = pScrPriv->crtcs[i]; - - for (j = 0; j < pScrPriv->numOutputs; j++) { - output = pScrPriv->outputs[j]; - if (output->crtc == crtc) - return output; - } - } - return NULL; -} /* * Return the crtc covering 'box'. If two crtcs cover a portion of * 'box', then prefer the crtc with greater coverage. */ - -static xf86CrtcPtr -ms_covering_xf86_crtc(ScreenPtr pScreen, BoxPtr box, Bool screen_is_ms) -{ - ScrnInfoPtr scrn = xf86ScreenToScrn(pScreen); - xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn); - xf86CrtcPtr crtc, best_crtc; - int coverage, best_coverage; - int c; - BoxRec crtc_box, cover_box; - Bool crtc_on; - - best_crtc = NULL; - best_coverage = 0; - - if (!xf86_config) - return NULL; - - for (c = 0; c < xf86_config->num_crtc; c++) { - crtc = xf86_config->crtc[c]; - - if (screen_is_ms) - crtc_on = ms_crtc_on(crtc); - else - crtc_on = crtc->enabled; - - /* If the CRTC is off, treat it as not covering */ - if (!crtc_on) - continue; - - ms_crtc_box(crtc, &crtc_box); - ms_box_intersect(&cover_box, &crtc_box, box); - coverage = ms_box_area(&cover_box); - if (coverage > best_coverage) { - best_crtc = crtc; - best_coverage = coverage; - } - } - - /* Fallback to primary crtc for drawable's on slave outputs */ - if (best_crtc == NULL && !pScreen->isGPU) { - RROutputPtr primary_output = NULL; - ScreenPtr slave; - - if (dixPrivateKeyRegistered(rrPrivKey)) - primary_output = ms_first_output(scrn->pScreen); - if (!primary_output || !primary_output->crtc) - return NULL; - - crtc = primary_output->crtc->devPrivate; - if (!ms_crtc_on(crtc)) - return NULL; - - xorg_list_for_each_entry(slave, &pScreen->slave_list, slave_head) { - if (!slave->is_output_slave) - continue; - - if (ms_covering_xf86_crtc(slave, box, FALSE)) { - /* The drawable is on a slave output, return primary crtc */ - return crtc; - } - } - } - - return best_crtc; -} - static RRCrtcPtr -ms_covering_randr_crtc(ScreenPtr pScreen, BoxPtr box, Bool screen_is_ms) +rr_crtc_covering_box(ScreenPtr pScreen, BoxPtr box, Bool screen_is_xf86_hint) { - ScrnInfoPtr scrn = xf86ScreenToScrn(pScreen); rrScrPrivPtr pScrPriv; RRCrtcPtr crtc, best_crtc; int coverage, best_coverage; int c; BoxRec crtc_box, cover_box; - Bool crtc_on; best_crtc = NULL; best_coverage = 0; @@ -241,57 +139,47 @@ ms_covering_randr_crtc(ScreenPtr pScreen for (c = 0; c < pScrPriv->numCrtcs; c++) { crtc = pScrPriv->crtcs[c]; - if (screen_is_ms) { - crtc_on = ms_crtc_on((xf86CrtcPtr) crtc->devPrivate); - } else { - crtc_on = !!crtc->mode; - } - /* If the CRTC is off, treat it as not covering */ - if (!crtc_on) + if (!rr_crtc_on(crtc, screen_is_xf86_hint)) continue; - ms_randr_crtc_box(crtc, &crtc_box); - ms_box_intersect(&cover_box, &crtc_box, box); - coverage = ms_box_area(&cover_box); + rr_crtc_box(crtc, &crtc_box); + box_intersect(&cover_box, &crtc_box, box); + coverage = box_area(&cover_box); if (coverage > best_coverage) { best_crtc = crtc; best_coverage = coverage; } } - /* Fallback to primary crtc for drawable's on slave outputs */ - if (best_crtc == NULL && !pScreen->isGPU) { - RROutputPtr primary_output = NULL; - ScreenPtr slave; + return best_crtc; +} - if (dixPrivateKeyRegistered(rrPrivKey)) - primary_output = ms_first_output(scrn->pScreen); - if (!primary_output || !primary_output->crtc) - return NULL; - - crtc = primary_output->crtc; - if (!ms_crtc_on((xf86CrtcPtr) crtc->devPrivate)) - return NULL; +static RRCrtcPtr +rr_crtc_covering_box_on_slave(ScreenPtr pScreen, BoxPtr box) +{ + if (!pScreen->isGPU) { + ScreenPtr slave; + RRCrtcPtr crtc = NULL; xorg_list_for_each_entry(slave, &pScreen->slave_list, slave_head) { if (!slave->is_output_slave) continue; - if (ms_covering_randr_crtc(slave, box, FALSE)) { - /* The drawable is on a slave output, return primary crtc */ + crtc = rr_crtc_covering_box(slave, box, FALSE); + if (crtc) return crtc; - } } } - return best_crtc; + return NULL; } xf86CrtcPtr ms_dri2_crtc_covering_drawable(DrawablePtr pDraw) { ScreenPtr pScreen = pDraw->pScreen; + RRCrtcPtr crtc = NULL; BoxRec box; box.x1 = pDraw->x; @@ -299,13 +187,18 @@ ms_dri2_crtc_covering_drawable(DrawableP box.x2 = box.x1 + pDraw->width; box.y2 = box.y1 + pDraw->height; - return ms_covering_xf86_crtc(pScreen, &box, TRUE); + crtc = rr_crtc_covering_box(pScreen, &box, TRUE); + if (crtc) { + return crtc->devPrivate; + } + return NULL; } RRCrtcPtr ms_randr_crtc_covering_drawable(DrawablePtr pDraw) { ScreenPtr pScreen = pDraw->pScreen; + RRCrtcPtr crtc = NULL; BoxRec box; box.x1 = pDraw->x; @@ -313,7 +206,11 @@ ms_randr_crtc_covering_drawable(Drawable box.x2 = box.x1 + pDraw->width; box.y2 = box.y1 + pDraw->height; - return ms_covering_randr_crtc(pScreen, &box, TRUE); + crtc = rr_crtc_covering_box(pScreen, &box, TRUE); + if (!crtc) { + crtc = rr_crtc_covering_box_on_slave(pScreen, &box); + } + return crtc; } static Bool Index: xsrc/external/mit/xorg-server/dist/randr/randrstr.h diff -u xsrc/external/mit/xorg-server/dist/randr/randrstr.h:1.6 xsrc/external/mit/xorg-server/dist/randr/randrstr.h:1.7 --- xsrc/external/mit/xorg-server/dist/randr/randrstr.h:1.6 Wed Jan 23 16:57:01 2019 +++ xsrc/external/mit/xorg-server/dist/randr/randrstr.h Sun Jul 11 00:13:27 2021 @@ -650,6 +650,11 @@ extern _X_EXPORT void extern _X_EXPORT RRCrtcPtr RRCrtcCreate(ScreenPtr pScreen, void *devPrivate); /* + * Tests if findCrtc belongs to pScreen or slave screens + */ +extern _X_EXPORT Bool RRCrtcExists(ScreenPtr pScreen, RRCrtcPtr findCrtc); + +/* * Set the allowed rotations on a CRTC */ extern _X_EXPORT void Index: xsrc/external/mit/xorg-server/include/dix-config.h diff -u xsrc/external/mit/xorg-server/include/dix-config.h:1.41 xsrc/external/mit/xorg-server/include/dix-config.h:1.42 --- xsrc/external/mit/xorg-server/include/dix-config.h:1.41 Tue Apr 27 04:01:42 2021 +++ xsrc/external/mit/xorg-server/include/dix-config.h Sun Jul 11 00:13:27 2021 @@ -355,7 +355,7 @@ #define XINERAMA 1 /* Current Xorg version */ -#define XORG_VERSION_CURRENT (((1) * 10000000) + ((20) * 100000) + ((11) * 1000) + 0) +#define XORG_VERSION_CURRENT (((1) * 10000000) + ((20) * 100000) + ((12) * 1000) + 0) /* Build Xv Extension */ #define XvExtension 1 Index: xsrc/external/mit/xorg-server/include/version-config.h diff -u xsrc/external/mit/xorg-server/include/version-config.h:1.12 xsrc/external/mit/xorg-server/include/version-config.h:1.13 --- xsrc/external/mit/xorg-server/include/version-config.h:1.12 Tue Apr 27 04:01:42 2021 +++ xsrc/external/mit/xorg-server/include/version-config.h Sun Jul 11 00:13:27 2021 @@ -5,13 +5,13 @@ #define VERSION_CONFIG_H /* Vendor man version */ -#define VENDOR_MAN_VERSION "Version 1.20.11" +#define VENDOR_MAN_VERSION "Version 1.20.12" /* Vendor name */ /* #define VENDOR_NAME "The X.Org Foundation" */ /* Vendor release */ -#define VENDOR_RELEASE (((1) * 10000000) + ((20) * 100000) + ((11) * 1000) + 0) +#define VENDOR_RELEASE (((1) * 10000000) + ((20) * 100000) + ((12) * 1000) + 0) #endif /* VERSION_CONFIG_H */ Index: xsrc/external/mit/xorg-server/include/xf86Build.h diff -u xsrc/external/mit/xorg-server/include/xf86Build.h:1.11 xsrc/external/mit/xorg-server/include/xf86Build.h:1.12 --- xsrc/external/mit/xorg-server/include/xf86Build.h:1.11 Sun Feb 23 10:26:56 2020 +++ xsrc/external/mit/xorg-server/include/xf86Build.h Sun Jul 11 00:13:27 2021 @@ -1,2 +1,2 @@ -#define BUILD_DATE 20200223 -#define BUILD_TIME 71123 +#define BUILD_DATE 20210709 +#define BUILD_TIME 171111 Index: xsrc/external/mit/xorg-server/include/xorg-config.h diff -u xsrc/external/mit/xorg-server/include/xorg-config.h:1.22 xsrc/external/mit/xorg-server/include/xorg-config.h:1.23 --- xsrc/external/mit/xorg-server/include/xorg-config.h:1.22 Tue Apr 27 04:01:42 2021 +++ xsrc/external/mit/xorg-server/include/xorg-config.h Sun Jul 11 00:13:27 2021 @@ -17,7 +17,7 @@ #define XORGSERVER 1 /* Current X.Org version. */ -#define XORG_VERSION_CURRENT (((1) * 10000000) + ((20) * 100000) + ((11) * 1000) + 0) +#define XORG_VERSION_CURRENT (((1) * 10000000) + ((20) * 100000) + ((12) * 1000) + 0) /* Name of X server. */ #define __XSERVERNAME__ "Xorg" Index: xsrc/external/mit/xorg-server/include/xorg-server.h diff -u xsrc/external/mit/xorg-server/include/xorg-server.h:1.22 xsrc/external/mit/xorg-server/include/xorg-server.h:1.23 --- xsrc/external/mit/xorg-server/include/xorg-server.h:1.22 Tue Apr 27 04:01:42 2021 +++ xsrc/external/mit/xorg-server/include/xorg-server.h Sun Jul 11 00:13:27 2021 @@ -140,7 +140,7 @@ #define XORGSERVER 1 /* Current Xorg version */ -#define XORG_VERSION_CURRENT (((1) * 10000000) + ((20) * 100000) + ((11) * 1000) + 0) +#define XORG_VERSION_CURRENT (((1) * 10000000) + ((20) * 100000) + ((12) * 1000) + 0) /* Build Xv Extension */ #define XvExtension 1