diff options
Diffstat (limited to 'drivers/gpu/drm/omapdrm')
| -rw-r--r-- | drivers/gpu/drm/omapdrm/dss/base.c | 2 | ||||
| -rw-r--r-- | drivers/gpu/drm/omapdrm/dss/dpi.c | 1 | ||||
| -rw-r--r-- | drivers/gpu/drm/omapdrm/dss/dsi.c | 1 | ||||
| -rw-r--r-- | drivers/gpu/drm/omapdrm/dss/hdmi4.c | 1 | ||||
| -rw-r--r-- | drivers/gpu/drm/omapdrm/dss/hdmi5.c | 1 | ||||
| -rw-r--r-- | drivers/gpu/drm/omapdrm/dss/omapdss.h | 1 | ||||
| -rw-r--r-- | drivers/gpu/drm/omapdrm/dss/output.c | 21 | ||||
| -rw-r--r-- | drivers/gpu/drm/omapdrm/dss/sdi.c | 1 | ||||
| -rw-r--r-- | drivers/gpu/drm/omapdrm/dss/venc.c | 1 |
9 files changed, 2 insertions, 28 deletions
diff --git a/drivers/gpu/drm/omapdrm/dss/base.c b/drivers/gpu/drm/omapdrm/dss/base.c index 02c6ed97d632..89472715ee8f 100644 --- a/drivers/gpu/drm/omapdrm/dss/base.c +++ b/drivers/gpu/drm/omapdrm/dss/base.c | |||
| @@ -235,6 +235,8 @@ void omapdss_device_disconnect(struct omap_dss_device *src, | |||
| 235 | src->dst = NULL; | 235 | src->dst = NULL; |
| 236 | } | 236 | } |
| 237 | 237 | ||
| 238 | WARN_ON(dst->state != OMAP_DSS_DISPLAY_DISABLED); | ||
| 239 | |||
| 238 | if (dst->driver) | 240 | if (dst->driver) |
| 239 | dst->driver->disconnect(src, dst); | 241 | dst->driver->disconnect(src, dst); |
| 240 | else | 242 | else |
diff --git a/drivers/gpu/drm/omapdrm/dss/dpi.c b/drivers/gpu/drm/omapdrm/dss/dpi.c index eeeea936f889..178b463c2d60 100644 --- a/drivers/gpu/drm/omapdrm/dss/dpi.c +++ b/drivers/gpu/drm/omapdrm/dss/dpi.c | |||
| @@ -633,7 +633,6 @@ static void dpi_disconnect(struct omap_dss_device *src, | |||
| 633 | struct omap_dss_device *dst) | 633 | struct omap_dss_device *dst) |
| 634 | { | 634 | { |
| 635 | omapdss_device_disconnect(dst, dst->next); | 635 | omapdss_device_disconnect(dst, dst->next); |
| 636 | omapdss_output_unset_device(dst); | ||
| 637 | 636 | ||
| 638 | dss_mgr_disconnect(dst); | 637 | dss_mgr_disconnect(dst); |
| 639 | } | 638 | } |
diff --git a/drivers/gpu/drm/omapdrm/dss/dsi.c b/drivers/gpu/drm/omapdrm/dss/dsi.c index 9c617e35efd1..948e3b873523 100644 --- a/drivers/gpu/drm/omapdrm/dss/dsi.c +++ b/drivers/gpu/drm/omapdrm/dss/dsi.c | |||
| @@ -4903,7 +4903,6 @@ static void dsi_disconnect(struct omap_dss_device *src, | |||
| 4903 | struct omap_dss_device *dst) | 4903 | struct omap_dss_device *dst) |
| 4904 | { | 4904 | { |
| 4905 | omapdss_device_disconnect(dst, dst->next); | 4905 | omapdss_device_disconnect(dst, dst->next); |
| 4906 | omapdss_output_unset_device(dst); | ||
| 4907 | 4906 | ||
| 4908 | dss_mgr_disconnect(dst); | 4907 | dss_mgr_disconnect(dst); |
| 4909 | } | 4908 | } |
diff --git a/drivers/gpu/drm/omapdrm/dss/hdmi4.c b/drivers/gpu/drm/omapdrm/dss/hdmi4.c index 22f8b74f5bf5..6616530d5fe6 100644 --- a/drivers/gpu/drm/omapdrm/dss/hdmi4.c +++ b/drivers/gpu/drm/omapdrm/dss/hdmi4.c | |||
| @@ -450,7 +450,6 @@ static void hdmi_disconnect(struct omap_dss_device *src, | |||
| 450 | struct omap_dss_device *dst) | 450 | struct omap_dss_device *dst) |
| 451 | { | 451 | { |
| 452 | omapdss_device_disconnect(dst, dst->next); | 452 | omapdss_device_disconnect(dst, dst->next); |
| 453 | omapdss_output_unset_device(dst); | ||
| 454 | 453 | ||
| 455 | dss_mgr_disconnect(dst); | 454 | dss_mgr_disconnect(dst); |
| 456 | } | 455 | } |
diff --git a/drivers/gpu/drm/omapdrm/dss/hdmi5.c b/drivers/gpu/drm/omapdrm/dss/hdmi5.c index d8592d02a58d..f7e15edc05fc 100644 --- a/drivers/gpu/drm/omapdrm/dss/hdmi5.c +++ b/drivers/gpu/drm/omapdrm/dss/hdmi5.c | |||
| @@ -455,7 +455,6 @@ static void hdmi_disconnect(struct omap_dss_device *src, | |||
| 455 | struct omap_dss_device *dst) | 455 | struct omap_dss_device *dst) |
| 456 | { | 456 | { |
| 457 | omapdss_device_disconnect(dst, dst->next); | 457 | omapdss_device_disconnect(dst, dst->next); |
| 458 | omapdss_output_unset_device(dst); | ||
| 459 | 458 | ||
| 460 | dss_mgr_disconnect(dst); | 459 | dss_mgr_disconnect(dst); |
| 461 | } | 460 | } |
diff --git a/drivers/gpu/drm/omapdrm/dss/omapdss.h b/drivers/gpu/drm/omapdrm/dss/omapdss.h index 600ac7c25724..8f9538e17ea4 100644 --- a/drivers/gpu/drm/omapdrm/dss/omapdss.h +++ b/drivers/gpu/drm/omapdrm/dss/omapdss.h | |||
| @@ -522,7 +522,6 @@ int omap_dss_get_num_overlays(void); | |||
| 522 | #define for_each_dss_output(d) \ | 522 | #define for_each_dss_output(d) \ |
| 523 | while ((d = omapdss_device_get_next(d, OMAP_DSS_DEVICE_TYPE_OUTPUT)) != NULL) | 523 | while ((d = omapdss_device_get_next(d, OMAP_DSS_DEVICE_TYPE_OUTPUT)) != NULL) |
| 524 | int omapdss_output_validate(struct omap_dss_device *out); | 524 | int omapdss_output_validate(struct omap_dss_device *out); |
| 525 | int omapdss_output_unset_device(struct omap_dss_device *out); | ||
| 526 | 525 | ||
| 527 | typedef void (*omap_dispc_isr_t) (void *arg, u32 mask); | 526 | typedef void (*omap_dispc_isr_t) (void *arg, u32 mask); |
| 528 | int omap_dispc_register_isr(omap_dispc_isr_t isr, void *arg, u32 mask); | 527 | int omap_dispc_register_isr(omap_dispc_isr_t isr, void *arg, u32 mask); |
diff --git a/drivers/gpu/drm/omapdrm/dss/output.c b/drivers/gpu/drm/omapdrm/dss/output.c index be544dd48bf4..2da480be918d 100644 --- a/drivers/gpu/drm/omapdrm/dss/output.c +++ b/drivers/gpu/drm/omapdrm/dss/output.c | |||
| @@ -24,8 +24,6 @@ | |||
| 24 | #include "dss.h" | 24 | #include "dss.h" |
| 25 | #include "omapdss.h" | 25 | #include "omapdss.h" |
| 26 | 26 | ||
| 27 | static DEFINE_MUTEX(output_lock); | ||
| 28 | |||
| 29 | int omapdss_output_validate(struct omap_dss_device *out) | 27 | int omapdss_output_validate(struct omap_dss_device *out) |
| 30 | { | 28 | { |
| 31 | if (out->next && out->output_type != out->next->type) { | 29 | if (out->next && out->output_type != out->next->type) { |
| @@ -37,25 +35,6 @@ int omapdss_output_validate(struct omap_dss_device *out) | |||
| 37 | } | 35 | } |
| 38 | EXPORT_SYMBOL(omapdss_output_validate); | 36 | EXPORT_SYMBOL(omapdss_output_validate); |
| 39 | 37 | ||
| 40 | int omapdss_output_unset_device(struct omap_dss_device *out) | ||
| 41 | { | ||
| 42 | int r = 0; | ||
| 43 | |||
| 44 | mutex_lock(&output_lock); | ||
| 45 | |||
| 46 | if (out->dst->state != OMAP_DSS_DISPLAY_DISABLED) { | ||
| 47 | dev_err(out->dev, | ||
| 48 | "device %s is not disabled, cannot unset device\n", | ||
| 49 | out->dst->name); | ||
| 50 | r = -EINVAL; | ||
| 51 | } | ||
| 52 | |||
| 53 | mutex_unlock(&output_lock); | ||
| 54 | |||
| 55 | return r; | ||
| 56 | } | ||
| 57 | EXPORT_SYMBOL(omapdss_output_unset_device); | ||
| 58 | |||
| 59 | int dss_install_mgr_ops(struct dss_device *dss, | 38 | int dss_install_mgr_ops(struct dss_device *dss, |
| 60 | const struct dss_mgr_ops *mgr_ops, | 39 | const struct dss_mgr_ops *mgr_ops, |
| 61 | struct omap_drm_private *priv) | 40 | struct omap_drm_private *priv) |
diff --git a/drivers/gpu/drm/omapdrm/dss/sdi.c b/drivers/gpu/drm/omapdrm/dss/sdi.c index 2101a697a08a..764299cafbe2 100644 --- a/drivers/gpu/drm/omapdrm/dss/sdi.c +++ b/drivers/gpu/drm/omapdrm/dss/sdi.c | |||
| @@ -274,7 +274,6 @@ static void sdi_disconnect(struct omap_dss_device *src, | |||
| 274 | struct omap_dss_device *dst) | 274 | struct omap_dss_device *dst) |
| 275 | { | 275 | { |
| 276 | omapdss_device_disconnect(dst, dst->next); | 276 | omapdss_device_disconnect(dst, dst->next); |
| 277 | omapdss_output_unset_device(dst); | ||
| 278 | 277 | ||
| 279 | dss_mgr_disconnect(dst); | 278 | dss_mgr_disconnect(dst); |
| 280 | } | 279 | } |
diff --git a/drivers/gpu/drm/omapdrm/dss/venc.c b/drivers/gpu/drm/omapdrm/dss/venc.c index e673f3e78c69..c2811c425195 100644 --- a/drivers/gpu/drm/omapdrm/dss/venc.c +++ b/drivers/gpu/drm/omapdrm/dss/venc.c | |||
| @@ -713,7 +713,6 @@ static void venc_disconnect(struct omap_dss_device *src, | |||
| 713 | struct omap_dss_device *dst) | 713 | struct omap_dss_device *dst) |
| 714 | { | 714 | { |
| 715 | omapdss_device_disconnect(dst, dst->next); | 715 | omapdss_device_disconnect(dst, dst->next); |
| 716 | omapdss_output_unset_device(dst); | ||
| 717 | 716 | ||
| 718 | dss_mgr_disconnect(dst); | 717 | dss_mgr_disconnect(dst); |
| 719 | } | 718 | } |
