diff mbox series

[29/36] drm/ingenic: use bpp instead of cpp for drm_format_info

Message ID 1569243189-183445-4-git-send-email-hjc@rock-chips.com (mailing list archive)
State New, archived
Headers show
Series [01/36] drm/fourcc: Add 2 plane YCbCr 10bit format support | expand

Commit Message

黄家钗 Sept. 23, 2019, 12:53 p.m. UTC
cpp[BytePerPlane] can't describe the 10bit data format correctly,
So we use bpp[BitPerPlane] to instead cpp.

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
---
 drivers/gpu/drm/ingenic/ingenic-drm.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Paul Cercueil Sept. 25, 2019, 2:50 p.m. UTC | #1
Hi Sandy,


Le lun. 23 sept. 2019 à 14:53, Sandy Huang <hjc@rock-chips.com> a 
écrit :
> cpp[BytePerPlane] can't describe the 10bit data format correctly,
> So we use bpp[BitPerPlane] to instead cpp.
> 
> Signed-off-by: Sandy Huang <hjc@rock-chips.com>
> ---
>  drivers/gpu/drm/ingenic/ingenic-drm.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/ingenic/ingenic-drm.c 
> b/drivers/gpu/drm/ingenic/ingenic-drm.c
> index ec32e1c..70ccec5 100644
> --- a/drivers/gpu/drm/ingenic/ingenic-drm.c
> +++ b/drivers/gpu/drm/ingenic/ingenic-drm.c
> @@ -375,7 +375,7 @@ static void 
> ingenic_drm_plane_atomic_update(struct drm_plane *plane,
> 
>  	width = state->crtc->state->adjusted_mode.hdisplay;
>  	height = state->crtc->state->adjusted_mode.vdisplay;
> -	cpp = state->fb->format->cpp[plane->index];
> +	cpp = state->fb->format->bpp[plane->index] / 8;

That wouldn't work with 15-bit rgb555...


> 
>  	priv->dma_hwdesc->addr = drm_fb_cma_get_gem_addr(state->fb, state, 
> 0);
>  	priv->dma_hwdesc->cmd = width * height * cpp / 4;
> --
> 2.7.4
> 
> 
>
diff mbox series

Patch

diff --git a/drivers/gpu/drm/ingenic/ingenic-drm.c b/drivers/gpu/drm/ingenic/ingenic-drm.c
index ec32e1c..70ccec5 100644
--- a/drivers/gpu/drm/ingenic/ingenic-drm.c
+++ b/drivers/gpu/drm/ingenic/ingenic-drm.c
@@ -375,7 +375,7 @@  static void ingenic_drm_plane_atomic_update(struct drm_plane *plane,
 
 	width = state->crtc->state->adjusted_mode.hdisplay;
 	height = state->crtc->state->adjusted_mode.vdisplay;
-	cpp = state->fb->format->cpp[plane->index];
+	cpp = state->fb->format->bpp[plane->index] / 8;
 
 	priv->dma_hwdesc->addr = drm_fb_cma_get_gem_addr(state->fb, state, 0);
 	priv->dma_hwdesc->cmd = width * height * cpp / 4;