• Home
  • History
  • Annotate
  • only in /external/mesa3d/src/gbm/
History log of /external/mesa3d/src/gbm/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
79d9471efda3630c050c809cdc8c26236283fc6a 21-Oct-2012 Kristian Høgsberg <krh@bitplanet.net> gbm: Use the kms dumb ioctls for cursor instead of libkms

We need to create bos suitable for cursor usage that we can map and
write data into. The kms dumb ioctls is all we need for this, so drop
the dependency on libkms.
ackends/dri/gbm_dri.c
ackends/dri/gbm_driint.h
0a72dbd3504e7a97750561a50556978b13bc0361 01-Oct-2012 Kristian Høgsberg <krh@bitplanet.net> gbm: Reject buffers that are not wl_drm buffers in gbm_bo_import()

Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
ackends/dri/gbm_dri.c
00978098794f723230a33cab1c1152686f1c4fa5 31-Aug-2012 Jakob Bornecrantz <jakob@vmware.com> dri: Rework planar image interface

As discussed with Kristian on #wayland. Pushes the decision of components into
the dri driver giving it greater freedom to allow t to implement YUV samplers
in hardware, and which mode to use.

This interface will also allow drivers like SVGA to implement YUV surfaces
without the need to sub-allocate and instead send 3 seperate buffers for each
channel, currently not implemented.

I have tested these changes on Gallium Svga. Scott tested them on both intel
and Gallium Radeon. Kristan and Pekka tested them on intel.

v2: Fix typo in dri2_from_planar.
v3: Merge in intel changes.

(cherry picked from commit 6a7dea93fa70d670a5954e47a47075a2703209d4)

Tested-by: Scott Moreau <oreaus@gmail.com>
Tested-by: Pekka Paalanen <ppaalanen@gmail.com>
Tested-by: Kristian Høgsberg <krh@bitplanet.net>
Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
ackends/dri/gbm_dri.c
93ebec87ed46978942464a6f08801ae06e86fa8b 21-Aug-2012 Jakob Bornecrantz <jakob@vmware.com> dri: Make query image WIDTH and HEIGHT be version 4

Tested-by: Scott Moreau <oreaus@gmail.com>
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
ackends/dri/gbm_dri.c
6bb71b8cbe6b17a5d59e369631502e642804406e 15-Aug-2012 Jakob Bornecrantz <jakob@vmware.com> dri: Remove image write function

Since its not used by anything anymore and no release has gone out
where it was being used.

Tested-by: Scott Moreau <oreaus@gmail.com>
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
ackends/dri/gbm_dri.c
a669a5055eadae85ffa000cea19a2241d0699348 13-Aug-2012 Jakob Bornecrantz <jakob@vmware.com> gbm: Use libkms to replace DRI cursor images

Uses libkms instead of dri image cursor. Since this is the only user of the
DRI cursor and write interface we can remove cursor surfaces entirely from
the DRI interface and as a consequence also from the Gallium interface as
well. Tho to make everybody happy with this it would probably should add a
kms_bo_write function, but that is probably wise in anyways.

The only downside is that it adds a dependancy on libkms, this could how ever
be replaced with the dumb_bo drm ioctl interface.

Tested-by: Scott Moreau <oreaus@gmail.com>
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
akefile.am
ackends/dri/gbm_dri.c
ackends/dri/gbm_driint.h
61e95b8a5f8524c7ff726f92ef6edc6b6bb35196 14-Aug-2012 Jakob Bornecrantz <jakob@vmware.com> gbm: Add shared usage on images created

Tested-by: Scott Moreau <oreaus@gmail.com>
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
ackends/dri/gbm_dri.c
e7a4a2b18b9803c7b59968519c78c9fff4d521e6 19-Jul-2012 Elvis Lee <kwangwoong.lee@lge.com> gbm: Fix build for wayland include

backends/gbm_dri.c fails to find wayland-server.h.

