Find a file
Anuj Phogat 5c68f9f6f9 i965/gen9: Pass alignment as function parameter in drm_intel_gem_bo_alloc_internal()
In case of YF/YS tiled buffers libdrm need not know about the tiling
format because these buffers don't have hardware support to be tiled
or detiled through a fenced region. But, libdrm still need to know
about buffer alignment restrictions because kernel uses it when
resolving the relocation.

Mesa uses drm_intel_gem_bo_alloc_for_render() to allocate Yf/Ys buffers.
So, use the passed alignment value in this function to initialize the
align variable in drm_intel_bo. Note that we continue ignoring the
alignment value passed to drm_intel_gem_bo_alloc() to follow the
previous behavior.

V2: Add a condition to avoid allocation from cache. (Ben)
V3: Make no changes in cache allocation strategy. Just update the alignment.
    Update the aperture size estimate including the alignment. (Ben, Chris)
V4: Move aperture size adjustments inside drm_intel_bo_gem_set_in_aperture_size()
    Don't split sentences across the one-line header and the changelog. (Chris)

Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-07-06 15:36:59 -07:00
exynos exynos/fimg2d: simplify g2d_fini() 2015-06-29 19:19:23 +01:00
freedreno freedreno: link against CLOCK_LIB 2015-04-29 17:30:17 +00:00
include/drm Add blob property create/destroy ioctl wrappers 2015-06-29 19:19:22 +01:00
intel i965/gen9: Pass alignment as function parameter in drm_intel_gem_bo_alloc_internal() 2015-07-06 15:36:59 -07:00
libkms drm: rename libdrm{,_macros}.h 2015-04-28 11:19:15 +01:00
m4 build: Update autotools configuration 2011-03-21 13:43:43 +00:00
man man: rework the Makefile.am 2015-04-28 11:21:10 +01:00
nouveau nouveau: add asserts to make sure krefs are there 2015-06-21 19:26:42 -04:00
omap drm: remove drm_public macro 2015-04-28 11:19:15 +01:00
radeon radeon: add new bonaire pci id 2015-05-26 12:26:40 -04:00
tegra drm: remove drm_public macro 2015-04-28 11:19:15 +01:00
tests tests/exynos: handle G2D_IMGBUF_COLOR in switch statements 2015-06-29 19:19:23 +01:00
.gitignore tests/random: extract test out of xf86drmRandom.c 2015-04-05 15:33:33 +01:00
Android.mk android: set the HAVE_VISIBILITY define 2015-04-29 17:29:37 +00:00
autogen.sh autogen.sh: handle out-of-tree invokation 2015-03-17 22:35:51 +00:00
CleanSpec.mk android: add CleanSpec.mk 2014-09-01 16:06:02 +01:00
configure.ac configure: default --enable-valgrind to auto 2015-06-30 14:01:16 +01: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 drm: remove drm_public macro 2015-04-28 11:19:15 +01:00
Makefile.am Revert "Add device enumeration interface (v4)" 2015-06-29 11:12:21 +01:00
Makefile.sources drm: rename libdrm{,_macros}.h 2015-04-28 11:19:15 +01:00
README Update README 2009-11-20 17:08:28 -05:00
RELEASING RELEASING: Fix annouce typo 2015-03-20 15:55:23 +00:00
xf86atomic.h Use __sync_add_and_fetch instead of __sync_fetch_and_add for atomic_dec_and_test 2015-03-13 20:21:57 +01:00
xf86drm.c Revert "Add device enumeration interface (v4)" 2015-06-29 11:12:21 +01:00
xf86drm.h Revert "Add device enumeration interface (v4)" 2015-06-29 11:12:21 +01:00
xf86drmHash.c drm: use correct printf modifiers 2015-04-05 15:33:33 +01:00
xf86drmHash.h tests/hash: extract test out of xf86drmHash.c 2015-04-05 15:19:42 +01:00
xf86drmMode.c xf86drmMode: include config.h before anything else 2015-06-29 19:19:22 +01:00
xf86drmMode.h Add blob property create/destroy ioctl wrappers 2015-06-29 19:19:22 +01:00
xf86drmRandom.c drm: replace HASH_DEBUG with DEBUG 2015-04-05 15:33:33 +01:00
xf86drmRandom.h tests/random: extract test out of xf86drmRandom.c 2015-04-05 15:33:33 +01:00
xf86drmSL.c drm: replace HASH_DEBUG with DEBUG 2015-04-05 15:33:33 +01:00

libdrm - userspace library for drm

This  is libdrm,  a userspace  library for  accessing the  DRM, direct
rendering  manager, on  Linux,  BSD and  other  operating systes  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.   libdrm  is  a  low-level library,  typically  used  by
graphics drivers  such as the Mesa  DRI drivers, the  X drivers, libva
and  similar projects.  New  functionality in  the kernel  DRM drivers
typically requires  a new  libdrm, but a  new libdrm will  always work
with an older kernel.


Compiling
---------

libdrm  is  a  standard  autotools  packages and  follows  the  normal
configure, build  and install steps.   The first step is  to configure
the package, which is done by running the configure shell script:

	./configure

By default, libdrm  will install into the /usr/local/  prefix.  If you
want  to  install   this  DRM  to  replace  your   system  copy,  pass
--prefix=/usr and  --exec-prefix=/ to configure.  If  you are building
libdrm  from a  git checkout,  you first  need to  run  the autogen.sh
script.  You can  pass any options to autogen.sh  that you would other
wise  pass to configure,  or you  can just  re-run configure  with the
options you need once autogen.sh finishes.

Next step is to build libdrm:

	make

and once make finishes successfully, install the package using

	make install

If you are install into a system location, you will need to be root to
perform the install step.