Lines Matching full:drm
12 #include <drm/drm_atomic_helper.h>
13 #include <drm/drm_crtc_helper.h>
14 #include <drm/drm_fb_helper.h>
15 #include <drm/drm_of.h>
21 #include <drm/armada_drm.h>
43 .name = "armada-drm",
44 .desc = "Armada SoC DRM",
82 "armada-drm")) in armada_drm_bind()
93 BUILD_BUG_ON(offsetof(struct armada_private, drm) != 0); in armada_drm_bind()
95 ret = drm_dev_init(&priv->drm, &armada_drm_driver, dev); in armada_drm_bind()
103 priv->drm.dev_private = priv; in armada_drm_bind()
105 dev_set_drvdata(dev, &priv->drm); in armada_drm_bind()
108 drm_mode_config_init(&priv->drm); in armada_drm_bind()
109 priv->drm.mode_config.min_width = 320; in armada_drm_bind()
110 priv->drm.mode_config.min_height = 200; in armada_drm_bind()
116 priv->drm.mode_config.max_width = 1920; in armada_drm_bind()
117 priv->drm.mode_config.max_height = 2048; in armada_drm_bind()
119 priv->drm.mode_config.preferred_depth = 24; in armada_drm_bind()
120 priv->drm.mode_config.funcs = &armada_drm_mode_config_funcs; in armada_drm_bind()
124 ret = component_bind_all(dev, &priv->drm); in armada_drm_bind()
128 ret = drm_vblank_init(&priv->drm, priv->drm.mode_config.num_crtc); in armada_drm_bind()
132 priv->drm.irq_enabled = true; in armada_drm_bind()
134 drm_mode_config_reset(&priv->drm); in armada_drm_bind()
136 ret = armada_fbdev_init(&priv->drm); in armada_drm_bind()
140 drm_kms_helper_poll_init(&priv->drm); in armada_drm_bind()
142 ret = drm_dev_register(&priv->drm, 0); in armada_drm_bind()
147 armada_drm_debugfs_init(priv->drm.primary); in armada_drm_bind()
153 drm_kms_helper_poll_fini(&priv->drm); in armada_drm_bind()
154 armada_fbdev_fini(&priv->drm); in armada_drm_bind()
156 component_unbind_all(dev, &priv->drm); in armada_drm_bind()
158 drm_mode_config_cleanup(&priv->drm); in armada_drm_bind()
160 drm_dev_put(&priv->drm); in armada_drm_bind()
166 struct drm_device *drm = dev_get_drvdata(dev); in armada_drm_unbind() local
167 struct armada_private *priv = drm->dev_private; in armada_drm_unbind()
169 drm_kms_helper_poll_fini(&priv->drm); in armada_drm_unbind()
170 armada_fbdev_fini(&priv->drm); in armada_drm_unbind()
172 drm_dev_unregister(&priv->drm); in armada_drm_unbind()
174 component_unbind_all(dev, &priv->drm); in armada_drm_unbind()
176 drm_mode_config_cleanup(&priv->drm); in armada_drm_unbind()
179 drm_dev_put(&priv->drm); in armada_drm_unbind()
268 .name = "armada-drm",
270 .name = "armada-510-drm",
280 .name = "armada-drm",
309 MODULE_DESCRIPTION("Armada DRM Driver");
311 MODULE_ALIAS("platform:armada-drm");