Age | Commit message (Collapse) | Author |
|
24bbp support has been removed in X.Org Server 1.20. Make
its support optional so this driver can be built for newer
X.Org Server versions.
Suggested-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Russell King <rmk@armlinux.org.uk>
|
|
Add a helper to initialise a box from a position + size, and to obtain
the width and height from an existing box.
Signed-off-by: Russell King <rmk@armlinux.org.uk>
|
|
drmSetClientCap() was added in libdrm version 2.4.47, which is a useful
wrapper for our universal plane support. Use this instead of open
coding this functionality.
DRM_CLIENT_CAP_UNIVERSAL_PLANES was introduced in 2.4.56, but we don't
want to force that version just for this definition. Provide a compat
definition for this.
Signed-off-by: Russell King <rmk@armlinux.org.uk>
|
|
Correct the path for the drm_fourcc.h include - the "drm" version is
the C library derived version from the kernel includes it was built
with, rather than the libdrm version.
Signed-off-by: Russell King <rmk@armlinux.org.uk>
|
|
Prepare to support rotations when acquiring a source. When checking
whether the pixmap contains all the required pixels, we need to
translate the untransformed coordinates to the coordinates on the
source pixmap.
Signed-off-by: Russell King <rmk@armlinux.org.uk>
|
|
There's nothing armada specific about this fourcc.h file, so move it to
the common/ subdirectory.
Signed-off-by: Russell King <rmk@armlinux.org.uk>
|
|
Block and wakeup handlers lose their pReadmask arguments.
Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Signed-off-by: Russell King <rmk@armlinux.org.uk>
|
|
When the X server unrealises a glyph, we weren't removing it from the
glyph cache. This results in a stale pointer in the cache to the glyph
which then is dereferenced when looking for a glyph to evict, leading
eventually to a segfault.
Fix this by removing the glyph from the cache while it's being
unrealised.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Add a bo cache pointer to the free method, so that if we embed the
bo_cache structure inside another structure, the free method can
access the parent structure.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Add a typedef for the bo cache free method
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Add an 8MB bo-cache, which helps when we allocate aligned 1080p buffers
via DRI.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
So they end up in the release tarball.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
The X.Org server has fallback implementaion of strndup() whose prototype
gets pulled in by various X headers. This collides with the systems libc
strndup if this is provided.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Use a BoxRec for the destination rectangle for the glyph, so the
etnaviv code doesn't have to manually convert to a BoxRec.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Add generic bo caching support to the common library. Bo caching
allows us to efficiently re-use bos which we have already allocated.
Bos are sorted into buckets, and free entries are time-limited in
the cache (provided bo_cache_clean() is called.)
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
The xorg_list_entry alias was missing, add it.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Add a textured Xv adapter which can render YUV422 packed and YUV420
planar formats. This is done using a two stage blit - first stage
scales vertically, preferably to a tiled buffer, followed by a
second stage scaling horizontally.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Add initial etnaviv support. This is a copy of the vivante code,
adapted to the etnaviv library, and is at feature parity with the
vivante code.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Since we're using xPoint offsets everywhere, remove the old _deltas()
variant of drawable_pixmap.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Provide better mint() and maxt() macros.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Add a function to return the drawable pixmap screen origin.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Add a function which gives a conservative approximation whether a line
intersects a box. This function will only return false when there is
no chance for the line to intersect the box, otherwise it returns true.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Move the definition of the XVBO format to common/ so that it can be
shared between the KMS frontend and etnaviv backend.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Add a generic xv_attribute handling helper to the common library.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Move the armada_format code into common/ so that other Xv drivers can
share this code.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Add a helper to assemble glyphs from the X server into a list of
pictures and positions to be copied to the screen.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Add a glyph caching implementation, mostly derived from Intel's UXA
code, to common/
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Provide prefetch() and prefetchw() to allow us to provide explicit
prefetch hints to the compiler.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Add a timestamped logging facility which we can use to monitor the
progress of various operations within the X server.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Add helper functions to format a description of a Drawable and Picture.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
container_of() is defined in several places. Move this to the common
utils.h header, and ensure that this is the version we use. Versions
in xorg list.h are slightly buggy in that they are not sufficiently
insulated from their usage context.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Move the list compatibility to common/
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Move the generic PAM P7 image dumping code to the common library.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Move the generic box utilities into common/, augment with additional
box utilties, and rename BoxClip() to __box_intersect().
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
common/
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Add common utilities for getting pixmaps from drawables.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|
|
Move various header files to common/ since they will be shared by the
KMS and acceleration code.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
|