lp:xserver-xorg-video-intel

Created by James Westby on 2009-12-16 and last modified on 2019-03-01
Get this branch:
bzr branch lp:xserver-xorg-video-intel

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
VCS imports
Project:
xf86-video-intel
Status:
Development

Import details

Import Status: Reviewed

This branch is an import of the HEAD branch of the Git repository at git://anongit.freedesktop.org/xorg/driver/xf86-video-intel.

The next import is scheduled to run in 1 hour.

Last successful import was 4 hours ago.

Import started 4 hours ago on izar and finished 4 hours ago taking 20 seconds — see the log
Import started 10 hours ago on alnitak and finished 10 hours ago taking 20 seconds — see the log
Import started 16 hours ago on alnitak and finished 16 hours ago taking 20 seconds — see the log
Import started 22 hours ago on izar and finished 22 hours ago taking 20 seconds — see the log
Import started on 2019-04-18 on alnitak and finished on 2019-04-18 taking 20 seconds — see the log
Import started on 2019-04-18 on izar and finished on 2019-04-18 taking 15 seconds — see the log
Import started on 2019-04-18 on izar and finished on 2019-04-18 taking 20 seconds — see the log
Import started on 2019-04-17 on alnitak and finished on 2019-04-17 taking 20 seconds — see the log
Import started on 2019-04-17 on izar and finished on 2019-04-17 taking 20 seconds — see the log
Import started on 2019-04-17 on izar and finished on 2019-04-17 taking 20 seconds — see the log

Recent revisions

8551. By Ville Syrjälä <email address hidden> on 2019-03-01

sna: Switch back to hwcursor on the next cursor update

Once we've switched to using the swcursor (possibly
due to the cursor ioctl failing) we currently keep
using the swcursor until the modeset.

That's not particularly great as the swcursor has several
issues. Apart from the (presumably expected) flicker,
the cursor also tends to leave horrible trails behind
around dri2/3 windows (happens with tearfree at least).

To avoid some of that let's try to switch back to the hwcursor
a bit sooner. We can do that neatly via the convenient swcursor
block handler.

v2 [ickle]: Apply the restoration after the screen update is complete.
v3 [vsyrjala]: Push it back to restore_swcursor and remove the
fullscreen redraw -- prevents terrible flickering in v2!

References: https://bugs.freedesktop.org/show_bug.cgi?id=106935
Signed-off-by: Ville Syrjälä <email address hidden>
Signed-off-by: Chris Wilson <email address hidden>

8550. By Chris Wilson on 2019-03-01

sna: Supply 64b reloc versions for threaded composite blts

