mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-05 10:31:46 +09:00
drm/rockchip: vop2: add more color bar mode support
Color bar mode usage instructions:
Enable horizontal color bar:
echo 1 > /sys/kernel/debug/dri/0/video_port0/color_bar
Enable vertical color bar:
echo 2 > /sys/kernel/debug/dri/0/video_port0/color_bar
Enable horizontal color gradient:
echo 3 > /sys/kernel/debug/dri/0/video_port0/color_bar
Enable vertical color gradient:
echo 4 > /sys/kernel/debug/dri/0/video_port0/color_bar
Enable mutant color:
echo 5 > /sys/kernel/debug/dri/0/video_port0/color_bar
Enable fix black color:
echo 6 > /sys/kernel/debug/dri/0/video_port0/color_bar
Enable fix white color:
echo 7 > /sys/kernel/debug/dri/0/video_port0/color_bar
Disable color bar:
echo 0 > /sys/kernel/debug/dri/0/video_port0/color_bar
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I5b1c5b2daf90a009bef4a645bd7ba62503356ddf
This commit is contained in:
@@ -226,6 +226,16 @@ static int rockchip_drm_debugfs_color_bar_show(struct seq_file *s, void *data)
|
||||
seq_puts(s, " echo 1 > /sys/kernel/debug/dri/0/video_port0/color_bar\n");
|
||||
seq_puts(s, " Enable vertical color bar:\n");
|
||||
seq_puts(s, " echo 2 > /sys/kernel/debug/dri/0/video_port0/color_bar\n");
|
||||
seq_puts(s, " Enable horizontal color gradient:\n");
|
||||
seq_puts(s, " echo 3 > /sys/kernel/debug/dri/0/video_port0/color_bar\n");
|
||||
seq_puts(s, " Enable vertical color gradient:\n");
|
||||
seq_puts(s, " echo 4 > /sys/kernel/debug/dri/0/video_port0/color_bar\n");
|
||||
seq_puts(s, " Enable mutant color:\n");
|
||||
seq_puts(s, " echo 5 > /sys/kernel/debug/dri/0/video_port0/color_bar\n");
|
||||
seq_puts(s, " Enable fix black color:\n");
|
||||
seq_puts(s, " echo 6 > /sys/kernel/debug/dri/0/video_port0/color_bar\n");
|
||||
seq_puts(s, " Enable fix white color:\n");
|
||||
seq_puts(s, " echo 7 > /sys/kernel/debug/dri/0/video_port0/color_bar\n");
|
||||
seq_puts(s, " Disable color bar:\n");
|
||||
seq_puts(s, " echo 0 > /sys/kernel/debug/dri/0/video_port0/color_bar\n");
|
||||
|
||||
|
||||
@@ -119,6 +119,11 @@ enum rockchip_color_bar_mode {
|
||||
ROCKCHIP_COLOR_BAR_OFF = 0,
|
||||
ROCKCHIP_COLOR_BAR_HORIZONTAL = 1,
|
||||
ROCKCHIP_COLOR_BAR_VERTICAL = 2,
|
||||
ROCKCHIP_COLOR_BAR_HORIZONTAL_COLOR_GRADIENT = 3,
|
||||
ROCKCHIP_COLOR_BAR_VERTICAL_COLOR_GRADIENT = 4,
|
||||
ROCKCHIP_COLOR_BAR_MUTANT = 5,
|
||||
ROCKCHIP_COLOR_BAR_FIX0 = 6,
|
||||
ROCKCHIP_COLOR_BAR_FIX1 = 7,
|
||||
};
|
||||
|
||||
enum rockchip_drm_split_area {
|
||||
|
||||
@@ -9030,6 +9030,36 @@ static int vop2_crtc_set_color_bar(struct drm_crtc *crtc, enum rockchip_color_ba
|
||||
VOP_MODULE_SET(vop2, vp, color_bar_en, 1);
|
||||
vop2_cfg_done(crtc);
|
||||
break;
|
||||
case ROCKCHIP_COLOR_BAR_HORIZONTAL_COLOR_GRADIENT:
|
||||
DRM_INFO("enable horizontal color gradient in VP%d\n", vp->id);
|
||||
VOP_MODULE_SET(vop2, vp, color_bar_mode, 2);
|
||||
VOP_MODULE_SET(vop2, vp, color_bar_en, 1);
|
||||
vop2_cfg_done(crtc);
|
||||
break;
|
||||
case ROCKCHIP_COLOR_BAR_VERTICAL_COLOR_GRADIENT:
|
||||
DRM_INFO("enable vertical color gradient in VP%d\n", vp->id);
|
||||
VOP_MODULE_SET(vop2, vp, color_bar_mode, 3);
|
||||
VOP_MODULE_SET(vop2, vp, color_bar_en, 1);
|
||||
vop2_cfg_done(crtc);
|
||||
break;
|
||||
case ROCKCHIP_COLOR_BAR_MUTANT:
|
||||
DRM_INFO("enable mutant color in VP%d\n", vp->id);
|
||||
VOP_MODULE_SET(vop2, vp, color_bar_mode, 4);
|
||||
VOP_MODULE_SET(vop2, vp, color_bar_en, 1);
|
||||
vop2_cfg_done(crtc);
|
||||
break;
|
||||
case ROCKCHIP_COLOR_BAR_FIX0:
|
||||
DRM_INFO("enable fix black color in VP%d\n", vp->id);
|
||||
VOP_MODULE_SET(vop2, vp, color_bar_mode, 5);
|
||||
VOP_MODULE_SET(vop2, vp, color_bar_en, 1);
|
||||
vop2_cfg_done(crtc);
|
||||
break;
|
||||
case ROCKCHIP_COLOR_BAR_FIX1:
|
||||
DRM_INFO("enable fix white color in VP%d\n", vp->id);
|
||||
VOP_MODULE_SET(vop2, vp, color_bar_mode, 6);
|
||||
VOP_MODULE_SET(vop2, vp, color_bar_en, 1);
|
||||
vop2_cfg_done(crtc);
|
||||
break;
|
||||
default:
|
||||
DRM_INFO("Unsupported color bar mode\n");
|
||||
ret = -EINVAL;
|
||||
|
||||
Reference in New Issue
Block a user