Home | History | Annotate | Download | only in tegra
      1 /*
      2  * Copyright  2014 NVIDIA Corporation
      3  *
      4  * Permission is hereby granted, free of charge, to any person obtaining a
      5  * copy of this software and associated documentation files (the "Software"),
      6  * to deal in the Software without restriction, including without limitation
      7  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
      8  * and/or sell copies of the Software, and to permit persons to whom the
      9  * Software is furnished to do so, subject to the following conditions:
     10  *
     11  * The above copyright notice and this permission notice shall be included in
     12  * all copies or substantial portions of the Software.
     13  *
     14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     15  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     16  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
     17  * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
     18  * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
     19  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
     20  * OTHER DEALINGS IN THE SOFTWARE.
     21  */
     22 
     23 #include <fcntl.h>
     24 #include <stdio.h>
     25 #include <unistd.h>
     26 
     27 #include "xf86drm.h"
     28 #include "tegra.h"
     29 
     30 static const char default_device[] = "/dev/dri/card0";
     31 
     32 int main(int argc, char *argv[])
     33 {
     34 	struct drm_tegra *tegra;
     35 	drmVersionPtr version;
     36 	const char *device;
     37 	int err, fd;
     38 
     39 	if (argc < 2)
     40 		device = default_device;
     41 	else
     42 		device = argv[1];
     43 
     44 	fd = open(device, O_RDWR);
     45 	if (fd < 0)
     46 		return 1;
     47 
     48 	version = drmGetVersion(fd);
     49 	if (version) {
     50 		printf("Version: %d.%d.%d\n", version->version_major,
     51 		       version->version_minor, version->version_patchlevel);
     52 		printf("  Name: %s\n", version->name);
     53 		printf("  Date: %s\n", version->date);
     54 		printf("  Description: %s\n", version->desc);
     55 
     56 		drmFreeVersion(version);
     57 	}
     58 
     59 	err = drm_tegra_new(&tegra, fd);
     60 	if (err < 0)
     61 		return 1;
     62 
     63 	drm_tegra_close(tegra);
     64 	close(fd);
     65 
     66 	return 0;
     67 }
     68