Lines Matching refs:drm
94 static struct tegra_fb *tegra_fb_alloc(struct drm_device *drm, in tegra_fb_alloc() argument
120 err = drm_framebuffer_init(drm, &fb->base, &tegra_fb_funcs); in tegra_fb_alloc()
122 dev_err(drm->dev, "failed to initialize framebuffer: %d\n", in tegra_fb_alloc()
132 struct drm_framebuffer *tegra_fb_create(struct drm_device *drm, in tegra_fb_create() argument
150 gem = drm_gem_object_lookup(drm, file, cmd->handles[i]); in tegra_fb_create()
169 fb = tegra_fb_alloc(drm, cmd, planes, i); in tegra_fb_create()
202 struct drm_device *drm = helper->dev; in tegra_fbdev_probe() local
223 bo = tegra_bo_create(drm, size, 0); in tegra_fbdev_probe()
229 dev_err(drm->dev, "failed to allocate framebuffer info\n"); in tegra_fbdev_probe()
234 fbdev->fb = tegra_fb_alloc(drm, &cmd, &bo, 1); in tegra_fbdev_probe()
237 dev_err(drm->dev, "failed to allocate DRM framebuffer: %d\n", in tegra_fbdev_probe()
261 dev_err(drm->dev, "failed to vmap() framebuffer\n"); in tegra_fbdev_probe()
267 drm->mode_config.fb_base = (resource_size_t)bo->paddr; in tegra_fbdev_probe()
287 static struct tegra_fbdev *tegra_fbdev_create(struct drm_device *drm) in tegra_fbdev_create() argument
293 dev_err(drm->dev, "failed to allocate DRM fbdev\n"); in tegra_fbdev_create()
297 drm_fb_helper_prepare(drm, &fbdev->base, &tegra_fb_helper_funcs); in tegra_fbdev_create()
312 struct drm_device *drm = fbdev->base.dev; in tegra_fbdev_init() local
315 err = drm_fb_helper_init(drm, &fbdev->base, num_crtc, max_connectors); in tegra_fbdev_init()
317 dev_err(drm->dev, "failed to initialize DRM FB helper: %d\n", in tegra_fbdev_init()
324 dev_err(drm->dev, "failed to add connectors: %d\n", err); in tegra_fbdev_init()
330 dev_err(drm->dev, "failed to set initial configuration: %d\n", in tegra_fbdev_init()
362 void tegra_fb_output_poll_changed(struct drm_device *drm) in tegra_fb_output_poll_changed() argument
364 struct tegra_drm *tegra = drm->dev_private; in tegra_fb_output_poll_changed()
371 int tegra_drm_fb_prepare(struct drm_device *drm) in tegra_drm_fb_prepare() argument
374 struct tegra_drm *tegra = drm->dev_private; in tegra_drm_fb_prepare()
376 tegra->fbdev = tegra_fbdev_create(drm); in tegra_drm_fb_prepare()
384 void tegra_drm_fb_free(struct drm_device *drm) in tegra_drm_fb_free() argument
387 struct tegra_drm *tegra = drm->dev_private; in tegra_drm_fb_free()
393 int tegra_drm_fb_init(struct drm_device *drm) in tegra_drm_fb_init() argument
396 struct tegra_drm *tegra = drm->dev_private; in tegra_drm_fb_init()
399 err = tegra_fbdev_init(tegra->fbdev, 32, drm->mode_config.num_crtc, in tegra_drm_fb_init()
400 drm->mode_config.num_connector); in tegra_drm_fb_init()
408 void tegra_drm_fb_exit(struct drm_device *drm) in tegra_drm_fb_exit() argument
411 struct tegra_drm *tegra = drm->dev_private; in tegra_drm_fb_exit()