Age | Commit message (Collapse) | Author | Files | Lines |
|
xnfcalloc is just an alias for XNFcallocarray() that doesn't seem to serve
any practical purpose, so it can go away once all drivers stopped using it.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
Part-of: <https://gitlab.freedesktop.org/xorg/driver/xf86-video-omap/-/merge_requests/5>
|
|
xnfalloc is just an alias for XNFalloc() that doesn't seem to serve
any practical purpose, so it can go away once all drivers stopped using it.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
Part-of: <https://gitlab.freedesktop.org/xorg/driver/xf86-video-omap/-/merge_requests/5>
|
|
A bunch of autogenerated files from autotools have been missing yet.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
Part-of: <https://gitlab.freedesktop.org/xorg/driver/xf86-video-omap/-/merge_requests/4>
|
|
Fixes CI build failure:
meson.build:21:0: ERROR: Value "true" (of type "string") for combo option
"Enable support for OMAP's experimental KMS API." is not one of the
choices. Possible choices are (as string): "enabled", "disabled", "auto".
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
|
Otherwise xrandr shows the name as "Unknown16-1" instead of DSI-1
for example on droid4.
These defines need to match with kernel DRM_MODE_CONNECTOR related
defines in drm_mode.h, so let's add the missing ones for Virtual,
DSI, and DPI.
Signed-off-by: Tony Lindgren <tony@atomide.com>
|
|
Few fixes to allow building xf86-video-omap with musl:
1. We get warnings about duplicate debug macros as we already have them
also in omap_driver.h, let's just remove the dpulicates
2. Use standard __func__ instead of __FUNCTION__
Signed-off-by: Tony Lindgren <tony@atomide.com>
|
|
Commit 0bdd370ab720 ("dri2: hold extra buffer ref during swap") started
increasing pPixmap->refcnt for DRI2BufferFrontLeft, but that gets never
decremented in OMAPDRI2DestroyBuffer.
Let's fix the issue by pairing the increment with a decrement in
OMAPDRI2DestroyBuffer. Otherwise we get a segfault after rotating an
sgx accelerated opengl es app and then terminating it.
Signed-off-by: Tony Lindgren <tony@atomide.com>
|
|
Fixes build failure:
In file included from omap_driver.c:34:
omap_driver.c: In function 'OMAPPreInit':
omap_driver.h:104:60: error: '%s' directive argument is null [-Werror=format-overflow=]
104 | do { xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "ERROR: " fmt "\n",\
| ^~~~~~~~~
omap_driver.c:545:17: note: in expansion of macro 'ERROR_MSG'
545 | ERROR_MSG("Unknown chipset: %s", pScrn->chipset);
| ^~~~~~~~~
cc1: all warnings being treated as errors
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
|
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
|
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
|
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
|
The client could have said anything here, and if what they said doesn't
actually name an atom NameForAtom() will return NULL, and strcmp() will
be unhappy about that.
[copied from xserver d4995a3936ae283b9080fdaa0905daa669ebacfc]
Signed-off-by: Adam Jackson <ajax@redhat.com>
|
|
Signed-off-by: Rob Clark <robdclark@gmail.com>
|
|
NotifyFd is available after API 22, and must be used after API 23.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
Signed-off-by: Adam Jackson <ajax@redhat.com>
|
|
The driverIsPerformingTransform field becomes an enum, and
xf86CrtcTransformCursorPos is no longer necessary.
|
|
Signed-off-by: Rob Clark <robdclark@gmail.com>
|
|
This is a mask calculation so bitwise '&' should have been used.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Reviewed-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Rob Clark <robdclark@gmail.com>
|
|
Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
Signed-off-by: Rob Clark <robdclark@gmail.com>
|
|
Signed-off-by: Rob Clark <robdclark@gmail.com>
Signed-off-by: Steve Wilkins <steve.wilkins@raymarine.com>
|
|
Fix crash when performing a page flip with multiple crtc's enabled.
Signed-off-by: Steve Wilkins <steve.wilkins@raymarine.com>
Signed-off-by: Rob Clark <robdclark@gmail.com>
|
|
Signed-off-by: Rob Clark <robdclark@gmail.com>
|
|
Signed-off-by: Rob Clark <robdclark@gmail.com>
|
|
Signed-off-by: Rob Clark <robdclark@gmail.com>
|
|
If kernel does not support rotation, then we should simply not use
rotation, rather than just failing.
Signed-off-by: Rob Clark <rob@ti.com>
|
|
Signed-off-by: Rob Clark <rob@ti.com>
|
|
Signed-off-by: Rob Clark <rob@ti.com>
|
|
Don't forget to include headers. Also add a couple missing entries
to .gitignore.
Signed-off-by: Rob Clark <rob@ti.com>
|
|
Signed-off-by: Rob Clark <rob@ti.com>
|
|
If the screen gets closed and re-init'd, we'd hit a null ptr for
pOMAP->scanout, because scanout size was not re-initialized, causing
the second drmmode_reallocate_scanout() to be a no-op.
Signed-off-by: Rob Clark <rob@ti.com>
|
|
It is no-op these days, and removed from latest xserver.
Signed-off-by: Rob Clark <rob@ti.com>
|
|
Should fix a build break w/ some headers removed from xserver.. these
headers where anyways unneeded.
Signed-off-by: Rob Clark <rob@ti.com>
|
|
If the fb is reallocated due to rotated CRTC in drmmode_set_mode_major()
then we need to reconfigure the CRTCs that are torn down by the kernel
when the previous fb was destroyed.
Signed-off-by: Rob Clark <rob@ti.com>
|
|
Don't unconditionally delete the fb when setting crtc. With multiple
displays this will tear down the crtc's that are already configured.
Signed-off-by: Rob Clark <rob@ti.com>
|
|
Fixes build break w/ latest xserver:
drmmode_display.c: In function 'drmmode_reallocate_scanout':
drmmode_display.c:1149:4: error: passing argument 1 of 'pScrn->EnableDisableFBAccess' makes pointer from integer without a cast [-Werror]
drmmode_display.c:1149:4: note: expected 'ScrnInfoPtr' but argument is of type 'int'
drmmode_display.c:1183:4: error: passing argument 1 of 'pScrn->EnableDisableFBAccess' makes pointer from integer without a cast [-Werror]
drmmode_display.c:1183:4: note: expected 'ScrnInfoPtr' but argument is of type 'int'
cc1: all warnings being treated as errors
Signed-off-by: Rob Clark <rob@ti.com>
|
|
Since xorg 1.12.99.901 we now have support for platform devices, which
is already responsible for looking over the devices from udev, and
setting up the device attributes, entity and platform slot, simplifying
the probe method.
The old probe function is still valid, and also used in case there's no
platform support, so this change only affects users building the driver
agains the latest xorg release.
Signed-off-by: Ricardo Salveti de Araujo <ricardo.salveti@linaro.org>
Signed-off-by: Rob Clark <rob@ti.com>
|
|
If XF86_CRTC_VERSION >= 4, on platforms with dmm/tiler (OMAP4+),
use tiled buffers for scanout buffer to enable rotatated and/or
mirrored scanout.
This utilizes the RFC crtc/plane properties support to configure
rotation. Tiled buffers are only used if rotation is enabled.
Signed-off-by: Rob Clark <rob@ti.com>
|
|
A flip pending on the fullscreen drawable shouldn't effect a swap on
a windowed drawable. This shows up if using a GL compositing window
manager (like compiz) compositing a 3d app. We still need to keep
track of pending flips globally (per display), but use a per-drawable
counter in the decision to queue up.
Signed-off-by: Rob Clark <rob@ti.com>
|
|
Signed-off-by: Rob Clark <rob@ti.com>
|
|
Add support for triple buffering. Although in this case it is triggered
by the client requesting a third buffer, so the client is in control of
when to use triple vs. double buffering. This way the client can make
it's own latency vs throughput decision.
Signed-off-by: Rob Clark <rob@ti.com>
|
|
When the client re-requests buffers, the front buffer is always destroyed
and recreated, and if that is drmModeRmFB()'ing the front buffer, that
causes problems. This was hidden by a bug that we didn't exchange the
fb_id so we were always flipping to the same front buffer.
Signed-off-by: Rob Clark <rob@ti.com>
|
|
updating the EXA hooks was missed.
Signed-off-by: Rob Clark <rob@ti.com>
|
|
This ports to the new server API.
Signed-off-by: Rob Clark <rob@ti.com>
|
|
|
|
If CloseScreen happens while we are waiting for a page_flip event, we
need to block the CloseScreen until after the page_flip is processed
to avoid deref'ing the screen ptr after the screen is closed.
|
|
When the screen is torn down and the screen pixmap destroyed, we
should not delete the bo, as it is freed elsewhere.
TODO: add refcnting in libdrm_omap so this can be handled in a
cleaner way.
|
|
The scanout buffer is already contiguous (scanout capable), and
re-allocating it causes pOMAP->scanout to be a dangling pointer.
|
|
It is possible that the client detaches while we are waiting for the
page_flip event. Use ref counting on dri2 buffer to avoid freeing
a buffer before the page_flip event is processed.
|
|
In the blit path, we don't actually swap back and front buffers.
|
|
The scanout buffer free'ing for the screen pixmap is handled elsewhere.
|