24 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
25 * VA LINUX SYSTEMS AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
26 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
27 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
28 * OTHER DEALINGS IN THE SOFTWARE.
29 *
30 * Authors:
31 * Rickard E. (Rik) Faith <faith@valinux.com>
32 * Gareth Hughes <gareth@valinux.com>
33 *
34 */
35
36 /*
37 * Copyright 2010 Sun Microsystems, Inc. All rights reserved.
38 * Use is subject to license terms.
39 */
40
41 #ifndef _DRMP_H
42 #define _DRMP_H
43
44 #include <sys/types.h>
45 #include <sys/conf.h>
46 #include <sys/modctl.h>
47 #include <sys/stat.h>
48 #include <sys/file.h>
49 #include <sys/cmn_err.h>
50 #include <sys/varargs.h>
51 #include <sys/pci.h>
52 #include <sys/ddi.h>
53 #include <sys/sunddi.h>
54 #include <sys/sunldi.h>
55 #include <sys/pmem.h>
56 #include <sys/agpgart.h>
57 #include <sys/time.h>
58 #include "drm_atomic.h"
59 #include "drm.h"
60 #include "queue.h"
61 #include "drm_linux_list.h"
62
63 #ifndef __inline__
308 #define idr_list_for_each(entry, head) \
309 for (int key = 0; key < DRM_GEM_OBJIDR_HASHNODE; key++) \
310 list_for_each(entry, &(head)->next[key])
311
312 /*
313 * wait for 400 milliseconds
314 */
315 #define DRM_HZ drv_usectohz(400000)
316
317 typedef unsigned long dma_addr_t;
318 typedef uint64_t u64;
319 typedef uint32_t u32;
320 typedef uint16_t u16;
321 typedef uint8_t u8;
322 typedef uint_t irqreturn_t;
323
324 #define DRM_SUPPORT 1
325 #define DRM_UNSUPPORT 0
326
327 #define __OS_HAS_AGP 1
328
329 #define __offsetof(type, field) ((size_t)(&((type *)0)->field))
330 #define offsetof(type, field) __offsetof(type, field)
331
332 typedef struct drm_pci_id_list
333 {
334 int vendor;
335 int device;
336 long driver_private;
337 char *name;
338 } drm_pci_id_list_t;
339
340 #define DRM_AUTH 0x1
341 #define DRM_MASTER 0x2
342 #define DRM_ROOT_ONLY 0x4
343 typedef int drm_ioctl_t(DRM_IOCTL_ARGS);
344 typedef struct drm_ioctl_desc {
345 int (*func)(DRM_IOCTL_ARGS);
346 int flags;
347 } drm_ioctl_desc_t;
348
349 typedef struct drm_magic_entry {
350 drm_magic_t magic;
|
24 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
25 * VA LINUX SYSTEMS AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
26 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
27 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
28 * OTHER DEALINGS IN THE SOFTWARE.
29 *
30 * Authors:
31 * Rickard E. (Rik) Faith <faith@valinux.com>
32 * Gareth Hughes <gareth@valinux.com>
33 *
34 */
35
36 /*
37 * Copyright 2010 Sun Microsystems, Inc. All rights reserved.
38 * Use is subject to license terms.
39 */
40
41 #ifndef _DRMP_H
42 #define _DRMP_H
43
44 #include <sys/sysmacros.h>
45 #include <sys/types.h>
46 #include <sys/conf.h>
47 #include <sys/modctl.h>
48 #include <sys/stat.h>
49 #include <sys/file.h>
50 #include <sys/cmn_err.h>
51 #include <sys/varargs.h>
52 #include <sys/pci.h>
53 #include <sys/ddi.h>
54 #include <sys/sunddi.h>
55 #include <sys/sunldi.h>
56 #include <sys/pmem.h>
57 #include <sys/agpgart.h>
58 #include <sys/time.h>
59 #include "drm_atomic.h"
60 #include "drm.h"
61 #include "queue.h"
62 #include "drm_linux_list.h"
63
64 #ifndef __inline__
309 #define idr_list_for_each(entry, head) \
310 for (int key = 0; key < DRM_GEM_OBJIDR_HASHNODE; key++) \
311 list_for_each(entry, &(head)->next[key])
312
313 /*
314 * wait for 400 milliseconds
315 */
316 #define DRM_HZ drv_usectohz(400000)
317
318 typedef unsigned long dma_addr_t;
319 typedef uint64_t u64;
320 typedef uint32_t u32;
321 typedef uint16_t u16;
322 typedef uint8_t u8;
323 typedef uint_t irqreturn_t;
324
325 #define DRM_SUPPORT 1
326 #define DRM_UNSUPPORT 0
327
328 #define __OS_HAS_AGP 1
329
330 typedef struct drm_pci_id_list
331 {
332 int vendor;
333 int device;
334 long driver_private;
335 char *name;
336 } drm_pci_id_list_t;
337
338 #define DRM_AUTH 0x1
339 #define DRM_MASTER 0x2
340 #define DRM_ROOT_ONLY 0x4
341 typedef int drm_ioctl_t(DRM_IOCTL_ARGS);
342 typedef struct drm_ioctl_desc {
343 int (*func)(DRM_IOCTL_ARGS);
344 int flags;
345 } drm_ioctl_desc_t;
346
347 typedef struct drm_magic_entry {
348 drm_magic_t magic;
|