Home
last modified time | relevance | path

Searched full:ipu (Results 1 – 25 of 215) sorted by relevance

123456789

/kernel/linux/linux-4.19/drivers/gpu/ipu-v3/
Dipu-common.c35 #include <video/imx-ipu-v3.h>
36 #include "ipu-prv.h"
38 static inline u32 ipu_cm_read(struct ipu_soc *ipu, unsigned offset) in ipu_cm_read() argument
40 return readl(ipu->cm_reg + offset); in ipu_cm_read()
43 static inline void ipu_cm_write(struct ipu_soc *ipu, u32 value, unsigned offset) in ipu_cm_write() argument
45 writel(value, ipu->cm_reg + offset); in ipu_cm_write()
48 int ipu_get_num(struct ipu_soc *ipu) in ipu_get_num() argument
50 return ipu->id; in ipu_get_num()
54 void ipu_srm_dp_update(struct ipu_soc *ipu, bool sync) in ipu_srm_dp_update() argument
58 val = ipu_cm_read(ipu, IPU_SRM_PRI2); in ipu_srm_dp_update()
[all …]
DMakefile2 obj-$(CONFIG_IMX_IPUV3_CORE) += imx-ipu-v3.o
4 imx-ipu-v3-objs := ipu-common.o ipu-cpmem.o ipu-csi.o ipu-dc.o ipu-di.o \
5 ipu-dp.o ipu-dmfc.o ipu-ic.o ipu-image-convert.o \
6 ipu-smfc.o ipu-vdi.o
9 imx-ipu-v3-objs += ipu-pre.o ipu-prg.o
Dipu-prv.h25 #include <video/imx-ipu-v3.h>
38 /* IPU Common registers */
160 struct ipu_soc *ipu; member
211 static inline u32 ipu_idmac_read(struct ipu_soc *ipu, unsigned offset) in ipu_idmac_read() argument
213 return readl(ipu->idmac_reg + offset); in ipu_idmac_read()
216 static inline void ipu_idmac_write(struct ipu_soc *ipu, u32 value, in ipu_idmac_write() argument
219 writel(value, ipu->idmac_reg + offset); in ipu_idmac_write()
222 void ipu_srm_dp_update(struct ipu_soc *ipu, bool sync);
224 int ipu_module_enable(struct ipu_soc *ipu, u32 mask);
225 int ipu_module_disable(struct ipu_soc *ipu, u32 mask);
[all …]
Dipu-dmfc.c20 #include <video/imx-ipu-v3.h>
21 #include "ipu-prv.h"
96 struct ipu_soc *ipu; member
102 struct ipu_soc *ipu; member
116 ipu_module_enable(priv->ipu, IPU_CONF_DMFC_EN); in ipu_dmfc_enable_channel()
135 ipu_module_disable(priv->ipu, IPU_CONF_DMFC_EN); in ipu_dmfc_disable_channel()
164 struct dmfc_channel *ipu_dmfc_get(struct ipu_soc *ipu, int ipu_channel) in ipu_dmfc_get() argument
166 struct ipu_dmfc_priv *priv = ipu->dmfc_priv; in ipu_dmfc_get()
181 int ipu_dmfc_init(struct ipu_soc *ipu, struct device *dev, unsigned long base, in ipu_dmfc_init() argument
196 priv->ipu = ipu; in ipu_dmfc_init()
[all …]
Dipu-dp.c22 #include <video/imx-ipu-v3.h>
23 #include "ipu-prv.h"
69 struct ipu_soc *ipu; member
115 ipu_srm_dp_update(priv->ipu, true); in ipu_dp_set_global_alpha()
130 ipu_srm_dp_update(priv->ipu, true); in ipu_dp_set_window_pos()
211 ipu_srm_dp_update(priv->ipu, true); in ipu_dp_setup_channel()
219 int ipu_dp_enable(struct ipu_soc *ipu) in ipu_dp_enable() argument
221 struct ipu_dp_priv *priv = ipu->dp_priv; in ipu_dp_enable()
226 ipu_module_enable(priv->ipu, IPU_CONF_DP_EN); in ipu_dp_enable()
251 ipu_srm_dp_update(priv->ipu, true); in ipu_dp_enable_channel()
[all …]
Dipu-ic.c21 #include "ipu-prv.h"
162 struct ipu_soc *ipu; member
247 dev_err(priv->ipu->dev, "Unsupported color space conversion\n"); in init_csc()
286 struct ipu_soc *ipu = priv->ipu; in calc_resize_coeffs() local
294 dev_err(ipu->dev, "Unsupported resize (in_size > 4096)\n"); in calc_resize_coeffs()
298 dev_err(ipu->dev, "Unsupported resize (out_size > 1024)\n"); in calc_resize_coeffs()
304 dev_err(ipu->dev, "Unsupported downsize\n"); in calc_resize_coeffs()
325 dev_err(ipu->dev, "Warning! Overflow on resize coeff.\n"); in calc_resize_coeffs()
497 struct ipu_soc *ipu = priv->ipu; in ipu_ic_task_idma_init() local
505 dev_err(ipu->dev, "Illegal burst length for IC\n"); in ipu_ic_task_idma_init()
[all …]
Dipu-smfc.c19 #include <video/imx-ipu-v3.h>
21 #include "ipu-prv.h"
32 struct ipu_soc *ipu; member
110 ipu_module_enable(priv->ipu, IPU_CONF_SMFC_EN); in ipu_smfc_enable()
130 ipu_module_disable(priv->ipu, IPU_CONF_SMFC_EN); in ipu_smfc_disable()
141 struct ipu_smfc *ipu_smfc_get(struct ipu_soc *ipu, unsigned int chno) in ipu_smfc_get() argument
143 struct ipu_smfc_priv *priv = ipu->smfc_priv; in ipu_smfc_get()
178 int ipu_smfc_init(struct ipu_soc *ipu, struct device *dev, in ipu_smfc_init() argument
188 ipu->smfc_priv = priv; in ipu_smfc_init()
190 priv->ipu = ipu; in ipu_smfc_init()
[all …]
/kernel/linux/linux-5.10/drivers/gpu/ipu-v3/
Dipu-common.c26 #include <video/imx-ipu-v3.h>
27 #include "ipu-prv.h"
29 static inline u32 ipu_cm_read(struct ipu_soc *ipu, unsigned offset) in ipu_cm_read() argument
31 return readl(ipu->cm_reg + offset); in ipu_cm_read()
34 static inline void ipu_cm_write(struct ipu_soc *ipu, u32 value, unsigned offset) in ipu_cm_write() argument
36 writel(value, ipu->cm_reg + offset); in ipu_cm_write()
39 int ipu_get_num(struct ipu_soc *ipu) in ipu_get_num() argument
41 return ipu->id; in ipu_get_num()
45 void ipu_srm_dp_update(struct ipu_soc *ipu, bool sync) in ipu_srm_dp_update() argument
49 val = ipu_cm_read(ipu, IPU_SRM_PRI2); in ipu_srm_dp_update()
[all …]
DMakefile2 obj-$(CONFIG_IMX_IPUV3_CORE) += imx-ipu-v3.o
4 imx-ipu-v3-objs := ipu-common.o ipu-cpmem.o ipu-csi.o ipu-dc.o ipu-di.o \
5 ipu-dp.o ipu-dmfc.o ipu-ic.o ipu-ic-csc.o \
6 ipu-image-convert.o ipu-smfc.o ipu-vdi.o
9 imx-ipu-v3-objs += ipu-pre.o ipu-prg.o
Dipu-prv.h16 #include <video/imx-ipu-v3.h>
29 /* IPU Common registers */
151 struct ipu_soc *ipu; member
202 static inline u32 ipu_idmac_read(struct ipu_soc *ipu, unsigned offset) in ipu_idmac_read() argument
204 return readl(ipu->idmac_reg + offset); in ipu_idmac_read()
207 static inline void ipu_idmac_write(struct ipu_soc *ipu, u32 value, in ipu_idmac_write() argument
210 writel(value, ipu->idmac_reg + offset); in ipu_idmac_write()
213 void ipu_srm_dp_update(struct ipu_soc *ipu, bool sync);
215 int ipu_module_enable(struct ipu_soc *ipu, u32 mask);
216 int ipu_module_disable(struct ipu_soc *ipu, u32 mask);
[all …]
Dipu-dmfc.c11 #include <video/imx-ipu-v3.h>
12 #include "ipu-prv.h"
87 struct ipu_soc *ipu; member
93 struct ipu_soc *ipu; member
107 ipu_module_enable(priv->ipu, IPU_CONF_DMFC_EN); in ipu_dmfc_enable_channel()
126 ipu_module_disable(priv->ipu, IPU_CONF_DMFC_EN); in ipu_dmfc_disable_channel()
155 struct dmfc_channel *ipu_dmfc_get(struct ipu_soc *ipu, int ipu_channel) in ipu_dmfc_get() argument
157 struct ipu_dmfc_priv *priv = ipu->dmfc_priv; in ipu_dmfc_get()
172 int ipu_dmfc_init(struct ipu_soc *ipu, struct device *dev, unsigned long base, in ipu_dmfc_init() argument
187 priv->ipu = ipu; in ipu_dmfc_init()
[all …]
Dipu-dp.c13 #include <video/imx-ipu-v3.h>
14 #include "ipu-prv.h"
60 struct ipu_soc *ipu; member
106 ipu_srm_dp_update(priv->ipu, true); in ipu_dp_set_global_alpha()
121 ipu_srm_dp_update(priv->ipu, true); in ipu_dp_set_window_pos()
202 ipu_srm_dp_update(priv->ipu, true); in ipu_dp_setup_channel()
210 int ipu_dp_enable(struct ipu_soc *ipu) in ipu_dp_enable() argument
212 struct ipu_dp_priv *priv = ipu->dp_priv; in ipu_dp_enable()
217 ipu_module_enable(priv->ipu, IPU_CONF_DP_EN); in ipu_dp_enable()
242 ipu_srm_dp_update(priv->ipu, true); in ipu_dp_enable_channel()
[all …]
Dipu-ic.c15 #include "ipu-prv.h"
158 struct ipu_soc *ipu; member
222 struct ipu_soc *ipu = priv->ipu; in calc_resize_coeffs() local
230 dev_err(ipu->dev, "Unsupported resize (in_size > 4096)\n"); in calc_resize_coeffs()
234 dev_err(ipu->dev, "Unsupported resize (out_size > 1024)\n"); in calc_resize_coeffs()
240 dev_err(ipu->dev, "Unsupported downsize\n"); in calc_resize_coeffs()
261 dev_err(ipu->dev, "Warning! Overflow on resize coeff.\n"); in calc_resize_coeffs()
457 struct ipu_soc *ipu = priv->ipu; in ipu_ic_task_idma_init() local
465 dev_err(ipu->dev, "Illegal burst length for IC\n"); in ipu_ic_task_idma_init()
597 ipu_module_enable(priv->ipu, IPU_CONF_ROT_EN); in ipu_irt_enable()
[all …]
Dipu-smfc.c13 #include <video/imx-ipu-v3.h>
15 #include "ipu-prv.h"
26 struct ipu_soc *ipu; member
104 ipu_module_enable(priv->ipu, IPU_CONF_SMFC_EN); in ipu_smfc_enable()
124 ipu_module_disable(priv->ipu, IPU_CONF_SMFC_EN); in ipu_smfc_disable()
135 struct ipu_smfc *ipu_smfc_get(struct ipu_soc *ipu, unsigned int chno) in ipu_smfc_get() argument
137 struct ipu_smfc_priv *priv = ipu->smfc_priv; in ipu_smfc_get()
172 int ipu_smfc_init(struct ipu_soc *ipu, struct device *dev, in ipu_smfc_init() argument
182 ipu->smfc_priv = priv; in ipu_smfc_init()
184 priv->ipu = ipu; in ipu_smfc_init()
[all …]
/kernel/linux/linux-5.10/drivers/gpu/drm/ingenic/
Dingenic-ipu.c3 // Ingenic JZ47xx IPU driver
9 #include "ingenic-ipu.h"
40 void (*set_coefs)(struct ingenic_ipu *ipu, unsigned int reg,
116 static void jz4760_set_coefs(struct ingenic_ipu *ipu, unsigned int reg, in jz4760_set_coefs() argument
160 regmap_write(ipu->map, reg, val); in jz4760_set_coefs()
165 regmap_write(ipu->map, reg, val); in jz4760_set_coefs()
168 static void jz4725b_set_coefs(struct ingenic_ipu *ipu, unsigned int reg, in jz4725b_set_coefs() argument
184 regmap_write(ipu->map, reg, val); in jz4725b_set_coefs()
188 regmap_write(ipu->map, reg, JZ4725B_IPU_RSZ_LUT_IN_EN); in jz4725b_set_coefs()
192 static void ingenic_ipu_set_downscale_coefs(struct ingenic_ipu *ipu, in ingenic_ipu_set_downscale_coefs() argument
[all …]
/kernel/linux/linux-4.19/drivers/dma/ipu/
Dipu_irq.c18 #include <linux/dma/ipu-dma.h>
25 static u32 ipu_read_reg(struct ipu *ipu, unsigned long reg) in ipu_read_reg() argument
27 return __raw_readl(ipu->reg_ipu + reg); in ipu_read_reg()
30 static void ipu_write_reg(struct ipu *ipu, u32 value, unsigned long reg) in ipu_write_reg() argument
32 __raw_writel(value, ipu->reg_ipu + reg); in ipu_write_reg()
37 * IPU IRQ chip driver
47 struct ipu *ipu; member
76 struct ipu *ipu; member
108 pr_err("IPU: %s(%u) - unmapped!\n", __func__, d->irq); in ipu_irq_unmask()
112 reg = ipu_read_reg(bank->ipu, bank->control); in ipu_irq_unmask()
[all …]
Dipu_idmac.c25 #include <linux/dma/ipu-dma.h>
39 * struct ipu *ipu = to_ipu(to_idmac(ichan->dma_chan.device));
42 static struct ipu ipu_data;
44 #define to_ipu(id) container_of(id, struct ipu, idmac)
46 static u32 __idmac_read_icreg(struct ipu *ipu, unsigned long reg) in __idmac_read_icreg() argument
48 return __raw_readl(ipu->reg_ic + reg); in __idmac_read_icreg()
51 #define idmac_read_icreg(ipu, reg) __idmac_read_icreg(ipu, reg - IC_CONF) argument
53 static void __idmac_write_icreg(struct ipu *ipu, u32 value, unsigned long reg) in __idmac_write_icreg() argument
55 __raw_writel(value, ipu->reg_ic + reg); in __idmac_write_icreg()
58 #define idmac_write_icreg(ipu, v, reg) __idmac_write_icreg(ipu, v, reg - IC_CONF) argument
[all …]
/kernel/linux/linux-5.10/drivers/dma/ipu/
Dipu_irq.c15 #include <linux/dma/ipu-dma.h>
22 static u32 ipu_read_reg(struct ipu *ipu, unsigned long reg) in ipu_read_reg() argument
24 return __raw_readl(ipu->reg_ipu + reg); in ipu_read_reg()
27 static void ipu_write_reg(struct ipu *ipu, u32 value, unsigned long reg) in ipu_write_reg() argument
29 __raw_writel(value, ipu->reg_ipu + reg); in ipu_write_reg()
34 * IPU IRQ chip driver
44 struct ipu *ipu; member
73 struct ipu *ipu; member
105 pr_err("IPU: %s(%u) - unmapped!\n", __func__, d->irq); in ipu_irq_unmask()
109 reg = ipu_read_reg(bank->ipu, bank->control); in ipu_irq_unmask()
[all …]
Dipu_idmac.c22 #include <linux/dma/ipu-dma.h>
36 * struct ipu *ipu = to_ipu(to_idmac(ichan->dma_chan.device));
39 static struct ipu ipu_data;
41 #define to_ipu(id) container_of(id, struct ipu, idmac)
43 static u32 __idmac_read_icreg(struct ipu *ipu, unsigned long reg) in __idmac_read_icreg() argument
45 return __raw_readl(ipu->reg_ic + reg); in __idmac_read_icreg()
48 #define idmac_read_icreg(ipu, reg) __idmac_read_icreg(ipu, reg - IC_CONF) argument
50 static void __idmac_write_icreg(struct ipu *ipu, u32 value, unsigned long reg) in __idmac_write_icreg() argument
52 __raw_writel(value, ipu->reg_ic + reg); in __idmac_write_icreg()
55 #define idmac_write_icreg(ipu, v, reg) __idmac_write_icreg(ipu, v, reg - IC_CONF) argument
[all …]
/kernel/linux/linux-4.19/include/video/
Dimx-ipu-v3.h64 * Enumeration of IPU rotation modes
119 * NOTE: channels 6,7 are unused in the IPU and are not IDMAC channels,
186 int ipu_map_irq(struct ipu_soc *ipu, int irq);
187 int ipu_idmac_channel_irq(struct ipu_soc *ipu, struct ipuv3_channel *channel,
203 * IPU Common functions
205 int ipu_get_num(struct ipu_soc *ipu);
206 void ipu_set_csi_src_mux(struct ipu_soc *ipu, int csi_id, bool mipi_csi2);
207 void ipu_set_ic_src_mux(struct ipu_soc *ipu, int csi_id, bool vdi);
208 void ipu_dump(struct ipu_soc *ipu);
211 * IPU Image DMA Controller (idmac) functions
[all …]
Dimx-ipu-image-convert.h19 #include <video/imx-ipu-v3.h>
66 * ipu_image_convert_adjust() - adjust input/output images to IPU restrictions.
79 * and rotation mode meet IPU restrictions.
85 * Returns 0 if the formats and rotation mode meet IPU restrictions,
94 * @ipu: the IPU handle to use for the conversions
104 * IPU retrictions.
109 ipu_image_convert_prepare(struct ipu_soc *ipu, enum ipu_ic_task ic_task,
164 * @ipu: the IPU handle to use for the conversion
175 * mode must already meet IPU retrictions.
182 ipu_image_convert(struct ipu_soc *ipu, enum ipu_ic_task ic_task,
[all …]
/kernel/linux/linux-5.10/include/video/
Dimx-ipu-v3.h64 * Enumeration of IPU rotation modes
119 * NOTE: channels 6,7 are unused in the IPU and are not IDMAC channels,
186 int ipu_map_irq(struct ipu_soc *ipu, int irq);
187 int ipu_idmac_channel_irq(struct ipu_soc *ipu, struct ipuv3_channel *channel,
203 * IPU Common functions
205 int ipu_get_num(struct ipu_soc *ipu);
206 void ipu_set_csi_src_mux(struct ipu_soc *ipu, int csi_id, bool mipi_csi2);
207 void ipu_set_ic_src_mux(struct ipu_soc *ipu, int csi_id, bool vdi);
208 void ipu_dump(struct ipu_soc *ipu);
211 * IPU Image DMA Controller (idmac) functions
[all …]
Dimx-ipu-image-convert.h10 #include <video/imx-ipu-v3.h>
57 * ipu_image_convert_adjust() - adjust input/output images to IPU restrictions.
70 * and rotation mode meet IPU restrictions.
76 * Returns 0 if the formats and rotation mode meet IPU restrictions,
85 * @ipu: the IPU handle to use for the conversions
95 * IPU retrictions.
100 ipu_image_convert_prepare(struct ipu_soc *ipu, enum ipu_ic_task ic_task,
155 * @ipu: the IPU handle to use for the conversion
166 * mode must already meet IPU retrictions.
173 ipu_image_convert(struct ipu_soc *ipu, enum ipu_ic_task ic_task,
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/display/
Dingenic,ipu.yaml4 $id: http://devicetree.org/schemas/display/ingenic,ipu.yaml#
7 title: Ingenic SoCs Image Processing Unit (IPU) devicetree bindings
16 - ingenic,jz4725b-ipu
17 - ingenic,jz4760-ipu
19 - const: ingenic,jz4770-ipu
20 - const: ingenic,jz4760-ipu
32 const: ipu
50 ipu@13080000 {
51 compatible = "ingenic,jz4770-ipu", "ingenic,jz4760-ipu";
58 clock-names = "ipu";
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/remoteproc/
Dti,omap-remoteproc.yaml21 The OMAP SoCs usually have a DSP processor sub-system and/or an IPU processor
23 C66x or C67x family of DSP cores as the main execution unit. The IPU processor
45 - ti,omap4-ipu
46 - ti,omap5-ipu
47 - ti,dra7-ipu
105 'reg-names'. These are mandatory for all DSP and IPU
186 - ti,omap4-ipu
187 - ti,omap5-ipu
188 - ti,dra7-ipu
251 //Example 2: OMAP5 IPU
[all …]

123456789