Lines Matching defs:drm

15 #include <drm/drm_aperture.h>
16 #include <drm/drm_atomic.h>
17 #include <drm/drm_atomic_helper.h>
18 #include <drm/drm_debugfs.h>
19 #include <drm/drm_drv.h>
20 #include <drm/drm_fourcc.h>
21 #include <drm/drm_framebuffer.h>
22 #include <drm/drm_ioctl.h>
23 #include <drm/drm_prime.h>
24 #include <drm/drm_vblank.h>
31 #include "drm.h"
45 static int tegra_atomic_check(struct drm_device *drm,
50 err = drm_atomic_helper_check(drm, state);
54 return tegra_display_hub_atomic_check(drm, state);
63 static void tegra_atomic_post_commit(struct drm_device *drm,
76 struct drm_device *drm = old_state->dev;
77 struct tegra_drm *tegra = drm->dev_private;
82 drm_atomic_helper_commit_modeset_disables(drm, old_state);
83 tegra_display_hub_atomic_commit(drm, old_state);
84 drm_atomic_helper_commit_planes(drm, old_state, 0);
85 drm_atomic_helper_commit_modeset_enables(drm, old_state);
88 drm_atomic_helper_wait_for_vblanks(drm, old_state);
89 drm_atomic_helper_cleanup_planes(drm, old_state);
94 tegra_atomic_post_commit(drm, old_state);
102 static int tegra_drm_open(struct drm_device *drm, struct drm_file *filp)
128 struct drm_device *drm,
168 struct drm_tegra_submit *args, struct drm_device *drm,
178 struct host1x *host1x = dev_get_drvdata(drm->dev->parent);
274 &user_relocs[num_relocs], drm,
349 static int tegra_gem_create(struct drm_device *drm, void *data,
355 bo = tegra_bo_create_with_handle(file, drm, args->size, args->flags,
363 static int tegra_gem_mmap(struct drm_device *drm, void *data,
383 static int tegra_syncpt_read(struct drm_device *drm, void *data,
386 struct host1x *host = dev_get_drvdata(drm->dev->parent);
398 static int tegra_syncpt_incr(struct drm_device *drm, void *data,
401 struct host1x *host1x = dev_get_drvdata(drm->dev->parent);
412 static int tegra_syncpt_wait(struct drm_device *drm, void *data,
415 struct host1x *host1x = dev_get_drvdata(drm->dev->parent);
457 static int tegra_open_channel(struct drm_device *drm, void *data,
461 struct tegra_drm *tegra = drm->dev_private;
490 static int tegra_close_channel(struct drm_device *drm, void *data,
514 static int tegra_get_syncpt(struct drm_device *drm, void *data,
544 static int tegra_submit(struct drm_device *drm, void *data,
560 err = context->client->ops->submit(context, args, drm, file);
567 static int tegra_get_syncpt_base(struct drm_device *drm, void *data,
605 static int tegra_gem_set_tiling(struct drm_device *drm, void *data,
658 static int tegra_gem_get_tiling(struct drm_device *drm, void *data,
698 static int tegra_gem_set_flags(struct drm_device *drm, void *data,
723 static int tegra_gem_get_flags(struct drm_device *drm, void *data,
815 static void tegra_drm_postclose(struct drm_device *drm, struct drm_file *file)
833 struct drm_device *drm = node->minor->dev;
836 mutex_lock(&drm->mode_config.fb_lock);
838 list_for_each_entry(fb, &drm->mode_config.fb_list, head) {
846 mutex_unlock(&drm->mode_config.fb_lock);
854 struct drm_device *drm = node->minor->dev;
855 struct tegra_drm *tegra = drm->dev_private;
919 client->drm = tegra;
930 client->drm = NULL;
942 struct drm_device *drm = dev_get_drvdata(client->host);
943 struct tegra_drm *tegra = drm->dev_private;
989 struct drm_device *drm = dev_get_drvdata(client->host);
990 struct tegra_drm *tegra = drm->dev_private;
1138 struct drm_device *drm;
1141 drm = drm_dev_alloc(&tegra_drm_driver, &dev->dev);
1142 if (IS_ERR(drm))
1143 return PTR_ERR(drm);
1166 dev_set_drvdata(&dev->dev, drm);
1167 drm->dev_private = tegra;
1168 tegra->drm = drm;
1170 drm_mode_config_init(drm);
1172 drm->mode_config.min_width = 0;
1173 drm->mode_config.min_height = 0;
1174 drm->mode_config.max_width = 0;
1175 drm->mode_config.max_height = 0;
1177 drm->mode_config.normalize_zpos = true;
1179 drm->mode_config.funcs = &tegra_drm_mode_config_funcs;
1180 drm->mode_config.helper_private = &tegra_drm_mode_config_helpers;
1182 drm_kms_helper_poll_init(drm);
1193 tegra->hmask = drm->mode_config.max_width - 1;
1194 tegra->vmask = drm->mode_config.max_height - 1;
1237 drm->max_vblank_count = 0xffffffff;
1239 err = drm_vblank_init(drm, drm->mode_config.num_crtc);
1243 drm_mode_config_reset(drm);
1254 if (drm->mode_config.num_crtc > 0) {
1263 drm->driver_features &= ~(DRIVER_MODESET | DRIVER_ATOMIC);
1266 err = drm_dev_register(drm, 0);
1270 tegra_fbdev_setup(drm);
1287 drm_kms_helper_poll_fini(drm);
1288 drm_mode_config_cleanup(drm);
1295 drm_dev_put(drm);
1301 struct drm_device *drm = dev_get_drvdata(&dev->dev);
1302 struct tegra_drm *tegra = drm->dev_private;
1305 drm_dev_unregister(drm);
1307 drm_kms_helper_poll_fini(drm);
1308 drm_atomic_helper_shutdown(drm);
1309 drm_mode_config_cleanup(drm);
1327 drm_dev_put(drm);
1335 struct drm_device *drm = dev_get_drvdata(dev);
1337 return drm_mode_config_helper_suspend(drm);
1342 struct drm_device *drm = dev_get_drvdata(dev);
1344 return drm_mode_config_helper_resume(drm);
1395 .name = "drm",