summaryrefslogtreecommitdiff
path: root/xf86drm.c
AgeCommit message (Collapse)Author
2015-03-14On Solaris, #include <sys/mkdev.h> in xf86drm.cAlan Coopersmith
Needed on Solaris for the definitions of major() & minor() used in drmGetNodeTypeFromFd() and makedev() used in drmOpenMinor() Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
2015-03-10drm: add drmGet(Primary|Render)DeviceNameFromFd functionsEmil Velikov
Currently most places assume reliable primary(master) <> render node mapping. Although this may work in some cases, it is not correct. Add a couple of helpers that hide the details and provide the name of the master or render device name, given an fd. The latter may belong to either the master, control or render node device. v2: - Rename Device and Primary to Master (aka the /dev/dri/cardX device). - Check for the file via readdir_r() rather than stat(). - Wrap the check into a single function. - Return NULL for non-linux platforms. v3: - Don't segfault if name is NULL. - Update function names, as suggested by Frank Binns. v4: - Update commit message to reflect the function name changes. Cc: Frank Binns <frank.binns@imgtec.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: David Herrmann <dh.herrmann@googlemail.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Frank Binns <frank.binns@imgtec.com>
2015-02-23Add new drmGetNodeTypeFromFd functionFrank Binns
Add a helper function that returns the type of device node from an fd. Signed-off-by: Frank Binns <frank.binns@imgtec.com> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
2015-02-12Add new drmOpenOnceWithType function (v2)Jammy Zhou
v2: call drmOpenOnceWithType in drmOpenOnce, and drop unused param for drmOpenOnceWithType Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Jammy Zhou <Jammy.Zhou@amd.com>
2015-02-12Add new drmOpenWithType function (v4)Jammy Zhou
v2: Add drmGetMinorBase, and call drmOpenWithType in drmOpen v3: Pass 'type' to drmOpenByBusid and drmOpenDevice in drmOpenByName v4: Renumber node type definitions, and return -1 for unsupported type Signed-off-by: Jammy Zhou <Jammy.Zhou@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> (v3) Reviewed-by: Frank Binns <frank.binns@imgtec.com>
2015-02-11xf86drm: Fix ioctl struct clearing in drmGetVersionDaniel Vetter
Oops, fumbled that one. Reported-by: Jan Vesely <jan.vesely@rutgers.edu> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
2015-02-11xf86drm: Unconditionally clear ioctl structsDaniel Vetter
We really have to do this to avoid surprises when extending the ABI later on. Especially when growing the structures. A bit overkill to update all the old legacy ioctl wrappers, but can't hurt really either. Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Rob Clark <robdclark@gmail.com> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
2015-02-11drm: use drmIoctl everywhereDaniel Vetter
Well just core drm. All the other callers in there that still use direct calls to ioctl have some custom retry logic already, so should be good already. All the other offenders (tests, freedreno/kgsl, ...) don't really matter (e.g. kgsl is the blob library and so not a drm thing) or are again special exceptions with their own retry loops. Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Rob Clark <robdclark@gmail.com> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
2015-02-10Fix gcc -Wextra warningsJan Vesely
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Reviewed-by: Ian Romanick <idr@freedesktop.org> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
2015-01-23Add new drmOpenRender functionFrank Binns
Add a new function, drmOpenRender, that can be used to open render nodes. This can be used in the same way that drmOpenControl is used to open control nodes. Signed-off-by: Frank Binns <frank.binns@imgtec.com> Reviewed-by: Rob Clark <robdclark@gmail.com>
2015-01-23Rename DRM_NODE_RENDER to DRM_NODE_PRIMARYFrank Binns
Now that there are render nodes it doesn't seem appropriate for the type of the card nodes to be DRM_NODE_RENDER. For this reason, rename this type to DRM_NODE_PRIMARY as this name better represents the purpose of these nodes. Signed-off-by: Frank Binns <frank.binns@imgtec.com> Reviewed-by: Rob Clark <robdclark@gmail.com>
2014-09-28drm: use drm_mmap/drm_munmap wrappersEmil Velikov
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
2014-05-13drmOpenByName: remove redundant drmAvailable checkDaniel Kurtz
drmOpenByName() is a static function that is only called by drmOpen(). drmOpen() already checks drmAvailable(), so the check in drmOpenByName() is redundant. Signed-off-by: Daniel Kurtz <djkurtz@chromium.org> Signed-off-by: Thierry Reding <treding@nvidia.com>
2014-04-17libdrm: Remove extraneous parameterThierry Reding
The debug message's format string doesn't contain any conversion specifiers, therefore making the fd argument unused. Reviewed-by: Eric Anholt <eric@anholt.net> Signed-off-by: Thierry Reding <treding@nvidia.com>
2014-04-17Mark functions printf-like where possibleThierry Reding
These functions all take a format string and either a list of variable arguments or a va_list. Use the new DRM_PRINTFLIKE macro to tell the compiler about it so that the arguments can be checked against the format string. Reviewed-by: Eric Anholt <eric@anholt.net> Signed-off-by: Thierry Reding <treding@nvidia.com>
2013-09-30drm: Introduce a drmSetClientCap() wrapperDamien Lespiau
That wraps around the new DRM_SET_CLIENT_CAP ioctl. v2: SET_CAP -> SET_CLIENT_CAP renaming Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2013-03-28drm: Fix error message in drmWaitVBlankDaniel Kurtz
If clock_gettime did fail, it would return -1 and set errno. What we really want to strerror() is the errno. Signed-off-by: Daniel Kurtz <djkurtz@chromium.org>
2012-07-16libdrm: add prime fd->handle and handle->fd interfacesDave Airlie
These are just basic ioctl wrappers around the prime ioctls, along with the capability reporting. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
2011-11-01Fix compilation with -Werror=int-to-pointer-cast -Werror=pointer-to-int-castJeremy Huddleston
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2011-03-04libdrm: oops fix get cap return value.Dave Airlie
2011-03-04Implement drmGetCap() to query device/driver capabilitiesBen Skeggs
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-07drm: don't do the create the node ourselves if we have udev.Dave Airlie
this can remove nodes it shouldn't, let udev run the show. this is needed for reliably GPU switch. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-10-27s/drmStrdup/strdup/Adam Jackson
_DRM_MALLOC hasn't been a relevant concern since we split libdrm out from xserver. Signed-off-by: Adam Jackson <ajax@redhat.com>
2010-08-06libdrm: Fix PCI domain domain supportBenjamin Herrenschmidt
This works in conjunction with newer kernels. If we succeed in requesting interface 1.4, the we know the kernel provides proper domain numbers. If not, ignore the domain number as it's bogus (except on Alpha). Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Adam Jackson <ajax@redhat.com>
2009-12-15Be less chatty in drmSetMaster/drmDropMasterKristian Høgsberg
2009-11-25Correctly set DRM_MAX_MINOR for all platforms.Robert Noland
DRM_MAJOR is platform specific, but not used outside of xf86drm.c that I can find.
2009-11-23Add drmGetDeviceNameFromFd functionKristian Høgsberg
Determines the /dev filename of the drm fd argument.
2009-11-17Move libdrm/ up one levelKristian Høgsberg