aboutsummaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/exynos/exynos_drm_hdmi.c
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2013-04-30 09:57:46 +1000
committerDave Airlie <airlied@redhat.com>2013-04-30 09:57:46 +1000
commit8b1f3dc8bbfe82de10836ae346a1c96c253e9f7f (patch)
treeab5fe0acbfe94b9c37bfd641b2fb78fd6a384b82 /drivers/gpu/drm/exynos/exynos_drm_hdmi.c
parentd8bf6b0d5aa403e9ca69ded9ddda3babd0a64d31 (diff)
parent0377f4ed9f1aed30292c4e3c87f24e028ae26f36 (diff)
Merge branch 'exynos-drm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos into drm-next
This is final pull request for Exynos next and includes device tree support for fimc device, one revert, some code cleanups and fixup. The revert replaces wrong one[1] with correct one[2]. This was my mistake and sorry for this. * 'exynos-drm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos: drm/exynos: Don't blend mixer layer 0 drm/exynos: Remove unnecessary braces in exynos_hdmi.c drm/exynos: Select VIDEOMODE_HELPERS for FIMD drm/exynos: do not use generic flags to dumb drm/exynos: added ipp device registration to drm driver exynos/drm: hdmi: cleanup for hdmi common device registration drm/exynos: fix wrong return check for platform_device_register_simple drm/exynos: add device tree support for fimc ipp driver drm/exynos: rework fimc clocks handling drm/exynos: remove redundant devm_kfree() drm/exynos: enable FIMD clocks Revert "drm/exynos: prepare FIMD clocks"
Diffstat (limited to 'drivers/gpu/drm/exynos/exynos_drm_hdmi.c')
-rw-r--r--drivers/gpu/drm/exynos/exynos_drm_hdmi.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/drivers/gpu/drm/exynos/exynos_drm_hdmi.c b/drivers/gpu/drm/exynos/exynos_drm_hdmi.c
index 5285509e4b3..ba2f0f1aa05 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_hdmi.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_hdmi.c
@@ -51,21 +51,27 @@ struct drm_hdmi_context {
int exynos_platform_device_hdmi_register(void)
{
+ struct platform_device *pdev;
+
if (exynos_drm_hdmi_pdev)
return -EEXIST;
- exynos_drm_hdmi_pdev = platform_device_register_simple(
+ pdev = platform_device_register_simple(
"exynos-drm-hdmi", -1, NULL, 0);
- if (IS_ERR_OR_NULL(exynos_drm_hdmi_pdev))
- return PTR_ERR(exynos_drm_hdmi_pdev);
+ if (IS_ERR(pdev))
+ return PTR_ERR(pdev);
+
+ exynos_drm_hdmi_pdev = pdev;
return 0;
}
void exynos_platform_device_hdmi_unregister(void)
{
- if (exynos_drm_hdmi_pdev)
+ if (exynos_drm_hdmi_pdev) {
platform_device_unregister(exynos_drm_hdmi_pdev);
+ exynos_drm_hdmi_pdev = NULL;
+ }
}
void exynos_hdmi_drv_attach(struct exynos_drm_hdmi_context *ctx)