Signed-off-by: Elvis Lee <kwangwoong.lee@lge.com>
akefile.am
7250cd506baa0bd4649b30d87509cdd0cbc06a57 16-Jul-2012 Kristian Høgsberg <krh@bitplanet.net> gbm: Rename gbm_bo_get_pitch to gbm_bo_get_stride

We use pitch for 'pixels per row' and stride for 'bytes per row' pretty
consistently in mesa and most other places, so rename the gbm API.
ackends/dri/gbm_dri.c
ain/gbm.c
ain/gbm.h
ain/gbmint.h
44f066b9ffb7749e872c9cc44ab4d6e2973c2372 13-Jul-2012 Kristian Høgsberg <krh@bitplanet.net> gbm: Add new gbm_bo_import entry point

This generalizes and replaces gbm_bo_create_for_egl_image. gbm_bo_import
will create a gbm_bo from either an EGLImage or a struct wl_buffer.
akefile.am
ackends/dri/gbm_dri.c
ain/gbm.c
ain/gbm.h
ain/gbmint.h
4fddb2ba21add1c1968330e5224ecead59da3995 02-May-2012 Kristian Høgsberg <krh@bitplanet.net> gbm: Add gbm_bo_write entry point

This new gbm entry point allows writing data into a gbm bo. The bo has
to be created with the GBM_BO_USE_WRITE flag, and it's only required to
work for GBM_BO_USE_CURSOR_64X64 bos.

The gbm API is designed to be the glue layer between EGL and KMS, but there
was never a mechanism initialize a buffer suitable for use with KMS
hw cursors. The hw cursor bo is typically not compatible with anything EGL
can render to, and thus there's no way to get data into such a bo.

gbm_bo_write() fills that gap while staying out of the efficient
cpu->gpu pixel transfer business.

Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
ackends/dri/gbm_dri.c
ain/gbm.c
ain/gbm.h
ain/gbmint.h
6c84f2992fee8b866b9f7434c8c26613b67dc2d4 30-Apr-2012 Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com> gbm: add gbm_bo_get_device() function
ain/gbm.c
ain/gbm.h
55aab92495692f453c04f5b99e67bcb77cd27e14 30-Apr-2012 Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com> gbm: update documentation to reflect current behavior
ain/gbm.c
310d8d189d14eb6c29be205bf2c9e98187b2fa84 30-Apr-2012 Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com> gbm: add gbm_bo_get/set_user_data()

This allows the user to associate some data to a gbm_bo and get a
callback when the bo is destroyed.
ain/gbm.c
ain/gbm.h
ain/gbmint.h
f641c57cfa91b259077b4be89789dc01235b0187 30-Apr-2012 Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com> gbm: remove unused fields from gbm_dri_surface
ackends/dri/gbm_driint.h
fd6acb97fb9164b57daf3ca4b1bd637ca4685b64 25-Jan-2012 Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com> gbm: Create hooks for dri2_loader_extension in dri backend

Pass a dri2_loader extension to the dri driver when gbm creates the dri
screen. The implementation jumps through pointers in the gbm device
so that an EGL on GBM implementation can provide the real implementations.
ackends/dri/gbm_dri.c
ackends/dri/gbm_driint.h
0d1ef1f57f9011fd2bc3354d60fb19db29af7363 25-Jan-2012 Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com> gbm: Add gbm_surface interface

The idea here is to be able to create an egl window surface from a
gbm_surface. This avoids the need for the surfaceless extension and
lets the EGL platform handle buffer allocation, while keeping the user
in charge of somehow presenting the buffers (using kms page flipping,
for example).

