Lines Matching defs:drm_device
242 typedef struct drm_device drm_device_t;
431 dev_t dev_id, struct drm_device *dev, void *data, struct drm_file *file, int ioctl_mode, cred_t *credp
600 struct drm_device *dev;
613 * Access is covered by the object_name_lock in the related drm_device
708 * \sa drm_agp_init() and drm_device::agp.
790 struct drm_device;
794 int (*get_irq)(struct drm_device *dev);
795 const char *(*get_name)(struct drm_device *dev);
796 int (*set_busid)(struct drm_device *dev, struct drm_master *master);
797 int (*set_unique)(struct drm_device *dev, struct drm_master *master,
799 int (*irq_by_busid)(struct drm_device *dev, struct drm_irq_busid *p);
801 int (*agp_init)(struct drm_device *dev);
806 int (*load)(struct drm_device *, unsigned long);
807 int (*firstopen)(struct drm_device *);
808 int (*open)(struct drm_device *, drm_file_t *);
809 void (*preclose)(struct drm_device *, drm_file_t *);
810 void (*postclose)(struct drm_device *, drm_file_t *);
811 void (*lastclose)(struct drm_device *);
812 int (*unload)(struct drm_device *);
813 void (*reclaim_buffers_locked)(struct drm_device *, drm_file_t *);
814 int (*presetup)(struct drm_device *);
815 int (*postsetup)(struct drm_device *);
816 int (*open_helper)(struct drm_device *, drm_file_t *);
817 void (*free_filp_priv)(struct drm_device *, drm_file_t *);
818 void (*release)(struct drm_device *, void *);
820 int (*dma_quiescent)(struct drm_device *);
821 int (*dma_flush_block_and_flush)(struct drm_device *,
823 int (*dma_flush_unblock)(struct drm_device *, int,
825 int (*context_dtor)(struct drm_device *, int);
826 int (*device_is_agp) (struct drm_device *);
852 int (*get_scanout_position) (struct drm_device *dev, int crtc,
885 int (*get_vblank_timestamp) (struct drm_device *dev, int crtc,
890 void (*irq_preinstall)(struct drm_device *);
891 int (*irq_postinstall)(struct drm_device *);
892 void (*irq_uninstall)(struct drm_device *dev);
895 int (*vblank_wait)(struct drm_device *, unsigned int *);
896 int (*vblank_wait2)(struct drm_device *, unsigned int *);
898 u32 (*get_vblank_counter)(struct drm_device *dev, int crtc);
899 int (*enable_vblank)(struct drm_device *dev, int crtc);
900 void (*disable_vblank)(struct drm_device *dev, int crtc);
903 int (*master_create)(struct drm_device *dev, struct drm_master *master);
904 void (*master_destroy)(struct drm_device *dev, struct drm_master *master);
910 int (*master_set)(struct drm_device *dev, struct drm_file *file_priv,
912 void (*master_drop)(struct drm_device *dev, struct drm_file *file_priv,
915 void (*entervt)(struct drm_device *dev);
916 void (*leavevt)(struct drm_device *dev);
917 void (*agp_support_detect)(struct drm_device *dev, unsigned long flags);
933 void (*vgaarb_irq)(struct drm_device *dev, bool state);
937 struct drm_device *dev,
940 struct drm_device *dev, uint32_t handle,
943 struct drm_device *dev,
1002 struct drm_device *dev;
1074 * the interrupt priority. Interrupt cookie in drm_device
1080 struct drm_device {
1085 spinlock_t count_lock; /**< For inuse, drm_device::open_count, drm_device::buf_use */
1234 static __inline__ int drm_core_check_feature(struct drm_device *dev,
1240 static inline int drm_core_has_AGP(struct drm_device *dev)
1259 void drm_core_ioremap(struct drm_local_map *, struct drm_device *);
1260 void drm_core_ioremapfree(struct drm_local_map *, struct drm_device *);
1272 int drm_i_have_hw_lock(struct drm_device *dev, struct drm_file *file_priv);
1275 extern int drm_map_handle(struct drm_device *dev, struct drm_map_list *list);
1280 extern int drm_rmmap(struct drm_device *, struct drm_local_map *);
1281 extern int drm_addmap(struct drm_device *, unsigned long, unsigned long,
1284 int drm_rmmap_locked(struct drm_device *dev, struct drm_local_map *map);
1301 u32 drm_vblank_count(struct drm_device *dev, int crtc);
1302 u32 drm_vblank_count_and_time(struct drm_device *dev, int crtc,
1304 extern void drm_send_vblank_event(struct drm_device *dev, int crtc,
1306 bool drm_handle_vblank(struct drm_device *dev, int crtc);
1307 int drm_vblank_get(struct drm_device *dev, int crtc);
1308 void drm_vblank_put(struct drm_device *dev, int crtc);
1309 void drm_vblank_off(struct drm_device *dev, int crtc);
1310 extern void drm_vblank_off(struct drm_device *dev, int crtc);
1311 int drm_vblank_init(struct drm_device *dev, int num_crtcs);
1312 void drm_vblank_cleanup(struct drm_device *dev);
1313 u32 drm_get_last_vbltimestamp(struct drm_device *dev, int crtc,
1315 int drm_calc_vbltimestamp_from_scanoutpos(struct drm_device *dev,
1323 drm_mode_create_from_cmdline_mode(struct drm_device *dev,
1328 void drm_vblank_pre_modeset(struct drm_device *dev, int crtc);
1329 void drm_vblank_post_modeset(struct drm_device *dev, int crtc);
1333 extern struct drm_agp_head *drm_agp_init(struct drm_device *dev);
1334 extern int drm_agp_acquire(struct drm_device *dev);
1336 extern int drm_agp_release(struct drm_device *dev);
1338 extern int drm_agp_enable(struct drm_device *dev, struct drm_agp_mode mode);
1340 extern int drm_agp_info(struct drm_device *dev, struct drm_agp_info *info);
1342 extern int drm_agp_alloc(struct drm_device *dev, struct drm_agp_buffer *request);
1344 extern int drm_agp_free(struct drm_device *dev, struct drm_agp_buffer *request);
1346 extern int drm_agp_unbind(struct drm_device *dev, struct drm_agp_binding *request);
1348 extern int drm_agp_bind(struct drm_device *dev, struct drm_agp_binding *request);
1350 extern void *drm_agp_allocate_memory(size_t pages, uint32_t type, struct drm_device *dev);
1354 extern void drm_agp_chipset_flush(struct drm_device *dev);
1357 extern int drm_agp_bind_pages(struct drm_device *dev, pfn_t *pages,
1359 extern int drm_agp_unbind_pages(struct drm_device *dev, pfn_t *pages,
1361 extern int drm_agp_rw_gtt(struct drm_device *dev, unsigned long num_pages,
1384 struct drm_local_map *drm_getsarea(struct drm_device *dev);
1413 struct drm_drawable_info *drm_get_drawable_info(struct drm_device *dev,
1415 void drm_drawable_free_all(struct drm_device *dev);
1506 extern int drm_lastclose(struct drm_device *dev);
1512 extern int drm_init(struct drm_device *, struct drm_driver *);
1513 extern void drm_exit(struct drm_device *);
1514 extern void drm_fm_init(struct drm_device *dev);
1515 extern void drm_fm_fini(struct drm_device *dev);
1516 extern void drm_fm_ereport(struct drm_device *dev, char *detail);
1517 extern int drm_check_dma_handle(struct drm_device *dev, ddi_dma_handle_t handle);
1518 extern int drm_check_acc_handle(struct drm_device *dev, ddi_acc_handle_t handle);
1529 extern int drm_get_dev(struct drm_device *dev, struct pci_dev *pdev,
1531 extern void drm_put_dev(struct drm_device *dev);
1533 void drm_master_release(struct drm_device *dev, struct drm_file *fpriv);
1543 int drm_gem_init(struct drm_device *dev);
1544 void drm_gem_destroy(struct drm_device *dev);
1548 struct drm_gem_object *drm_gem_object_alloc(struct drm_device *dev,
1550 int drm_gem_object_init(struct drm_device *dev,
1552 int drm_gem_private_object_init(struct drm_device *dev,
1579 struct drm_gem_object *drm_gem_object_lookup(struct drm_device *dev,
1585 void drm_gem_open(struct drm_device *dev, struct drm_file *file_private);
1586 void drm_gem_release(struct drm_device *dev, struct drm_file *file_private);
1592 extern struct drm_local_map *drm_core_findmap(struct drm_device *dev,
1596 static __inline__ int drm_device_is_pcie(struct drm_device *dev)