summaryrefslogtreecommitdiff
path: root/xf86drm.h
AgeCommit message (Collapse)AuthorFilesLines
2015-09-21xf86drm: add drm{Get,Free}DeviceEmil Velikov1-0/+3
Similar interface to the *Devices() ones but they obtain/free the information of the opened device (as given by its fd). Note there is a fair bit of duplication between the two Get functions, and anyone interested is more than welcome to consolidate it. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Acked-by: Alex Deucher <alexander.deucher@amd.com>
2015-08-24drm: add interface to get drm devices on the system v3Emil Velikov1-0/+34
For mutiple GPU support, the devices on the system should be enumerated to get necessary information about each device, and the drmGetDevices interface is added for this. Currently only PCI devices are supported for the enumeration. Typical usage: int count; drmDevicePtr *foo; count = drmGetDevices(NULL, 0); foo = calloc(count, sizeof(drmDevicePtr)); count = drmGetDevices(foo, count); /* find proper device, open correct device node, etc */ drmFreeDevices(foo, count); free(foo); v2: [Jammy Zhou] - return a list of devices, rather than nodes v3: [Jammy Zhou] - fix the signed extension for PCI device info Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Signed-off-by: Jammy Zhou <Jammy.Zhou@amd.com>
2015-08-10remove usage of 'c_plusplus' preprocessor macroTapani Pälli1-2/+2
Use only __cplusplus which is supported by the C++ standard. Signed-off-by: Tapani Pälli <tapani.palli@intel.com> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
2015-07-29xf86drm: use the correct device minor names on OpenBSDJonathan Gray1-0/+7
Add defines for the device minor names and make use of them in drmGetMinorName() so the correct paths will be used on OpenBSD. v2: don't add new defines to xf86drm.h to keep them out of the API as requested by Emil. Signed-off-by: Jonathan Gray <jsg@jsg.id.au> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
2015-06-29Revert "Add device enumeration interface (v4)"Emil Velikov1-19/+0
This reverts commit fde4969176822fe54197b6baa78f8b0ef900baba. The commit adds an API that does not seem flexible enough to be used in current open-source projects. Additionally it adds a hidden dependency of libudev, which when used in mesa caused grief when combined with Steam('s runtime). Let's revert this for now and add a tweaked API later on that can be used in mesa/xserver. Cc: Frank Min <frank.min@amd.com> Cc: Christian König <christian.koenig@amd.com> Cc: Alex Deucher <alexander.deucher@amd.com> Cc: Jammy Zhou <Jammy.Zhou@amd.com>
2015-05-26Add device enumeration interface (v4)frank1-0/+19
Add an interface for enumerating PCI devices on a system. v3: switch to udev/sysfs for the enumeration v4: fix warnings Signed-off-by: Frank Min <frank.min@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com>
2015-03-10drm: add drmGet(Primary|Render)DeviceNameFromFd functionsEmil Velikov1-0/+3
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 Binns1-0/+1
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 Zhou1-0/+1
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 Zhou1-1/+8
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-01-23Add new drmOpenRender functionFrank Binns1-0/+2
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>
2014-04-17Mark functions printf-like where possibleThierry Reding1-1/+1
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>
2014-01-13Mark debug_print with __attribute__ ((format(__printf__, 1, 0)))Keith Packard1-1/+7
the drmServerInfo member, debug_print, takes a printf format string and varargs list. Tell the compiler about it. Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2013-09-30drm: Introduce a drmSetClientCap() wrapperDamien Lespiau1-0/+2
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>
2012-07-16libdrm: add prime fd->handle and handle->fd interfacesDave Airlie1-0/+3
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-09-23xf86drm.h : wrap C code for C++ compilation/linkingTapani Pälli1-0/+8
To enable usage of xf86drm.h from C++ programs/frameworks. Signed-off-by: Tapani Pälli <tapani.palli@intel.com> [ickle: also wrap xf86drmMode.h] Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-04-04libdrm: (revised) vblank wait on crtc > 1Ilija Hadzic1-0/+3
Hi Alex, Enclosed is a revised version of the patch sent on Mar 18, against the master branch of the drm userspace (i.e. libdrm). Details summarised in this thread: http://lists.freedesktop.org/archives/dri-devel/2011-March/009499.html This patch reconciles libdrm with the the kernel change that Dave pushed this morning. It *supersedes* the previously sent patch (i.e. apply it to the master branch as it exists at the time of this writing, not as an incremental patch to the one sent previously). Regards, Ilija Signed-off-by: Ilija Hadzic <ihadzic@research.bell-labs.com> Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
2011-03-04Implement drmGetCap() to query device/driver capabilitiesBen Skeggs1-0/+1
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2009-12-03Bump event context structure version for page flippingJesse Barnes1-1/+1
2009-12-03Merge branch 'pageflip' of git://people.freedesktop.org/~jbarnes/drmJesse Barnes1-0/+6
Conflicts: include/drm/drm.h - RMFB had its signature changed to avoid uint32_t
2009-11-25Correctly set DRM_MAX_MINOR for all platforms.Robert Noland1-2/+4
DRM_MAJOR is platform specific, but not used outside of xf86drm.c that I can find.
2009-11-24Add missing DRM_MAX_MINOR defineAlex Deucher1-0/+1
lost in 500f5b524000ed5930301f4303744cb4c0a19b75 Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
2009-11-23Add drmGetDeviceNameFromFd functionKristian Høgsberg1-0/+2
Determines the /dev filename of the drm fd argument.
2009-11-23Fix build on *BSDKristian Høgsberg1-0/+22
This adds a minimal #ifdef clause to drm.h that we'll push upstream. Once that goes in we can share drm.h between linux, libdrm, and the bsd's.
2009-11-17Move libdrm/ up one levelKristian Høgsberg1-0/+689