gbm_surface_lock_front_buffer() locks a surface's front buffer and
returns a gbm bo representing it. This bo should later be returned
to the gbm surface using gbm_surface_release_buffer().
ackends/dri/gbm_dri.c
ackends/dri/gbm_driint.h
ain/gbm.c
ain/gbm.h
ain/gbmint.h
410aa3eb45c88dd939dcecaa2aafa8f5afd6e000 25-Jan-2012 Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com> egl_dri2: make flush extension useable by drm platform
ackends/dri/gbm_dri.c
ackends/dri/gbm_driint.h
dfce56ba4dd444cdb1148425a2cc0662bb79932d 20-Mar-2012 Kenneth Graunke <kenneth@whitecape.org> Add Makefile.in to toplevel .gitignore

To avoid redundancies, this patch also removes Makefile.in from the
other .gitignore files.

Acked-by: Eric Anholt <eric@anholt.net>
gitignore
b41ab3b42c989926389e599d5794412a628f277f 16-Mar-2012 Paul Berry <stereotype441@gmail.com> Add .deps/, .libs/, and *.la to toplevel .gitignore

To avoid redundancies, this patch also removes .deps, .libs, and *.la
from .gitignore files in subdirectories.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
gitignore
ca760181b4420696c7e86aa2951d7203522ad1e8 16-Mar-2012 Kristian Høgsberg <krh@bitplanet.net> shared-glapi: Convert to automake

This fixes a build problem where EGL links to libgbm.la, which encodes
a relative path to it's libglapi.so dependency. The relative path
breaks when the linker tries to resolve it from src/egl/main instead
of src/gbm. Typically we silently fall back to the system
libglapi.so, which is wrong and breaks when there isn't one.

Morale of the story: don't mix mklib and libtool.
akefile.am
ab6e081914ed2d9f8e166d6cfb9fd9998a45181d 07-Mar-2012 Benjamin Franzke <benjaminfranzke@googlemail.com> gbm_dri: Fix DRIimage lookup callback

That is by making the dri extension variables static in gbm_dri.c.

The image_lookup_extension is provided by egl_dri2 when using x11 or wayland
platforms, when using the drm platform, gbm_dri has a wrapper for it.
Both use the same variables name image_lookup_extension.

Since -fvisibility=hidden was (probably by mistake) removed when converting to
automake, the "image_lookup_extension" symbol from egl_dri2.c became exported
in libEGL.so, so "image_lookup_extension" from gbm_dri.c was ignored.
This resulted in calling incorrect callbacks.

We cant make the image_lookup_extension static in egl_dri2.c right now,
since its used across multiple files.

Bugzilla: https://bugs.freedesktop.org/attachment.cgi?id=58099
Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
ackends/dri/gbm_dri.c
8de5c355fa2bf0f30df2c7cf39aee01e793284bf 21-Feb-2012 Jesse Barnes <jbarnes@virtuousgeek.org> gbm: track buffer format through DRI drivers

GBM needs the buffer format in order to communicate with DRM and clients
for things like scanout.

So track the DRI format requested in the various back ends and use it to
return the DRI format back to GBM when requested. GBM will then map
this into the GBM surface type (which is in turn based on the DRM fb
format list).

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
ackends/dri/gbm_dri.c
ain/gbm.c
ain/gbm.h
ain/gbmint.h
1b417e176765116fd9185b7ea8d6cc8825c30aa3 26-Jan-2012 Benjamin Franzke <benjaminfranzke@googlemail.com> gbm: Add back link flags for udev, dl and glapi

They were left out when migrating to automake.
akefile.am
33f8a3cfbe85db6514231d8ebc622af1f2139a13 25-Jan-2012 Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com> gbm: fix copy & paste error in gbm_bo_get_handle documentation
ain/gbm.c
a208468e04353239f2876cc2013f860b48a4f1c1 24-Jan-2012 Matt Turner <mattst88@gmail.com> gbm: install libgbm.so into lib

This partially reverts commit 90e256853418eaaba3717f930cc6a331e4099056.
akefile.am
ackends/Makefile.template
468c7ea2acd1ef07973af0dc23ff994691f0a9b7 24-Jan-2012 Benjamin Franzke <benjaminfranzke@googlemail.com> targets/gbm: Fix install path

