radeon: add new SI pci ids

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
radeon: add new richland pci ids

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
freedreno: add synchronization between mesa and ddx

Super-cheezy way to synchronization between mesa and ddx..  the
SET_ACTIVE ioctl gives us a way to stash a 32b # w/ a GEM bo, and
GET_BUFINFO gives us a way to retrieve it.  We use this to stash
the timestamp of the last ISSUEIBCMDS on the buffer.

To avoid an obscene amount of syscalls, we:
 1) Only set the timestamp for buffers w/ an flink name, ie.
    only buffers shared across processes.  This is enough to
    catch the DRI2 buffers.
 2) Only set the timestamp for buffers submitted to the 3d ring
    and only check the timestamps on buffers submitted to the
    2d ring.  This should be enough to handle synchronizing of
    presentation blit.  We could do synchronization in the other
    direction too, but that would be problematic if we are using
    the 3d ring from DDX, since client side wouldn't know this.

The waiting on timestamp happens before flush, and setting of
timestamp happens after flush.  It is transparent to the user
of libdrm_freedreno as all the tracking of buffers happens via
_emit_reloc()..

Signed-off-by: Rob Clark <robclark@freedesktop.org>
intel: Add support for VEBOX ring (v2)

v2: Fix the test for has_vebox

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
drm: add qxl drm header file

Now that this driver is merged add the header file.

Signed-off-by: Dave Airlie <airlied@redhat.com>
radeon: add HAINAN family

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
radeon: add HAINAN pci ids

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
radeon: add RADEON_SURF_FMASK flag which disables 2D->1D tiling transition

Signed-off-by: Marek Olšák <maraeo@gmail.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
configure.ac: bump version to 2.4.45 for release
freedreno: add handle and name tracking

Due to the evil userspace buffer tracking we have to do, and hacks for
creating GEM buffer from fbdev/scanout, "evil-twin" fd_bo objects are
problematic.  So introduce hashtable tracking of bo's and dev's, to
avoid getting duplicate fd_bo ptrs for the same underlying gem object,
in particular when importing via flink name.

Signed-off-by: Rob Clark <robclark@freedesktop.org>
freedreno: add some asserts

Things are worse if we issueibcmds with bogus gpu ptrs, so it is better
to just make userspace crash when things go pear shaped.

Signed-off-by: Rob Clark <robclark@freedesktop.org>