Go to file
Daniel Stone d8731e9eec Add drmModeGetFB2
Add a wrapper around the getfb2 ioctl, which returns extended
framebuffer information mirroring addfb2, including multiple planes and
modifiers.

Changes since v7:
 - add new symbols to core-symbol.txt (Eric Engestrom)

Changes since v5:
 - style change

Changes since v4:
 - Set fb_id at init instead of memclear() and set (Eric Engestrom)

Changes since v3:
 - remove unnecessary null check in drmModeFreeFB2 (Daniel Stone)

Changes since v2:
 - getfb2 ioctl has been merged upstream
 - sync include/drm/drm.h in a seperate patch

Changes since v1:
 - functions should be drm_public
 - modifier should be 64 bits
 - update ioctl number

Signed-off-by: Juston Li <juston.li@intel.com>
Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Eric Engestrom <eric@engestrom.ch>
2020-02-12 10:23:44 +11:00
.gitlab-ci gitlab-ci: add PowerPC build 2019-11-23 00:37:06 +00:00
amdgpu meson: always define whether headers exist 2020-01-23 17:00:12 +00:00
android android: Fix 32-bit app crashing in 64-bit Android 2018-12-18 21:18:19 +01:00
data amdgpu: add new marketing names from 19.50 2020-02-01 12:12:19 -05:00
etnaviv etnaviv: convert to new symbols check 2019-11-11 22:57:14 +00:00
exynos exynos: convert to new symbols check 2019-11-11 22:57:14 +00:00
freedreno freedreno: convert to new symbols check 2019-11-11 22:57:14 +00:00
include/drm include/drm: sync up drm.h 2020-02-12 10:23:44 +11:00
intel intel: drm_intel_bo_gem_create_from_* on platforms w/o HW tiling 2020-01-28 15:32:39 +02:00
libkms libkms: convert to new symbols check 2019-11-11 22:57:14 +00:00
man Revert "Revert "libdrm: remove autotools support"" 2019-10-18 18:05:45 +01:00
nouveau nouveau: convert to new symbols check 2019-11-11 22:57:14 +00:00
omap omap: convert to new symbols check 2019-11-11 22:57:14 +00:00
radeon radeon: convert to new symbols check 2019-11-11 22:57:14 +00:00
tegra tegra: convert to new symbols check 2019-11-11 22:57:14 +00:00
tests meson: always define whether headers exist 2020-01-23 17:00:12 +00:00
vc4 Revert "Revert "libdrm: remove autotools support"" 2019-10-18 18:05:45 +01:00
.editorconfig Add meson build system 2018-01-12 09:40:48 -08:00
.gitignore add a minimal .gitignore back 2019-12-17 22:37:39 +00:00
.gitlab-ci.yml gitlab-ci: rename build folder to simply `build` 2019-12-17 22:29:11 +00:00
Android.common.mk meson: always define whether headers exist 2020-01-23 17:00:12 +00:00
Android.mk libdrm: Android.mk: Add minimal Android platform check 2019-04-25 10:55:02 +01:00
CONTRIBUTING.rst doc: Rename README&CONTRIBUTING to .rst 2018-10-17 17:17:19 +02:00
CleanSpec.mk tests: Split helpers into library 2015-12-18 17:43:40 +00:00
Makefile.sources libdrm: add msm drm uapi header 2018-08-23 08:48:45 -07:00
README.rst Revert "Revert "libdrm: remove autotools support"" 2019-10-18 18:05:45 +01:00
RELEASING RELEASING: update instructions to use meson instead of autotools 2019-10-14 15:57:26 +00:00
core-symbols.txt Add drmModeGetFB2 2020-02-12 10:23:44 +11:00
libdrm.pc.in Revert "Fix pkgconfig includes for /usr/include/drm" 2010-04-09 16:33:38 -04:00
libdrm_lists.h lists: add nicer+unsafe foreach, and list join macros 2012-04-14 02:47:04 +10:00
libdrm_macros.h libdrm: Use mmap64 instead of __mmap2 2019-04-25 10:55:13 +01:00
libsync.h add libsync.h helper 2016-11-05 10:16:46 -04:00
meson.build meson: always define whether headers exist 2020-01-23 17:00:12 +00:00
meson_options.txt Add meson build system 2018-01-12 09:40:48 -08:00
symbols-check.py meson: import Mesa's symbols check script 2019-11-11 22:57:14 +00:00
util_double_list.h list: fix an issue with android build using clang 2016-08-02 16:22:45 -04:00
util_math.h Fix build with -std=c11 2018-09-05 13:09:29 +01:00
xf86atomic.h xf86atomic: require CAS support in libatomic_ops 2019-12-06 21:57:12 +00:00
xf86drm.c libdrm: wrap new flexible syncobj query interface v2 2019-10-26 03:11:14 +00:00
xf86drm.h Add ARM support into xf86drm.h 2019-12-05 22:35:58 +01:00
xf86drmHash.c xf86drmHash: remove unused loop variable 2018-11-09 10:59:11 +00:00
xf86drmHash.h tests/hash: extract test out of xf86drmHash.c 2015-04-05 15:19:42 +01:00
xf86drmMode.c Add drmModeGetFB2 2020-02-12 10:23:44 +11:00
xf86drmMode.h Add drmModeGetFB2 2020-02-12 10:23:44 +11:00
xf86drmRandom.c libdrm: annotate public functions 2018-09-19 22:46:45 -07:00
xf86drmRandom.h tests/random: extract test out of xf86drmRandom.c 2015-04-05 15:33:33 +01:00
xf86drmSL.c libdrm: annotate public functions 2018-09-19 22:46:45 -07:00

README.rst

libdrm - userspace library for drm
----------------------------------

This is libdrm, a userspace library for accessing the DRM, direct rendering
manager, on Linux, BSD and other operating systems that support the ioctl
interface.
The library provides wrapper functions for the ioctls to avoid exposing the
kernel interface directly, and for chipsets with drm memory manager, support
for tracking relocations and buffers.
New functionality in the kernel DRM drivers typically requires a new libdrm,
but a new libdrm will always work with an older kernel.

libdrm is a low-level library, typically used by graphics drivers such as
the Mesa drivers, the X drivers, libva and similar projects.


Compiling
---------

To set up meson:

    meson builddir/

By default this will install into /usr/local, you can change your prefix
with --prefix=/usr (or `meson configure builddir/ -Dprefix=/usr` after 
the initial meson setup).

Then use ninja to build and install:

    ninja -C builddir/ install

If you are installing into a system location you will need to run install
separately, and as root.