summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorAlan Hourihane <alanh@tungstengraphics.com>2008-02-07 22:21:50 +0000
committerAlan Hourihane <alanh@tungstengraphics.com>2008-02-07 22:21:50 +0000
commitf51dc37d75b0b1b8e5636f8f2c201e29986517ea (patch)
treefd987ab4e2cae6b02622dfd586f8c9c779babbe0 /tests
parentfe83c068612dd1abef8cf6d224b6b0330604a8f1 (diff)
After the previous revert fix libdrm to start at minor 1
and fixup the demos
Diffstat (limited to 'tests')
-rw-r--r--tests/mode/modetest.c2
-rw-r--r--tests/modedemo/demo.c39
-rw-r--r--tests/modefb/demo.c2
3 files changed, 35 insertions, 8 deletions
diff --git a/tests/mode/modetest.c b/tests/mode/modetest.c
index ab0cdc9c..caa3d970 100644
--- a/tests/mode/modetest.c
+++ b/tests/mode/modetest.c
@@ -351,7 +351,7 @@ int main(int argc, char **argv)
printf("Starting test\n");
- fd = drmOpenControl(0);
+ fd = drmOpen("i915", NULL);
if (fd < 0) {
printf("Failed to open the card fb (%d)\n",fd);
diff --git a/tests/modedemo/demo.c b/tests/modedemo/demo.c
index 0882fc91..6b6997ad 100644
--- a/tests/modedemo/demo.c
+++ b/tests/modedemo/demo.c
@@ -1,11 +1,16 @@
-
+#define CLEAN_FBDEV
#include <assert.h>
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <unistd.h>
#include <string.h>
-
+#ifdef CLEAN_FBDEV
+#include <errno.h>
+#include <fcntl.h>
+#include <sys/ioctl.h>
+#include <linux/fb.h>
+#endif
#include "xf86drm.h"
#include "xf86drmMode.h"
@@ -20,6 +25,11 @@ void testCursor(int fd, uint32_t crtc);
void prettyColors(int fd, unsigned int handle);
void prettyCursor(int fd, unsigned int handle, unsigned int color);
+#ifdef CLEAN_FBDEV
+struct fb_var_screeninfo var;
+struct fb_fix_screeninfo fix;
+#endif
+
/* structs for the demo_driver */
struct demo_driver;
@@ -90,6 +100,19 @@ int main(int argc, char **argv)
struct demo_driver *driver;
int num;
int i;
+#ifdef CLEAN_FBDEV
+ int fbdev_fd;
+
+ fbdev_fd = open("/dev/fb0", O_RDWR);
+
+ memset(&var, 0, sizeof(struct fb_var_screeninfo));
+ memset(&fix, 0, sizeof(struct fb_fix_screeninfo));
+
+ if (ioctl(fbdev_fd, FBIOGET_VSCREENINFO, &var))
+ printf("var %s\n", strerror(errno));
+ if (ioctl(fbdev_fd, FBIOGET_FSCREENINFO, &fix))
+ printf("fix %s\n", strerror(errno));
+#endif
printf("starting demo\n");
@@ -131,9 +154,13 @@ int main(int argc, char **argv)
testCursor(driver->fd, driver->screens[i].crtc->crtc_id);
}
- sleep(2);
- printf("ok\n");
- return 0;
+#ifdef CLEAN_FBDEV
+ if (ioctl(fbdev_fd, FBIOPUT_VSCREENINFO, &var))
+ printf("var %s\n", strerror(errno));
+#endif
+
+ printf("ok\n");
+ return 0;
}
int demoCreateScreens(struct demo_driver *driver)
@@ -260,7 +287,7 @@ struct demo_driver* demoCreateDriver(void)
memset(driver, 0, sizeof(struct demo_driver));
- driver->fd = drmOpenControl(0);
+ driver->fd = drmOpen("i915", NULL);
if (driver->fd < 0) {
printf("Failed to open the card fb\n");
diff --git a/tests/modefb/demo.c b/tests/modefb/demo.c
index 7fa3b93f..4d81e511 100644
--- a/tests/modefb/demo.c
+++ b/tests/modefb/demo.c
@@ -26,7 +26,7 @@ int main(int argc, char **argv)
char name[100];
int i,d;
int fd;
- int drmfd = drmOpenControl(0);
+ int drmfd = drmOpen("i915", NULL);
/* try four devices */
for (d = 0; d < 4; d++) {