drm/exynos: add pipe param to exynos_drm_crtc_create()
Get the pipe value from a parameter instead of getting it from manager->pipe. We are removing manager->pipe. Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk> Signed-off-by: Inki Dae <inki.dae@samsung.com>
This commit is contained in:
parent
357193cd78
commit
e09f2b0d95
@ -299,7 +299,7 @@ static void exynos_drm_crtc_attach_mode_property(struct drm_crtc *crtc)
|
|||||||
drm_object_attach_property(&crtc->base, prop, 0);
|
drm_object_attach_property(&crtc->base, prop, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
int exynos_drm_crtc_create(struct exynos_drm_manager *manager)
|
int exynos_drm_crtc_create(struct exynos_drm_manager *manager, int pipe)
|
||||||
{
|
{
|
||||||
struct exynos_drm_crtc *exynos_crtc;
|
struct exynos_drm_crtc *exynos_crtc;
|
||||||
struct drm_plane *plane;
|
struct drm_plane *plane;
|
||||||
@ -316,8 +316,8 @@ int exynos_drm_crtc_create(struct exynos_drm_manager *manager)
|
|||||||
|
|
||||||
exynos_crtc->dpms = DRM_MODE_DPMS_OFF;
|
exynos_crtc->dpms = DRM_MODE_DPMS_OFF;
|
||||||
exynos_crtc->manager = manager;
|
exynos_crtc->manager = manager;
|
||||||
exynos_crtc->pipe = manager->pipe;
|
exynos_crtc->pipe = pipe;
|
||||||
plane = exynos_plane_init(manager->drm_dev, 1 << manager->pipe,
|
plane = exynos_plane_init(manager->drm_dev, 1 << pipe,
|
||||||
DRM_PLANE_TYPE_PRIMARY);
|
DRM_PLANE_TYPE_PRIMARY);
|
||||||
if (IS_ERR(plane)) {
|
if (IS_ERR(plane)) {
|
||||||
ret = PTR_ERR(plane);
|
ret = PTR_ERR(plane);
|
||||||
@ -327,7 +327,7 @@ int exynos_drm_crtc_create(struct exynos_drm_manager *manager)
|
|||||||
manager->crtc = &exynos_crtc->base;
|
manager->crtc = &exynos_crtc->base;
|
||||||
crtc = &exynos_crtc->base;
|
crtc = &exynos_crtc->base;
|
||||||
|
|
||||||
private->crtc[manager->pipe] = crtc;
|
private->crtc[pipe] = crtc;
|
||||||
|
|
||||||
ret = drm_crtc_init_with_planes(manager->drm_dev, crtc, plane, NULL,
|
ret = drm_crtc_init_with_planes(manager->drm_dev, crtc, plane, NULL,
|
||||||
&exynos_crtc_funcs);
|
&exynos_crtc_funcs);
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
|
|
||||||
#include "exynos_drm_drv.h"
|
#include "exynos_drm_drv.h"
|
||||||
|
|
||||||
int exynos_drm_crtc_create(struct exynos_drm_manager *manager);
|
int exynos_drm_crtc_create(struct exynos_drm_manager *manager, int pipe);
|
||||||
int exynos_drm_crtc_enable_vblank(struct drm_device *dev, int pipe);
|
int exynos_drm_crtc_enable_vblank(struct drm_device *dev, int pipe);
|
||||||
void exynos_drm_crtc_disable_vblank(struct drm_device *dev, int pipe);
|
void exynos_drm_crtc_disable_vblank(struct drm_device *dev, int pipe);
|
||||||
void exynos_drm_crtc_finish_pageflip(struct drm_device *dev, int pipe);
|
void exynos_drm_crtc_finish_pageflip(struct drm_device *dev, int pipe);
|
||||||
|
@ -1076,7 +1076,7 @@ static int fimd_bind(struct device *dev, struct device *master, void *data)
|
|||||||
struct drm_device *drm_dev = data;
|
struct drm_device *drm_dev = data;
|
||||||
|
|
||||||
fimd_mgr_initialize(&ctx->manager, drm_dev);
|
fimd_mgr_initialize(&ctx->manager, drm_dev);
|
||||||
exynos_drm_crtc_create(&ctx->manager);
|
exynos_drm_crtc_create(&ctx->manager, ctx->pipe);
|
||||||
if (ctx->display)
|
if (ctx->display)
|
||||||
exynos_drm_create_enc_conn(drm_dev, ctx->display);
|
exynos_drm_create_enc_conn(drm_dev, ctx->display);
|
||||||
|
|
||||||
|
@ -558,7 +558,7 @@ static int vidi_bind(struct device *dev, struct device *master, void *data)
|
|||||||
|
|
||||||
vidi_mgr_initialize(&ctx->manager, drm_dev);
|
vidi_mgr_initialize(&ctx->manager, drm_dev);
|
||||||
|
|
||||||
ret = exynos_drm_crtc_create(&ctx->manager);
|
ret = exynos_drm_crtc_create(&ctx->manager, ctx->pipe);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
DRM_ERROR("failed to create crtc.\n");
|
DRM_ERROR("failed to create crtc.\n");
|
||||||
return ret;
|
return ret;
|
||||||
|
@ -1261,7 +1261,7 @@ static int mixer_bind(struct device *dev, struct device *manager, void *data)
|
|||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
ret = exynos_drm_crtc_create(&ctx->manager);
|
ret = exynos_drm_crtc_create(&ctx->manager, ctx->pipe);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
mixer_mgr_remove(&ctx->manager);
|
mixer_mgr_remove(&ctx->manager);
|
||||||
return ret;
|
return ret;
|
||||||
|
Loading…
Reference in New Issue
Block a user