drmmode_display: Add LCD output name
The output name for LCD on DRA7 is displayed as "None-1" when queried by xrandr.
This patch adds the identifier string for LCD display connector_type in
output_names.
Signed-off-by: Mrinmayee Hingolikar <mrinmayee@ti.com>
The output name for LCD on DRA7 is displayed as "None-1" when queried by xrandr.
This patch adds the identifier string for LCD display connector_type in
output_names.
Signed-off-by: Mrinmayee Hingolikar <mrinmayee@ti.com>
omap_driver.h: Enable has_dmm for DRA7xx
Signed-off-by: Mrinmayee Hingolikar <mrinmayee@ti.com>
Signed-off-by: Mrinmayee Hingolikar <mrinmayee@ti.com>
Add support for DRA752 in the DDX
Signed-off-by: Anand Balagopalakrishnan <anandb@ti.com>
Signed-off-by: Anand Balagopalakrishnan <anandb@ti.com>
configure.ac: Replacement macro for AC_CHECK_FILES for cross compilation
Signed-off-by: Mrinmayee Hingolikar <mrinmayee@ti.com>
Signed-off-by: Mrinmayee Hingolikar <mrinmayee@ti.com>
DEBIAN: debianization
Fix WIP: dri2video (v5)
Signed-off-by: Xavier Boudet <x-boudet@ti.com>
Signed-off-by: Xavier Boudet <x-boudet@ti.com>
dri2: fix clipping with dri2video
Signed-off-by: Rob Clark <rob@ti.com>
Signed-off-by: Rob Clark <rob@ti.com>
dri2: fix various leaks
Signed-off-by: Rob Clark <rob@ti.com>
Signed-off-by: Rob Clark <rob@ti.com>
WIP: non-multiplanar dri2video
WIP: dri2video (v5)
dri2: fix some leaks
Signed-off-by: Rob Clark <rob@ti.com>
Signed-off-by: Rob Clark <rob@ti.com>
UBUNTU: Add Headers for dev package
Signed-off-by: Xavier Boudet <x-boudet@ti.com>
Signed-off-by: Xavier Boudet <x-boudet@ti.com>
NEWS: Bump version to 0.4.2
Signed-off-by: Rob Clark <rob@ti.com>
Signed-off-by: Rob Clark <rob@ti.com>
make-dist fixes
Don't forget to include headers. Also add a couple missing entries
to .gitignore.
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>
NEWS: Bump version to 0.4.1
Signed-off-by: Rob Clark <rob@ti.com>
Signed-off-by: Rob Clark <rob@ti.com>
fix ScreenInit -> CloseScreen -> ScreenInit
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>
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>
remove miInitializeBackingStore() call
It is no-op these days, and removed from latest xserver.
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>
remove some unused headers
Should fix a build break w/ some headers removed from xserver.. these
headers where anyways unneeded.
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>
fix multi-display + rotation
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>
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>
fix multi-display
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>
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>
add EnableDisableFBAccess to compat-api
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>
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>
omap: add support for PlatformProbe
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>
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>
xrandr rotation
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>
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>
dri2: fix multi-drawable flip confusion
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>
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>
NEWS: Bump version to 0.4.0
Signed-off-by: Rob Clark <rob@ti.com>
Signed-off-by: Rob Clark <rob@ti.com>
dri2: implement triple buffering
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>
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>
dri2: don't keep fb_id
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>
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>
omap: finish port to compat API
updating the EXA hooks was missed.
Signed-off-by: Rob Clark <rob@ti.com>
updating the EXA hooks was missed.
Signed-off-by: Rob Clark <rob@ti.com>
omap: port to compat server API.
This ports to the new server API.
Signed-off-by: Rob Clark <rob@ti.com>
This ports to the new server API.
Signed-off-by: Rob Clark <rob@ti.com>
dri2: turn vblank error into a WARNING
dri2: block close-screen until flips complete
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.
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.
exa: fix double free of scanout bo
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.
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.
dri2: don't attempt to re-allocate scanout buffer
The scanout buffer is already contiguous (scanout capable), and
re-allocating it causes pOMAP->scanout to be a dangling pointer.
The scanout buffer is already contiguous (scanout capable), and
re-allocating it causes pOMAP->scanout to be a dangling pointer.
dri2: hold extra buffer ref during swap
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.
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.
dri2: don't exchangebufs if blit
In the blit path, we don't actually swap back and front buffers.
In the blit path, we don't actually swap back and front buffers.
exa: fix double free of scanout bo on resize
The scanout buffer free'ing for the screen pixmap is handled elsewhere.
The scanout buffer free'ing for the screen pixmap is handled elsewhere.
dri2: send proper swap-type back to client
The dri2 client needs to know if we flipped or blit so it can
properly keep track of which buffer is the active back buffer.
The dri2 client needs to know if we flipped or blit so it can
properly keep track of which buffer is the active back buffer.
dri2: cleanup flip/exchange logic
Merge pull request #1 from vstehle/vincent/5432-sgx
Add support for OMAP5430 and OMAP5432
Add support for OMAP5430 and OMAP5432
Add support for OMAP5430 and OMAP5432
Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
Signed-off-by: Vincent Stehlé <v-stehle@ti.com>
fix vanishing cursor bug
Fixes a small logic bug (drmmode_hide_cursor() sets cursor->visble to
false) which would result in cursor getting left in a disabled state
if load_cursor_argb() is called on an enabled cursor.
Fixes a small logic bug (drmmode_hide_cursor() sets cursor->visble to
false) which would result in cursor getting left in a disabled state
if load_cursor_argb() is called on an enabled cursor.
xv: use fourcc_code
Use the fourcc_code() macro from drm_fourcc.h instead of macros that
only exist with dri2video.
Use the fourcc_code() macro from drm_fourcc.h instead of macros that
only exist with dri2video.
fix XV scaling with src crop
add XV support
Not really the best way to do video, because it forces a copy on server
side, but still useful for legacy apps that aren't fully supporting hw
decode and render.
Not really the best way to do video, because it forces a copy on server
side, but still useful for legacy apps that aren't fully supporting hw
decode and render.
Handle clipping properly for HW cursor
shuffle things around for submodules..
update man page
add HW cursor support using drm-plane
drmmode: cleanup/reindent
updates to build with 1.12.0 RC 1 xserver
Some PCI related refactorings.. also don't require DRI1 to be enabled.
Some PCI related refactorings.. also don't require DRI1 to be enabled.
probing support
fix issue initialization order vs damage
Damage must be initialized after EXA, otherwise they end up wrapping
the ScreenPtr fxns in wrong order, which ends up resulting in GCOps
fxns getting wrapped in the wrong order. And since Damage gets
indirectly initialized from miDCInitialize() this must happen after
EXA initialization. Otherwise only sw fallback operations will
generate damage.
Damage must be initialized after EXA, otherwise they end up wrapping
the ScreenPtr fxns in wrong order, which ends up resulting in GCOps
fxns getting wrapped in the wrong order. And since Damage gets
indirectly initialized from miDCInitialize() this must happen after
EXA initialization. Otherwise only sw fallback operations will
generate damage.
dri2: add missing FreeScratchGC() call
fix potential modeset crash
Add tiled buffer support.
misc build issues
move omap_drm stuff to libdrm
DRI2 support
initial commit