Commit e860785d authored by Neil Armstrong's avatar Neil Armstrong

drm/meson: overlay: setup overlay for Amlogic FBC

Setup the Amlogic FBC decoder for the VD1 video overlay plane.

The VD1 Amlogic FBC decoder is integrated in the pipeline like the
YUV pixel reading/formatter but used a direct memory address instead.

This adds support for the basic layout, and needs to calculate the content
body size since the header is allocated after.
Signed-off-by: default avatarNeil Armstrong <narmstrong@baylibre.com>
Tested-by: default avatarKevin Hilman <khilman@baylibre.com>
Reviewed-by: default avatarKevin Hilman <khilman@baylibre.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200703080728.25207-4-narmstrong@baylibre.com
parent 1d4eff87
...@@ -86,6 +86,7 @@ struct meson_drm { ...@@ -86,6 +86,7 @@ struct meson_drm {
bool vd1_enabled; bool vd1_enabled;
bool vd1_commit; bool vd1_commit;
bool vd1_afbc;
unsigned int vd1_planes; unsigned int vd1_planes;
uint32_t vd1_if0_gen_reg; uint32_t vd1_if0_gen_reg;
uint32_t vd1_if0_luma_x0; uint32_t vd1_if0_luma_x0;
...@@ -111,6 +112,21 @@ struct meson_drm { ...@@ -111,6 +112,21 @@ struct meson_drm {
uint32_t vd1_height0; uint32_t vd1_height0;
uint32_t vd1_height1; uint32_t vd1_height1;
uint32_t vd1_height2; uint32_t vd1_height2;
uint32_t vd1_afbc_mode;
uint32_t vd1_afbc_en;
uint32_t vd1_afbc_head_addr;
uint32_t vd1_afbc_body_addr;
uint32_t vd1_afbc_conv_ctrl;
uint32_t vd1_afbc_dec_def_color;
uint32_t vd1_afbc_vd_cfmt_ctrl;
uint32_t vd1_afbc_vd_cfmt_w;
uint32_t vd1_afbc_vd_cfmt_h;
uint32_t vd1_afbc_mif_hor_scope;
uint32_t vd1_afbc_mif_ver_scope;
uint32_t vd1_afbc_size_out;
uint32_t vd1_afbc_pixel_hor_scope;
uint32_t vd1_afbc_pixel_ver_scope;
uint32_t vd1_afbc_size_in;
uint32_t vpp_pic_in_height; uint32_t vpp_pic_in_height;
uint32_t vpp_postblend_vd1_h_start_end; uint32_t vpp_postblend_vd1_h_start_end;
uint32_t vpp_postblend_vd1_v_start_end; uint32_t vpp_postblend_vd1_v_start_end;
......
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment