Symbol: ipu_plane
drivers/gpu/drm/imx/ipuv3/ipuv3-crtc.c
185
struct ipu_plane *plane = ipu_crtc->plane[i];
drivers/gpu/drm/imx/ipuv3/ipuv3-crtc.c
36
struct ipu_plane *plane[2];
drivers/gpu/drm/imx/ipuv3/ipuv3-crtc.c
369
struct ipu_plane *primary_plane;
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
119
int ipu_plane_irq(struct ipu_plane *ipu_plane)
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
121
return ipu_idmac_channel_irq(ipu_plane->ipu, ipu_plane->ipu_ch,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
180
struct ipu_plane *ipu_plane = ptr;
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
182
if (!IS_ERR_OR_NULL(ipu_plane->dp))
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
183
ipu_dp_put(ipu_plane->dp);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
184
if (!IS_ERR_OR_NULL(ipu_plane->dmfc))
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
185
ipu_dmfc_put(ipu_plane->dmfc);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
186
if (!IS_ERR_OR_NULL(ipu_plane->ipu_ch))
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
187
ipu_idmac_put(ipu_plane->ipu_ch);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
188
if (!IS_ERR_OR_NULL(ipu_plane->alpha_ch))
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
189
ipu_idmac_put(ipu_plane->alpha_ch);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
193
struct ipu_plane *ipu_plane)
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
198
ipu_plane->ipu_ch = ipu_idmac_get(ipu_plane->ipu, ipu_plane->dma);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
199
if (IS_ERR(ipu_plane->ipu_ch)) {
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
200
ret = PTR_ERR(ipu_plane->ipu_ch);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
205
ret = drmm_add_action_or_reset(dev, ipu_plane_put_resources, ipu_plane);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
209
alpha_ch = ipu_channel_alpha_channel(ipu_plane->dma);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
211
ipu_plane->alpha_ch = ipu_idmac_get(ipu_plane->ipu, alpha_ch);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
212
if (IS_ERR(ipu_plane->alpha_ch)) {
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
213
ret = PTR_ERR(ipu_plane->alpha_ch);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
220
ipu_plane->dmfc = ipu_dmfc_get(ipu_plane->ipu, ipu_plane->dma);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
221
if (IS_ERR(ipu_plane->dmfc)) {
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
222
ret = PTR_ERR(ipu_plane->dmfc);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
227
if (ipu_plane->dp_flow >= 0) {
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
228
ipu_plane->dp = ipu_dp_get(ipu_plane->ipu, ipu_plane->dp_flow);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
229
if (IS_ERR(ipu_plane->dp)) {
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
230
ret = PTR_ERR(ipu_plane->dp);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
239
static bool ipu_plane_separate_alpha(struct ipu_plane *ipu_plane)
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
241
switch (ipu_plane->base.state->fb->format->format) {
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
254
static void ipu_plane_enable(struct ipu_plane *ipu_plane)
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
256
if (ipu_plane->dp)
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
257
ipu_dp_enable(ipu_plane->ipu);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
258
ipu_dmfc_enable_channel(ipu_plane->dmfc);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
259
ipu_idmac_enable_channel(ipu_plane->ipu_ch);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
260
if (ipu_plane_separate_alpha(ipu_plane))
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
261
ipu_idmac_enable_channel(ipu_plane->alpha_ch);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
262
if (ipu_plane->dp)
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
263
ipu_dp_enable_channel(ipu_plane->dp);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
266
void ipu_plane_disable(struct ipu_plane *ipu_plane, bool disable_dp_channel)
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
272
ret = ipu_idmac_wait_busy(ipu_plane->ipu_ch, 50);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
275
ipu_plane->base.base.id);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
278
if (ipu_plane->dp && disable_dp_channel)
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
279
ipu_dp_disable_channel(ipu_plane->dp, false);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
280
ipu_idmac_disable_channel(ipu_plane->ipu_ch);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
281
if (ipu_plane->alpha_ch)
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
282
ipu_idmac_disable_channel(ipu_plane->alpha_ch);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
283
ipu_dmfc_disable_channel(ipu_plane->dmfc);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
284
if (ipu_plane->dp)
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
285
ipu_dp_disable(ipu_plane->ipu);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
286
if (ipu_prg_present(ipu_plane->ipu))
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
287
ipu_prg_channel_disable(ipu_plane->ipu_ch);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
292
struct ipu_plane *ipu_plane = to_ipu_plane(plane);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
294
if (ipu_plane->disabling) {
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
295
ipu_plane->disabling = false;
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
296
ipu_plane_disable(ipu_plane, false);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
40
static inline struct ipu_plane *to_ipu_plane(struct drm_plane *p)
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
42
return container_of(p, struct ipu_plane, base);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
532
struct ipu_plane *ipu_plane = to_ipu_plane(plane);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
534
if (ipu_plane->dp)
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
535
ipu_dp_disable_channel(ipu_plane->dp, true);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
536
ipu_plane->disabling = true;
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
579
struct ipu_plane *ipu_plane = to_ipu_plane(plane);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
595
if (ipu_plane->dp_flow == IPU_DP_FLOW_SYNC_FG)
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
596
ipu_dp_set_window_pos(ipu_plane->dp, dst->x1, dst->y1);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
598
switch (ipu_plane->dp_flow) {
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
601
ipu_dp_set_global_alpha(ipu_plane->dp,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
605
ipu_dp_set_global_alpha(ipu_plane->dp, true, 0, true);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
610
ipu_dp_set_global_alpha(ipu_plane->dp,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
617
if (ipu_plane->dp_flow == IPU_DP_FLOW_SYNC_BG)
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
630
axi_id = ipu_chan_assign_axi_id(ipu_plane->dma);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
631
ipu_prg_channel_configure(ipu_plane->ipu_ch, axi_id, width,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
642
switch (ipu_plane->dp_flow) {
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
644
ipu_dp_setup_channel(ipu_plane->dp, new_state->color_encoding,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
649
ipu_dp_setup_channel(ipu_plane->dp, new_state->color_encoding,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
660
active = ipu_idmac_get_current_buffer(ipu_plane->ipu_ch);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
661
ipu_cpmem_set_buffer(ipu_plane->ipu_ch, !active, eba);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
662
ipu_idmac_select_buffer(ipu_plane->ipu_ch, !active);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
663
if (ipu_plane_separate_alpha(ipu_plane)) {
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
664
active = ipu_idmac_get_current_buffer(ipu_plane->alpha_ch);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
665
ipu_cpmem_set_buffer(ipu_plane->alpha_ch, !active,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
667
ipu_idmac_select_buffer(ipu_plane->alpha_ch, !active);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
673
switch (ipu_plane->dp_flow) {
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
675
ipu_dp_setup_channel(ipu_plane->dp, DRM_COLOR_YCBCR_BT601,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
680
ipu_dp_setup_channel(ipu_plane->dp, DRM_COLOR_YCBCR_BT601,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
686
ipu_dmfc_config_wait4eot(ipu_plane->dmfc, width);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
692
ipu_cpmem_zero(ipu_plane->ipu_ch);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
693
ipu_cpmem_set_resolution(ipu_plane->ipu_ch, width, height);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
694
ipu_cpmem_set_fmt(ipu_plane->ipu_ch, fb->format->format);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
695
ipu_cpmem_set_burstsize(ipu_plane->ipu_ch, burstsize);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
696
ipu_cpmem_set_high_priority(ipu_plane->ipu_ch);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
697
ipu_idmac_enable_watermark(ipu_plane->ipu_ch, true);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
698
ipu_idmac_set_double_buffer(ipu_plane->ipu_ch, 1);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
699
ipu_cpmem_set_stride(ipu_plane->ipu_ch, fb->pitches[0]);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
700
ipu_cpmem_set_axi_id(ipu_plane->ipu_ch, axi_id);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
716
ipu_cpmem_set_yuv_planar_full(ipu_plane->ipu_ch,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
719
dev_dbg(ipu_plane->base.dev->dev,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
727
ipu_cpmem_set_yuv_planar_full(ipu_plane->ipu_ch,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
730
dev_dbg(ipu_plane->base.dev->dev,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
743
dev_dbg(ipu_plane->base.dev->dev, "phys = %lu %lu, x = %d, y = %d",
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
747
ipu_cpmem_set_burstsize(ipu_plane->ipu_ch, 16);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
749
ipu_cpmem_zero(ipu_plane->alpha_ch);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
750
ipu_cpmem_set_resolution(ipu_plane->alpha_ch, width, height);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
751
ipu_cpmem_set_format_passthrough(ipu_plane->alpha_ch, 8);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
752
ipu_cpmem_set_high_priority(ipu_plane->alpha_ch);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
753
ipu_idmac_set_double_buffer(ipu_plane->alpha_ch, 1);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
754
ipu_cpmem_set_stride(ipu_plane->alpha_ch, fb->pitches[1]);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
755
ipu_cpmem_set_burstsize(ipu_plane->alpha_ch, 16);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
756
ipu_cpmem_set_buffer(ipu_plane->alpha_ch, 0, alpha_eba);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
757
ipu_cpmem_set_buffer(ipu_plane->alpha_ch, 1, alpha_eba);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
760
dev_dbg(ipu_plane->base.dev->dev, "phys = %lu, x = %d, y = %d",
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
764
ipu_cpmem_set_buffer(ipu_plane->ipu_ch, 0, eba);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
765
ipu_cpmem_set_buffer(ipu_plane->ipu_ch, 1, eba);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
766
ipu_idmac_lock_enable(ipu_plane->ipu_ch, num_bursts);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
767
ipu_plane_enable(ipu_plane);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
785
struct ipu_plane *ipu_plane = to_ipu_plane(plane);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
794
return ipu_prg_channel_configure_pending(ipu_plane->ipu_ch);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
812
struct ipu_plane *ipu_plane;
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
834
ipu_plane = to_ipu_plane(plane);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
845
if (!ipu_prg_present(ipu_plane->ipu) || !available_pres)
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
848
if (!ipu_prg_format_supported(ipu_plane->ipu,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
859
ipu_plane = to_ipu_plane(plane);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
873
if (ipu_prg_present(ipu_plane->ipu) && available_pres &&
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
874
ipu_prg_format_supported(ipu_plane->ipu,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
887
struct ipu_plane *ipu_plane_init(struct drm_device *dev, struct ipu_soc *ipu,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
891
struct ipu_plane *ipu_plane;
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
912
ipu_plane = drmm_universal_plane_alloc(dev, struct ipu_plane, base,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
916
if (IS_ERR(ipu_plane)) {
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
919
return ipu_plane;
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
922
ipu_plane->ipu = ipu;
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
923
ipu_plane->dma = dma;
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
924
ipu_plane->dp_flow = dp;
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
927
drm_plane_helper_add(&ipu_plane->base, &ipu_primary_plane_helper_funcs);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
929
drm_plane_helper_add(&ipu_plane->base, &ipu_plane_helper_funcs);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
932
ret = drm_plane_create_zpos_property(&ipu_plane->base, zpos, 0,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
935
ret = drm_plane_create_zpos_immutable_property(&ipu_plane->base,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
940
ret = drm_plane_create_color_properties(&ipu_plane->base,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
949
ret = ipu_plane_get_resources(dev, ipu_plane);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.c
956
return ipu_plane;
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.h
32
struct ipu_plane *ipu_plane_init(struct drm_device *dev, struct ipu_soc *ipu,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.h
37
int ipu_plane_mode_set(struct ipu_plane *plane, struct drm_crtc *crtc,
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.h
44
int ipu_plane_irq(struct ipu_plane *plane);
drivers/gpu/drm/imx/ipuv3/ipuv3-plane.h
46
void ipu_plane_disable(struct ipu_plane *ipu_plane, bool disable_dp_channel);
drivers/gpu/drm/ingenic/ingenic-drm-drv.c
1267
priv->ipu_plane = drm_plane_from_index(drm, 2);
drivers/gpu/drm/ingenic/ingenic-drm-drv.c
1268
if (!priv->ipu_plane) {
drivers/gpu/drm/ingenic/ingenic-drm-drv.c
367
if (IS_ENABLED(CONFIG_DRM_INGENIC_IPU) && priv->ipu_plane) {
drivers/gpu/drm/ingenic/ingenic-drm-drv.c
369
priv->ipu_plane);
drivers/gpu/drm/ingenic/ingenic-drm-drv.c
420
if (priv->ipu_plane && priv->ipu_plane->state->fb)
drivers/gpu/drm/ingenic/ingenic-drm-drv.c
91
struct drm_plane f0, f1, *ipu_plane;