drm/rockchip: Add support for vop2
Signed-off-by: Andy Yan <andy.yan@rock-chips.com> Signed-off-by: Sandy Huang <hjc@rock-chips.com> Change-Id: I52af209b3a9b85692d0589e1653160d284f4ba9c
This commit is contained in:
parent
cdb300bd81
commit
d040854345
|
|
@ -5,7 +5,7 @@
|
|||
#
|
||||
|
||||
obj-y += rockchip_display.o rockchip_crtc.o rockchip_phy.o rockchip_bridge.o \
|
||||
rockchip_vop.o rockchip_vop_reg.o bmp_helper.o
|
||||
rockchip_vop.o rockchip_vop_reg.o rockchip_vop2.o bmp_helper.o
|
||||
|
||||
obj-$(CONFIG_DRM_MIPI_DSI) += drm_mipi_dsi.o
|
||||
obj-$(CONFIG_DRM_ROCKCHIP_DW_MIPI_DSI) += dw_mipi_dsi.o
|
||||
|
|
|
|||
|
|
@ -92,6 +92,11 @@ static const struct rockchip_crtc rk3328_vop_data = {
|
|||
.data = &rk3328_vop,
|
||||
};
|
||||
|
||||
static const struct rockchip_crtc rk3568_vop_data = {
|
||||
.funcs = &rockchip_vop2_funcs,
|
||||
.data = &rk3568_vop,
|
||||
};
|
||||
|
||||
static const struct udevice_id rockchip_vop_ids[] = {
|
||||
{
|
||||
.compatible = "rockchip,rk3036-vop",
|
||||
|
|
@ -141,6 +146,9 @@ static const struct udevice_id rockchip_vop_ids[] = {
|
|||
}, {
|
||||
.compatible = "rockchip,rk3328-vop",
|
||||
.data = (ulong)&rk3328_vop_data,
|
||||
}, {
|
||||
.compatible = "rockchip,rk3568-vop",
|
||||
.data = (ulong)&rk3568_vop_data,
|
||||
}, { }
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -29,7 +29,9 @@ struct rockchip_crtc_funcs {
|
|||
};
|
||||
|
||||
struct vop_data;
|
||||
struct vop2_data;
|
||||
extern const struct rockchip_crtc_funcs rockchip_vop_funcs;
|
||||
extern const struct rockchip_crtc_funcs rockchip_vop2_funcs;
|
||||
extern const struct vop_data rk3036_vop;
|
||||
extern const struct vop_data px30_vop_lit;
|
||||
extern const struct vop_data px30_vop_big;
|
||||
|
|
@ -45,4 +47,5 @@ extern const struct vop_data rk322x_vop;
|
|||
extern const struct vop_data rk3328_vop;
|
||||
extern const struct vop_data rv1108_vop;
|
||||
extern const struct vop_data rv1126_vop;
|
||||
extern const struct vop2_data rk3568_vop;
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -15,6 +15,10 @@
|
|||
#define ROCKCHIP_OUTPUT_DSI_DUAL_CHANNEL BIT(0)
|
||||
#define ROCKCHIP_OUTPUT_DSI_DUAL_LINK BIT(1)
|
||||
|
||||
#define ROCKCHIP_OUTPUT_DUAL_CHANNEL_LEFT_RIGHT_MODE BIT(0)
|
||||
#define ROCKCHIP_OUTPUT_DUAL_CHANNEL_ODD_EVEN_MODE BIT(1)
|
||||
#define ROCKCHIP_OUTPUT_DATA_SWAP BIT(2)
|
||||
|
||||
enum data_format {
|
||||
ROCKCHIP_FMT_ARGB8888 = 0,
|
||||
ROCKCHIP_FMT_RGB888,
|
||||
|
|
@ -53,6 +57,20 @@ enum rockchip_mcu_cmd {
|
|||
/* for use special outface */
|
||||
#define ROCKCHIP_OUT_MODE_AAAA 15
|
||||
|
||||
#define VOP_OUTPUT_IF_RGB BIT(0)
|
||||
#define VOP_OUTPUT_IF_BT1120 BIT(1)
|
||||
#define VOP_OUTPUT_IF_BT656 BIT(2)
|
||||
#define VOP_OUTPUT_IF_LVDS0 BIT(3)
|
||||
#define VOP_OUTPUT_IF_LVDS1 BIT(4)
|
||||
#define VOP_OUTPUT_IF_MIPI0 BIT(5)
|
||||
#define VOP_OUTPUT_IF_MIPI1 BIT(6)
|
||||
#define VOP_OUTPUT_IF_eDP0 BIT(7)
|
||||
#define VOP_OUTPUT_IF_eDP1 BIT(8)
|
||||
#define VOP_OUTPUT_IF_DP0 BIT(9)
|
||||
#define VOP_OUTPUT_IF_DP1 BIT(10)
|
||||
#define VOP_OUTPUT_IF_HDMI0 BIT(11)
|
||||
#define VOP_OUTPUT_IF_HDMI1 BIT(12)
|
||||
|
||||
struct rockchip_mcu_timing {
|
||||
int mcu_pix_total;
|
||||
int mcu_cs_pst;
|
||||
|
|
@ -122,6 +140,8 @@ struct connector_state {
|
|||
int output_mode;
|
||||
int type;
|
||||
int output_type;
|
||||
int output_if;
|
||||
int output_flags;
|
||||
int color_space;
|
||||
unsigned int bpc;
|
||||
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue