MLK-15110-16 gpu: imx: dpu: fetcheco: Add helpers to set/get fetcheco off pin
authorLiu Ying <victor.liu@nxp.com>
Tue, 1 Aug 2017 05:03:36 +0000 (13:03 +0800)
committerNitin Garg <nitin.garg@nxp.com>
Tue, 20 Mar 2018 19:50:50 +0000 (14:50 -0500)
This patch adds some helpers to set/get fetcheco off pin.
We need to pin fetcheco off when the primary plane is disabled and the
relevant fetcheco is feed by prefetch engine.

Signed-off-by: Liu Ying <victor.liu@nxp.com>
drivers/gpu/imx/dpu/dpu-fetcheco.c
include/video/dpu.h

index 28d6e80..91aaec4 100644 (file)
@@ -45,6 +45,7 @@ struct dpu_fetcheco {
        struct mutex mutex;
        int id;
        bool inuse;
+       bool pin_off;
        struct dpu_soc *dpu;
        /* see DPU_PLANE_SRC_xxx */
        unsigned int stream_id;
@@ -439,6 +440,24 @@ void fetcheco_set_stream_id(struct dpu_fetcheco *fe, unsigned int id)
 }
 EXPORT_SYMBOL_GPL(fetcheco_set_stream_id);
 
+void fetcheco_pin_off(struct dpu_fetcheco *fe)
+{
+       fe->pin_off = true;
+}
+EXPORT_SYMBOL_GPL(fetcheco_pin_off);
+
+void fetcheco_unpin_off(struct dpu_fetcheco *fe)
+{
+       fe->pin_off = false;
+}
+EXPORT_SYMBOL_GPL(fetcheco_unpin_off);
+
+bool fetcheco_is_pinned_off(struct dpu_fetcheco *fe)
+{
+       return fe->pin_off;
+}
+EXPORT_SYMBOL_GPL(fetcheco_is_pinned_off);
+
 struct dpu_fetcheco *dpu_fe_get(struct dpu_soc *dpu, int id)
 {
        struct dpu_fetcheco *fe;
index 45d253e..9ee7427 100644 (file)
@@ -563,6 +563,9 @@ int fetcheco_fetchtype(struct dpu_fetcheco *fe, fetchtype_t *type);
 dpu_block_id_t fetcheco_get_block_id(struct dpu_fetcheco *fe);
 unsigned int fetcheco_get_stream_id(struct dpu_fetcheco *fe);
 void fetcheco_set_stream_id(struct dpu_fetcheco *fe, unsigned int id);
+void fetcheco_pin_off(struct dpu_fetcheco *fe);
+void fetcheco_unpin_off(struct dpu_fetcheco *fe);
+bool fetcheco_is_pinned_off(struct dpu_fetcheco *fe);
 struct dpu_fetcheco *dpu_fe_get(struct dpu_soc *dpu, int id);
 void dpu_fe_put(struct dpu_fetcheco *fe);