Apparently we never take this path or else it would have failed before
(we don't take it as we prefer render for these chipsets).

Signed-off-by: Chris Wilson <email address hidden>

8549. By Adam Jackson <email address hidden> on 2019-02-21

Fix build on i686

Presumably this only matters for i686 because amd64 implies sse2, but:

BUILDSTDERR: In file included from gen4_vertex.c:34:
BUILDSTDERR: gen4_vertex.c: In function 'emit_vertex':
BUILDSTDERR: sna_render_inline.h:40:26: error: inlining failed in call to always_inline 'vertex_emit_2s': target specific option mismatch
BUILDSTDERR: static force_inline void vertex_emit_2s(struct sna *sna, int16_t x, int16_t y)
BUILDSTDERR: ^~~~~~~~~~~~~~
BUILDSTDERR: gen4_vertex.c:308:25: note: called from here
BUILDSTDERR: #define OUT_VERTEX(x,y) vertex_emit_2s(sna, x,y) /* XXX assert(!too_large(x, y)); */
BUILDSTDERR: ^~~~~~~~~~~~~~~~~~~~~~~~
BUILDSTDERR: gen4_vertex.c:360:2: note: in expansion of macro 'OUT_VERTEX'
BUILDSTDERR: OUT_VERTEX(dstX, dstY);
BUILDSTDERR: ^~~~~~~~~~

The bug here appears to be that emit_vertex() is declared 'sse2' but
vertex_emit_2s is merely always_inline. gcc8 decides that since you said
always_inline you need to have explicitly cloned it for every
permutation of targets. Merely saying inline seems to do the job of
cloning vertex_emit_2s as much as necessary.

So to reiterate: if you say always-inline, it won't, but if you just say
maybe inline, it will. Thanks gcc, that's helpful.

8548. By Chris Wilson on 2019-02-20

sna: Repeat udev_monitor_get_device() if interrupted

In case udev_monitor_get_device() itself does not handle being
interrupted, go around the loop again. Daniel Vetter discovered this
interesting quirk during igt testing of kms_leases.

Signed-off-by: Chris Wilson <email address hidden>

8547. By Mario Kleiner <email address hidden> on 2019-01-21

sna/uxa: Fix colormap handling at screen depth 30. (v2)

The various clut handling functions like a setup
consistent with the x-screen color depth. Otherwise
we observe improper sampling in the gamma tables
at depth 30.

Therefore replace hard-coded bitsPerRGB = 8 by actual
bits per channel scrn->rgbBits. Also use this for call
to xf86HandleColormaps().

Tested for uxa and sna at depths 8, 16, 24 and 30 on
IvyBridge, and tested at depth 24 and 30 that xgamma
and gamma table animations work, and with measurement
equipment to make sure identity gamma ramps actually
are identity mappings at the output.

v2: Also deal with X-Server 1.19 and earlier, which as of
    v1.19.6 lack a fix to color palette handling and can
    not deal with depths/bpc > 24/8 bpc. On < 1.20 we skip
    xf86HandleColormaps() setup at > 8 bpc. This disables
    color palette handling on such servers at > 8 bpc, but
    still keeps RandR gamma table handling intact.

    Tested on 1.19.6 and 1.20.0 to do the right thing.

Signed-off-by: Mario Kleiner <email address hidden>
Reviewed-by: Ville Syrjälä <email address hidden>

8546. By Chris Wilson on 2019-01-10

sna: Switch off old outputs on topology changes

The kernel may keep the old connector id around so that userspace can
gracefully switch it off, which means that on detecting a topology
change (a new id for an old connector path), we must do a SetCRTC to
release the old resources.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106250
Signed-off-by: Chris Wilson <email address hidden>

8545. By Sergii Romantsov <email address hidden> on 2019-01-10

sna: fix of byteswap.h absence on bsd

OpenBSD, FreeBSD and NetBSD don't contains file byteswap.h.
Used specifics of them.

Fixes: 746ab3bb131d (sna: Added AYUV format support for textured and sprite video adapters.)
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109268
CC: Stanislav Lisovskiy <email address hidden>
CC: Chris Wilson <email address hidden>
Signed-off-by: Sergii Romantsov <email address hidden>

8544. By Chris Wilson on 2018-12-03

sna: Skip restoring a mode for link-status=bad if the crtc was idle

If we do not have a mode (and bo) enabled on the crtc, then trying to
restore that bo ends up in a NULL pointer dereference.

Reported-by: Stanislav Lisovskiy <email address hidden>
Signed-off-by: Chris Wilson <email address hidden>

8543. By Stanislav Lisovskiy <email address hidden> on 2018-11-13

sna: Added AYUV format support for textured and sprite video adapters.

v2: Renamed DRM_FORMAT_XYUV to DRM_FORMAT_XYUV8888.
    Added comment about AYUV byte ordering in Gstreamer.

v3: Removed sna_composite_op flags related change to the separate patch.

v4: Fixed review comments, done code refactoring

v5: Fixed following review comments:
    - Fixed comment in shader code for ayuv kernel.
    - Fixed naming to VIDEO_AYUV_BT601/BT709 for ayuv kernels.
    - Removed duplicate gen9_kernel parameter, left from previous patches
    - Added colorspace handling for new AYUV kernel
    - Fixed naming of sna_copy_packed_data_ayuv to sna_copy_ayuv_data
    - Started using standard bswap_32 function for byte swapping in sna_copy_ayuv_data
    - Removed redundant code in sna_copy_ayuv_data so that it looks more neat
    - Fixed XVIMAGE_AYUV structure initialization to contain proper byte sequence for GST
    - Fixed bogus comment about subsampling for DRM_FORMAT_XYUV8888
    - Fixed AYUV advertisement for all platforms
    - Removed unnecessary RGB888 declaration.

v6:
    - Fixed surface format not to use alpha as supposed
    - Now doing byte swapping always during copy
    - Changed hack, required for GST to work to be at one place
    - Fixed invalid sampling values for XVIMAGE_AYUV
    - Fixed sprite format checking order and images_ayuv definition.

v7:
    - Removed reverse_bytes bool parameter, now swapping bytes
      for XYUV unconditionally both for textured and sprite modes.

v8:
    - Added gen9_images structure, in order to expose AYUV format to
      proper platforms.

Signed-off-by: Stanislav Lisovskiy <email address hidden>
Reviewed-by: Ville Syrjälä <email address hidden>
Signed-off-by: Chris Wilson <email address hidden>

8542. By Stanislav Lisovskiy <email address hidden> on 2018-11-13

sna/gen9+: Split out wm_kernel from the sna_composite_op flags

With the extra video kernels we already ran out of bits in
the flags. To tackle that let's just split out the
wm_kernel to its own thing.

Signed-off-by: Stanislav Lisovskiy <email address hidden>
Reviewed-by: Ville Syrjälä <email address hidden>
Signed-off-by: Chris Wilson <email address hidden>

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
This branch contains Public information 
Everyone can see this information.

Subscribers