summaryrefslogtreecommitdiff
path: root/drivers/gpu/ipu-v3/ipu-prv.h
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-09-11 14:27:19 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-09-11 14:27:19 -0700
commit4a5c969411ded8f5c5a5c7248855e3c0be565f50 (patch)
tree9f13d7019494491619a1cba7ec07e22b12cb6b1c /drivers/gpu/ipu-v3/ipu-prv.h
parent2a3b60d8ba4cdbed7fa9ed7ddb9d9fef664ca8f5 (diff)
parent2eb671c485c06133ff0b568d5ec3c09fda0f4359 (diff)
Merge tag 'ipu-for-staging-3.18' of git://git.pengutronix.de/git/pza/linux into work-next
Philipp writes: IPUv3 CPMEM API change across staging and drm
Diffstat (limited to 'drivers/gpu/ipu-v3/ipu-prv.h')
-rw-r--r--drivers/gpu/ipu-v3/ipu-prv.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/drivers/gpu/ipu-v3/ipu-prv.h b/drivers/gpu/ipu-v3/ipu-prv.h
index c93f50ec04f7..0a7b2adaba39 100644
--- a/drivers/gpu/ipu-v3/ipu-prv.h
+++ b/drivers/gpu/ipu-v3/ipu-prv.h
@@ -148,6 +148,7 @@ struct ipuv3_channel {
struct ipu_soc *ipu;
};
+struct ipu_cpmem;
struct ipu_dc_priv;
struct ipu_dmfc_priv;
struct ipu_di;
@@ -164,7 +165,6 @@ struct ipu_soc {
void __iomem *cm_reg;
void __iomem *idmac_reg;
- struct ipu_ch_param __iomem *cpmem_base;
int usecount;
@@ -176,6 +176,7 @@ struct ipu_soc {
int irq_err;
struct irq_domain *domain;
+ struct ipu_cpmem *cpmem_priv;
struct ipu_dc_priv *dc_priv;
struct ipu_dp_priv *dp_priv;
struct ipu_dmfc_priv *dmfc_priv;
@@ -183,6 +184,17 @@ struct ipu_soc {
struct ipu_smfc_priv *smfc_priv;
};
+static inline u32 ipu_idmac_read(struct ipu_soc *ipu, unsigned offset)
+{
+ return readl(ipu->idmac_reg + offset);
+}
+
+static inline void ipu_idmac_write(struct ipu_soc *ipu, u32 value,
+ unsigned offset)
+{
+ writel(value, ipu->idmac_reg + offset);
+}
+
void ipu_srm_dp_sync_update(struct ipu_soc *ipu);
int ipu_module_enable(struct ipu_soc *ipu, u32 mask);