GBM_BACKEND_INSTALL_DIR was deleted by commit
06ad64ad29e7aa9e2d001f6bd1f8c1c1f77050b8.
Since we dont need this configurable, use $(INSTALL_LIB_DIR)/gbm now.
ackends/Makefile.template
ab52be68261bb6d2d27dab9fda40810022ba3475 24-Jan-2012 Benjamin Franzke <benjaminfranzke@googlemail.com> gbm/Makefile.template: Remove builtin-compile path

Builtins are handled by the main gbm Makefile since
06ad64ad29e7aa9e2d001f6bd1f8c1c1f77050b8.
ackends/Makefile.template
90e256853418eaaba3717f930cc6a331e4099056 24-Jan-2012 Benjamin Franzke <benjaminfranzke@googlemail.com> egl,gbm_gallium: Fix linkage against gbm from automake

Add src/gbm/.libs to ldflags.
The gbm lib is src/gbm/.libs/ instead of lib/
as of commit 06ad64ad29e7aa9e2d001f6bd1f8c1c1f77050b8.
ackends/Makefile.template
06ad64ad29e7aa9e2d001f6bd1f8c1c1f77050b8 16-Jan-2012 Matt Turner <mattst88@gmail.com> automake: src/gbm

libgbm.so.1.0.0 (instead of libgbm.so.1.0) is installed now
along with libgbm.so.1 (no change).
gitignore
akefile
akefile.am
ackends/Makefile
ackends/dri/Makefile
ain/Makefile
ain/gbm.pc.in
221c678329fd1c073d5f8dcf387129cd426ecf07 18-Jan-2012 Kristian Høgsberg <krh@bitplanet.net> gbm: Validate usage flags in gbm_bo_create_from_egl_image()

The entry point is supposed to validate that the EGLImage is suitable for
the passed in usage flags, but that was never implemented.
ackends/dri/gbm_dri.c
baab68e1a607b818c8988e70546fe3e6f97cf572 20-Dec-2011 Rob Bradford <rob@linux.intel.com> gbm: Add documentation for the public facing API
ain/gbm.c
ain/gbm.h
ain/gbmint.h
eeed782ecb9fa92a958cb650c0a5a536556dc611 31-Jul-2011 RALOVICH, Kristóf <tade60@freemail.hu> gbm/dri: avoid crash in dri_screen_create
ackends/dri/gbm_dri.c
496bf3822a724127b2632596dc45648fdeda0afb 19-Jul-2011 Jørgen Lind <jorgen.lind@nokia.com> Make it possible to use gbm with c++

NOTE: This is a candiate for 7.11
ain/gbm.h
f36d210c93b1fde0cdc5c6625ca2df25ad937aba 24-Jun-2011 Chia-I Wu <olv@lunarg.com> targets/gbm: build pipe drivers

Build pipe drivers here instead of using those built by the
soon-to-be-removed targets/egl.

[with an update by Benjamin Franzke to use --{start|end}-group]
ackends/Makefile.template
48d4a001b3faaa707716ea6bd93dd98b487768ce 26-May-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> gbm: Add gallium (drm) backend
ain/backend.c
2ff797060d4ffbe1c1bf5b605ea5d4f9e588da41 26-May-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> gbm: Add dri backend
ackends/dri/Makefile
ackends/dri/driver_name.c
ackends/dri/gbm_dri.c
ackends/dri/gbm_driint.h
ain/Makefile
ain/backend.c
eddcecbf74da26716509c047b95e85b00c12bab4 26-May-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> Add gbm (generic/graphics buffer manager)
akefile
ackends/Makefile
ackends/Makefile.template
ain/Makefile
ain/backend.c
ain/backend.h
ain/common.c
ain/common.h
ain/common_drm.h
ain/gbm.c
ain/gbm.h
ain/gbm.pc.in
ain/gbmint.h