Exemplo n.º 1
0
static void __exit vboxvideo_exit(void)
{
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 39) && !defined(DRM_RHEL61)
    drm_exit(&driver);
#else
    drm_pci_exit(&driver, &pci_driver);
#endif
}
Exemplo n.º 2
0
static void __exit PVRSRVDrmExit(void)
{
	drm_exit(&sPVRDrmDriver);

#if defined(PVR_DRI_DRM_NOT_PCI)
	drm_pvr_dev_remove();
#endif
}
Exemplo n.º 3
0
static void __exit vboxvideo_exit(void)
{
     printk(KERN_INFO "vboxvideo exiting\n");
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 39)
    drm_exit(&driver);
#else
    drm_pci_exit(&driver, &pci_driver);
#endif
}
Exemplo n.º 4
0
static void __exit PVRSRVDrmExit(void)
{
#if defined(SUPPORT_DRI_DRM_EXTERNAL)
	omap_drm_unregister_mapper(pvr_mapper_id);
	omap_drm_unregister_plugin(&plugin);
#else
	drm_exit(&sPVRDrmDriver);

#if defined(PVR_DRI_DRM_NOT_PCI)
	drm_pvr_dev_remove();
#endif
#endif
}
Exemplo n.º 5
0
static void __exit radeon_exit(void)
{
	drm_exit(driver);
}
Exemplo n.º 6
0
static void __exit mga_exit(void)
{
	drm_exit(&driver);
}
Exemplo n.º 7
0
static void __exit sis_exit(void)
{
	drm_exit(&driver);
}
Exemplo n.º 8
0
static void __exit i915_exit(void)
{
	i915_gem_shrinker_exit();
	drm_exit(&driver);
}
Exemplo n.º 9
0
static void __exit radeon_exit(void)
{
	drm_exit(driver);
	radeon_unregister_atpx_handler();
}
Exemplo n.º 10
0
static void __exit via_chrome9_exit(void)
{
	drm_exit(&driver);
}
Exemplo n.º 11
0
void mali_drm_exit(void)
{
	drm_exit(&driver);
}
Exemplo n.º 12
0
static void __exit r128_exit(void)
{
	drm_exit(&driver);
}
Exemplo n.º 13
0
static void __exit i810_exit(void)
{
	drm_exit(&driver);
}
Exemplo n.º 14
0
static void __exit mali_exit(void)
{
	platform_device_unregister(pdev);
	drm_exit(&driver);
}
Exemplo n.º 15
0
int prepsets(struct drm_rawreq *rawreq, char *buffer)
{
FILE *fp;
int i, j, k, n, fd, nchn, nchan, nset, total;
char *fname, *path, **chan;
struct drm_names *name;
struct drm_datreq *split;
static char *fid = "prepsets";

/* We will be splitting requests across channel boundaries which are natural
 * for the configuration of each NRTS node.  Count how many data sets will
 * result from this split.
 */

    for (total = 0, i = 0; i < rawreq->nset; i++) {
        nchn = drm_chanlst(rawreq->set + i, &chan, buffer);
        if (nchn > 0) {
            rawreq->set[i].nchn = nchn;
            for (j = 0; j < rawreq->set[i].nchn; j++) {
                if ((rawreq->set[i].chn[j] = strdup(chan[j])) == NULL) {
                    util_log(1, "%s: strdup: %s", fid, syserrmsg(errno));
                    drm_exit(DRM_BAD);
                }
            }
            total += split_req(rawreq->set + i, &split, buffer);
        } else {
            ++total;
        }
    }
    
/* For each data request, do the split and write the request */

    name = drm_names();

    for (n = 1, i = 0; i < rawreq->nset; i++) {

    /* Split request */

        nset = split_req(rawreq->set + i, &split, buffer);

        for (j = 0; j < nset; j++) {

        /* Update finfo parameters to reflect final number of requests */

            split[j].nset = total;
            split[j].finfo.set = n++;

        /* Create locked queue file */

            if ((fname = strdup(drm_mkname(&split[j].finfo))) == NULL){
                util_log(1, "%s: fatal error: strdup: %s", 
                    fid, syserrmsg(errno)
                );
                drm_exit(DRM_BAD);
            }
            sprintf(buffer, "%s/%s", name->dir.queue, fname);
            if ((path  = strdup(buffer)) == NULL) {
                util_log(1, "%s: fatal error: strdup: %s", 
                    fid, syserrmsg(errno)
                );
                drm_exit(DRM_BAD);
            }
            if ((fd = open(path, O_CREAT, DRM_LOCKED)) < 0) {
                util_log(1, "%s: fatal error: %s: %s", 
                    fid, path, syserrmsg(errno)
                );
                drm_exit(DRM_BAD);
            }
            close(fd);

            if ((fp = fopen(path, "a")) == NULL) {
                util_log(1, "%s: fatal error: %s: %s", 
                    fid, path, syserrmsg(errno)
                );
                drm_exit(DRM_BAD);
            }

        /* Write request in IDADRM format */

            drm_wrdatreq(fp, split + j);
            fclose(fp);

        /* Unlock the file */

            if (chmod(path, DRM_UNLOCKED) != 0) {
                util_log(1, "%s: fatal error: can't chmod %s: %s",
                    fid,  path, syserrmsg(errno)
                );
                drm_exit(DRM_BAD);
            }
            util_log(1, "request %s queued", fname);
        }
    }

    return DRM_OK;
}
Exemplo n.º 16
0
static void __exit i915_exit(void)
{
	drm_exit(&driver);
}
Exemplo n.º 17
0
static IMG_VOID __exit PVRSRVDrmExit(IMG_VOID)
{
	drm_exit(&sPVRDrmDriver);
}
Exemplo n.º 18
0
static void __exit tdfx_exit(void)
{
	drm_exit(&driver);
}