当前位置: 首页>>代码示例>>C++>>正文


C++ drm_put_dev函数代码示例

本文整理汇总了C++中drm_put_dev函数的典型用法代码示例。如果您正苦于以下问题:C++ drm_put_dev函数的具体用法?C++ drm_put_dev怎么用?C++ drm_put_dev使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了drm_put_dev函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: drm_generic_detach

int
drm_generic_detach(device_t kdev)
{
	struct drm_device *dev;
	int i;

	dev = device_get_softc(kdev);

	drm_put_dev(dev);

	/* Clean up PCI resources allocated by drm_bufs.c.  We're not really
	 * worried about resource consumption while the DRM is inactive (between
	 * lastclose and firstopen or unload) because these aren't actually
	 * taking up KVA, just keeping the PCI resource allocated.
	 */
	for (i = 0; i < DRM_MAX_PCI_RESOURCE; i++) {
		if (dev->pcir[i] == NULL)
			continue;
		bus_release_resource(dev->dev, SYS_RES_MEMORY,
		    dev->pcirid[i], dev->pcir[i]);
		dev->pcir[i] = NULL;
	}

	if (pci_disable_busmaster(dev->dev))
		DRM_ERROR("Request to disable bus-master failed.\n");

	return (0);
}
开发者ID:cyrilmagsuci,项目名称:freebsd,代码行数:28,代码来源:drm_os_freebsd.c

示例2: vmw_remove

static void vmw_remove(struct pci_dev *pdev)
{
	struct drm_device *dev = pci_get_drvdata(pdev);

	pci_disable_device(pdev);
	drm_put_dev(dev);
}
开发者ID:AshishNamdev,项目名称:linux,代码行数:7,代码来源:vmwgfx_drv.c

示例3: i915_pci_remove

static void
i915_pci_remove(struct pci_dev *pdev)
{
	struct drm_device *dev = pci_get_drvdata(pdev);

	drm_put_dev(dev);
}
开发者ID:jebtang,项目名称:mortar,代码行数:7,代码来源:i915_drv.c

示例4: rcar_du_remove

static int rcar_du_remove(struct platform_device *pdev)
{
	struct rcar_du_device *rcdu = platform_get_drvdata(pdev);

	drm_put_dev(rcdu->ddev);

	return 0;
}
开发者ID:19Dan01,项目名称:linux,代码行数:8,代码来源:rcar_du_drv.c

示例5: fsl_dcu_drm_remove

static int fsl_dcu_drm_remove(struct platform_device *pdev)
{
	struct fsl_dcu_drm_device *fsl_dev = platform_get_drvdata(pdev);

	drm_put_dev(fsl_dev->drm);

	return 0;
}
开发者ID:BigeyeDestroyer,项目名称:linux,代码行数:8,代码来源:fsl_dcu_drm_drv.c

示例6: xylon_drm_platform_remove

static int xylon_drm_platform_remove(struct platform_device *pdev)
{
	struct xylon_drm_device *xdev = platform_get_drvdata(pdev);

	drm_put_dev(xdev->dev);

	return 0;
}
开发者ID:TE-HiroakiYamazoe,项目名称:linux-xlnx,代码行数:8,代码来源:xylon_drv.c

示例7: virtio_gpu_remove

static void virtio_gpu_remove(struct virtio_device *vdev)
{
	struct drm_device *dev = vdev->priv;

	drm_dev_unregister(dev);
	virtio_gpu_deinit(dev);
	drm_put_dev(dev);
}
开发者ID:avagin,项目名称:linux,代码行数:8,代码来源:virtgpu_drv.c

示例8: PVRSRVDrmRemove

static int
PVRSRVDrmRemove(struct platform_device *pDevice)
{
	PVR_TRACE(("PVRSRVDrmRemove"));

	drm_put_dev(gpsPVRDRMDev);

	return 0;
}
开发者ID:mobiaqua,项目名称:pvr-omap4-dkms,代码行数:9,代码来源:pvr_drm.c

示例9: drm_platform_exit

void drm_platform_exit(struct drm_driver *driver, struct platform_device *platform_device)
{
	struct drm_device *dev, *tmp;
	DRM_DEBUG("\n");

	list_for_each_entry_safe(dev, tmp, &driver->device_list, driver_item)
		drm_put_dev(dev);
	DRM_INFO("Module unloaded\n");
}
开发者ID:DirtyDroidX,项目名称:android_kernel_htc_m8ul,代码行数:9,代码来源:drm_platform.c

