Lines Matching refs:drm
100 static struct drm_framebuffer *tegra_fb_alloc(struct drm_device *drm, in tegra_fb_alloc() argument
113 drm_helper_mode_fill_fb_struct(drm, fb, mode_cmd); in tegra_fb_alloc()
118 err = drm_framebuffer_init(drm, fb, &tegra_fb_funcs); in tegra_fb_alloc()
120 dev_err(drm->dev, "failed to initialize framebuffer: %d\n", in tegra_fb_alloc()
129 struct drm_framebuffer *tegra_fb_create(struct drm_device *drm, in tegra_fb_create() argument
166 fb = tegra_fb_alloc(drm, cmd, planes, i); in tegra_fb_create()
211 struct drm_device *drm = helper->dev; in tegra_fbdev_probe() local
233 bo = tegra_bo_create(drm, size, 0); in tegra_fbdev_probe()
239 dev_err(drm->dev, "failed to allocate framebuffer info\n"); in tegra_fbdev_probe()
244 fbdev->fb = tegra_fb_alloc(drm, &cmd, &bo, 1); in tegra_fbdev_probe()
247 dev_err(drm->dev, "failed to allocate DRM framebuffer: %d\n", in tegra_fbdev_probe()
271 dev_err(drm->dev, "failed to vmap() framebuffer\n"); in tegra_fbdev_probe()
277 drm->mode_config.fb_base = (resource_size_t)bo->paddr; in tegra_fbdev_probe()
294 static struct tegra_fbdev *tegra_fbdev_create(struct drm_device *drm) in tegra_fbdev_create() argument
300 dev_err(drm->dev, "failed to allocate DRM fbdev\n"); in tegra_fbdev_create()
304 drm_fb_helper_prepare(drm, &fbdev->base, &tegra_fb_helper_funcs); in tegra_fbdev_create()
319 struct drm_device *drm = fbdev->base.dev; in tegra_fbdev_init() local
322 err = drm_fb_helper_init(drm, &fbdev->base, max_connectors); in tegra_fbdev_init()
324 dev_err(drm->dev, "failed to initialize DRM FB helper: %d\n", in tegra_fbdev_init()
331 dev_err(drm->dev, "failed to add connectors: %d\n", err); in tegra_fbdev_init()
337 dev_err(drm->dev, "failed to set initial configuration: %d\n", in tegra_fbdev_init()
370 int tegra_drm_fb_prepare(struct drm_device *drm) in tegra_drm_fb_prepare() argument
373 struct tegra_drm *tegra = drm->dev_private; in tegra_drm_fb_prepare()
375 tegra->fbdev = tegra_fbdev_create(drm); in tegra_drm_fb_prepare()
383 void tegra_drm_fb_free(struct drm_device *drm) in tegra_drm_fb_free() argument
386 struct tegra_drm *tegra = drm->dev_private; in tegra_drm_fb_free()
392 int tegra_drm_fb_init(struct drm_device *drm) in tegra_drm_fb_init() argument
395 struct tegra_drm *tegra = drm->dev_private; in tegra_drm_fb_init()
398 err = tegra_fbdev_init(tegra->fbdev, 32, drm->mode_config.num_crtc, in tegra_drm_fb_init()
399 drm->mode_config.num_connector); in tegra_drm_fb_init()
407 void tegra_drm_fb_exit(struct drm_device *drm) in tegra_drm_fb_exit() argument
410 struct tegra_drm *tegra = drm->dev_private; in tegra_drm_fb_exit()
416 void tegra_drm_fb_suspend(struct drm_device *drm) in tegra_drm_fb_suspend() argument
419 struct tegra_drm *tegra = drm->dev_private; in tegra_drm_fb_suspend()
427 void tegra_drm_fb_resume(struct drm_device *drm) in tegra_drm_fb_resume() argument
430 struct tegra_drm *tegra = drm->dev_private; in tegra_drm_fb_resume()