summaryrefslogtreecommitdiffstats
path: root/sys/dev/drm2/radeon/radeon_kms.h
diff options
context:
space:
mode:
authordumbbell <dumbbell@FreeBSD.org>2013-08-25 19:37:15 +0000
committerdumbbell <dumbbell@FreeBSD.org>2013-08-25 19:37:15 +0000
commit0d898a14229c275f427fc8aee26e86119b07ad15 (patch)
tree121df1ba626e839bc79dbe7266f584b6e6241c7d /sys/dev/drm2/radeon/radeon_kms.h
parent2e2067aa82447c9369703e41d710074ff554f0db (diff)
downloadFreeBSD-src-0d898a14229c275f427fc8aee26e86119b07ad15.zip
FreeBSD-src-0d898a14229c275f427fc8aee26e86119b07ad15.tar.gz
drm/radeon: Import the Radeon KMS driver
This driver is based on Linux 3.8 and a previous effort by kan@. More informations about this project can be found on the FreeBSD wiki: https://wiki.freebsd.org/AMD_GPU The driver is split into: sys/dev/drm2: The driver sources. sys/modules/drm2/radeonkmw: The driver main kernel module's Makefile. sys/modules/drm2/radeonkmsfw: All firmware kernel module Makefiles. There's one directory and one Makefile for each firmware. sys/contrib/dev/drm2/radeonkmsfw: All firmware binary sources. tools/tools/drm/radeon Tools to update firmwares or regenerate some headers. Merging the driver to FreeBSD 9.x may be possible but not a priority for now. Help from: kib@, kan@ Tested by: avg@, kwm@, ray@, Alexander Yerenkow <yerenkow@gmail.com>, Anders Bolt-Evensen <andersbo87@me.com>, Denis Djubajlo <stdedjub@googlemail.com>, J.R. Oldroyd <fbsd@opal.com>, Mikaël Urankar <mikael.urankar@gmail.com>, Pierre-Emmanuel Pédron <pepcitron@gmail.com>, Sam Fourman Jr. <sfourman@gmail.com>, Wade <wade-is-great@live.com>, (probably other I forgot...) HW donations: kyzh, Yakaz
Diffstat (limited to 'sys/dev/drm2/radeon/radeon_kms.h')
-rw-r--r--sys/dev/drm2/radeon/radeon_kms.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/sys/dev/drm2/radeon/radeon_kms.h b/sys/dev/drm2/radeon/radeon_kms.h
new file mode 100644
index 0000000..ff3bbbc
--- /dev/null
+++ b/sys/dev/drm2/radeon/radeon_kms.h
@@ -0,0 +1,30 @@
+
+#include <sys/cdefs.h>
+__FBSDID("$FreeBSD$");
+
+#ifndef __RADEON_KMS_H__
+#define __RADEON_KMS_H__
+
+#include <dev/drm2/drmP.h>
+
+int radeon_driver_load_kms(struct drm_device *dev, unsigned long flags);
+int radeon_driver_unload_kms(struct drm_device *dev);
+
+int radeon_driver_firstopen_kms(struct drm_device *dev);
+void radeon_driver_lastclose_kms(struct drm_device *dev);
+int radeon_driver_open_kms(struct drm_device *dev, struct drm_file *file_priv);
+void radeon_driver_postclose_kms(struct drm_device *dev,
+ struct drm_file *file_priv);
+void radeon_driver_preclose_kms(struct drm_device *dev,
+ struct drm_file *file_priv);
+u32 radeon_get_vblank_counter_kms(struct drm_device *dev, int crtc);
+int radeon_enable_vblank_kms(struct drm_device *dev, int crtc);
+void radeon_disable_vblank_kms(struct drm_device *dev, int crtc);
+int radeon_get_vblank_timestamp_kms(struct drm_device *dev, int crtc,
+ int *max_error,
+ struct timeval *vblank_time,
+ unsigned flags);
+int radeon_dma_ioctl_kms(struct drm_device *dev, void *data,
+ struct drm_file *file_priv);
+
+#endif /* !defined(__RADEON_KMS_H__) */
OpenPOWER on IntegriCloud