示例10: pdev_remove

static int pdev_remove(struct platform_device *device)
{
	DBG("");

	omap_disconnect_dssdevs();
	omap_crtc_pre_uninit();

	drm_put_dev(platform_get_drvdata(device));
	return 0;
}
开发者ID:AdaLovelance,项目名称:lxcGrsecKernels,代码行数:10,代码来源:omap_drv.c

示例11: fsl_dcu_drm_remove

static int fsl_dcu_drm_remove(struct platform_device *pdev)
{
	struct fsl_dcu_drm_device *fsl_dev = platform_get_drvdata(pdev);

	clk_disable_unprepare(fsl_dev->clk);
	clk_disable_unprepare(fsl_dev->pix_clk);
	clk_unregister(fsl_dev->pix_clk);
	drm_put_dev(fsl_dev->drm);

	return 0;
}
开发者ID:513855417,项目名称:linux,代码行数:11,代码来源:fsl_dcu_drm_drv.c

示例12: drm_unplug_dev

void drm_unplug_dev(struct drm_device *dev)
{
	/* for a USB device */
	drm_dev_unregister(dev);

	mutex_lock(&drm_global_mutex);

	drm_device_set_unplugged(dev);

	if (dev->open_count == 0) {
		drm_put_dev(dev);
	}
	mutex_unlock(&drm_global_mutex);
}
开发者ID:linux-next,项目名称:linux-next,代码行数:14,代码来源:drm_drv.c

示例13: etnaviv_unbind

static void etnaviv_unbind(struct device *dev)
{
	struct drm_device *drm = dev_get_drvdata(dev);
	struct etnaviv_drm_private *priv = drm->dev_private;

	drm_dev_unregister(drm);

	flush_workqueue(priv->wq);
	destroy_workqueue(priv->wq);

	component_unbind_all(dev, drm);

	drm->dev_private = NULL;
	kfree(priv);

	drm_put_dev(drm);
}
开发者ID:020gzh,项目名称:linux,代码行数:17,代码来源:etnaviv_drv.c

示例14: drm_cleanup

/**
 * Called via cleanup_module() at module unload time.
 *
 * Cleans up all DRM device, calling drm_lastclose().
 *
 * \sa drm_init
 */
static void __exit drm_cleanup(drm_device_t * dev)
{

	DRM_DEBUG("\n");
	if (!dev) {
		DRM_ERROR("cleanup called no dev\n");
		return;
	}

	drm_lastclose(dev);

	if (dev->maplist) {
		drm_free(dev->maplist, sizeof(*dev->maplist), DRM_MEM_MAPS);
		dev->maplist = NULL;
	}

	if (!drm_fb_loaded)
		pci_disable_device(dev->pdev);

	drm_ctxbitmap_cleanup(dev);

	if (drm_core_has_MTRR(dev) && drm_core_has_AGP(dev) && dev->agp
	    && dev->agp->agp_mtrr >= 0) {
		int retval;
		retval = mtrr_del(dev->agp->agp_mtrr,
				  dev->agp->agp_info.aper_base,
				  dev->agp->agp_info.aper_size * 1024 * 1024);
		DRM_DEBUG("mtrr_del=%d\n", retval);
	}

	if (drm_core_has_AGP(dev) && dev->agp) {
		drm_free(dev->agp, sizeof(*dev->agp), DRM_MEM_AGPLISTS);
		dev->agp = NULL;
	}
	if (dev->driver->unload)
		dev->driver->unload(dev);

	drm_put_head(&dev->primary);
	if (drm_put_dev(dev))
		DRM_ERROR("Cannot unload module\n");
}
开发者ID:Ionic,项目名称:nx-libs,代码行数:48,代码来源:drm_drv.c

示例15: armada_drm_remove

static int armada_drm_remove(struct platform_device *pdev)
{
	drm_put_dev(platform_get_drvdata(pdev));
	return 0;
}
开发者ID:CenturyGlorion,项目名称:linux,代码行数:5,代码来源:armada_drv.c


注:本文中的drm_put_dev函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。