int via_driver_load(struct drm_device *dev, unsigned long chipset) { drm_via_private_t *dev_priv; int ret = 0; dev_priv = kzalloc(sizeof(drm_via_private_t), GFP_KERNEL); if (dev_priv == NULL) return -ENOMEM; dev->dev_private = (void *)dev_priv; dev_priv->chipset = chipset; ret = drm_sman_init(&dev_priv->sman, 2, 12, 8); if (ret) { kfree(dev_priv); return ret; } ret = drm_vblank_init(dev, 1); if (ret) { drm_sman_takedown(&dev_priv->sman); kfree(dev_priv); return ret; } return 0; }
static int mali_driver_load(struct drm_device *dev, unsigned long chipset) { int ret; unsigned long base, size; drm_mali_private_t *dev_priv; printk(KERN_ERR "DRM: mali_driver_load start\n"); dev_priv = drm_calloc(1, sizeof(drm_mali_private_t), DRM_MEM_DRIVER); if ( dev_priv == NULL ) return -ENOMEM; dev->dev_private = (void *)dev_priv; if ( NULL == dev->platformdev ) { dev->platformdev = platform_device_register_simple(mali_drm_device_name, 0, NULL, 0); pdev = dev->platformdev; } #if 0 base = drm_get_resource_start(dev, 1 ); size = drm_get_resource_len(dev, 1 ); #endif ret = drm_sman_init(&dev_priv->sman, 2, 12, 8); if ( ret ) drm_free(dev_priv, sizeof(dev_priv), DRM_MEM_DRIVER); //if ( ret ) kfree( dev_priv ); printk(KERN_ERR "DRM: mali_driver_load done\n"); return ret; }
static int sis_driver_load(struct drm_device *dev, unsigned long chipset) { drm_sis_private_t *dev_priv; int ret; dev_priv = kzalloc(sizeof(drm_sis_private_t), GFP_KERNEL); if (dev_priv == NULL) return -ENOMEM; dev->dev_private = (void *)dev_priv; dev_priv->chipset = chipset; ret = drm_sman_init(&dev_priv->sman, 2, 12, 8); if (ret) kfree(dev_priv); return ret; }
static int sis_driver_load(struct drm_device *dev, unsigned long chipset) { drm_sis_private_t *dev_priv; int ret; dev_priv = drm_calloc(1, sizeof(drm_sis_private_t), DRM_MEM_DRIVER); if (dev_priv == NULL) return DRM_ERR(ENOMEM); dev->dev_private = (void *)dev_priv; dev_priv->chipset = chipset; ret = drm_sman_init(&dev_priv->sman, 2, 12, 8); if (ret) { drm_free(dev_priv, sizeof(dev_priv), DRM_MEM_DRIVER); } return ret; }