video: rockchip: mpp: rkvenc2: add rkv version 2 encoder codes

tips:
1. this driver supports one or multi-core device.
2. the multi-core method is the same as vepu2.
   'commit 88fa5fa5675b ("video: rockchip: mpp: vepu: add ccu for
    multi-core device")'

Change-Id: Iee54b7d5c24104e64e66fcc684b83665c61e6b58
Signed-off-by: Ding Wei <leo.ding@rock-chips.com>
This commit is contained in:
Ding Wei
2021-11-10 08:50:07 +08:00
parent c9f15264b9
commit d592dbfafe
6 changed files with 1276 additions and 1 deletions

View File

@@ -30,6 +30,11 @@ config ROCKCHIP_MPP_RKVENC
help
rockchip mpp rkv combo encoder.
config ROCKCHIP_MPP_RKVENC2
bool "RKV encoder v2 device driver"
help
rockchip mpp rkv combo encoder v2.
config ROCKCHIP_MPP_VDPU1
bool "VPU decoder v1 device driver"
help

View File

@@ -14,6 +14,7 @@ CFLAGS_mpp_service.o += -DMPP_VERSION="\"$(MPP_REVISION)\""
rk_vcodec-$(CONFIG_ROCKCHIP_MPP_RKVDEC) += mpp_rkvdec.o
rk_vcodec-$(CONFIG_ROCKCHIP_MPP_RKVDEC2) += mpp_rkvdec2.o mpp_rkvdec2_link.o
rk_vcodec-$(CONFIG_ROCKCHIP_MPP_RKVENC) += mpp_rkvenc.o
rk_vcodec-$(CONFIG_ROCKCHIP_MPP_RKVENC2) += mpp_rkvenc2.o
rk_vcodec-$(CONFIG_ROCKCHIP_MPP_VDPU1) += mpp_vdpu1.o
rk_vcodec-$(CONFIG_ROCKCHIP_MPP_VEPU1) += mpp_vepu1.o
rk_vcodec-$(CONFIG_ROCKCHIP_MPP_VDPU2) += mpp_vdpu2.o

View File

@@ -78,6 +78,7 @@ enum MPP_DRIVER_TYPE {
MPP_DRIVER_IEP2,
MPP_DRIVER_JPGDEC,
MPP_DRIVER_RKVDEC2,
MPP_DRIVER_RKVENC2,
MPP_DRIVER_BUTT,
};
@@ -765,5 +766,6 @@ extern struct platform_driver rockchip_vepu22_driver;
extern struct platform_driver rockchip_iep2_driver;
extern struct platform_driver rockchip_jpgdec_driver;
extern struct platform_driver rockchip_rkvdec2_driver;
extern struct platform_driver rockchip_rkvenc2_driver;
#endif

View File

@@ -494,7 +494,6 @@ static int rkvenc_irq(struct mpp_dev *mpp)
mpp_write(mpp, RKVENC_INT_MSK_BASE, 0x100);
mpp_write(mpp, RKVENC_INT_CLR_BASE, 0xffffffff);
udelay(5);
mpp_write(mpp, RKVENC_INT_STATUS_BASE, 0);
mpp_debug_leave();

File diff suppressed because it is too large Load Diff

View File

@@ -360,6 +360,7 @@ static int mpp_service_probe(struct platform_device *pdev)
MPP_REGISTER_DRIVER(srv, IEP2, iep2);
MPP_REGISTER_DRIVER(srv, JPGDEC, jpgdec);
MPP_REGISTER_DRIVER(srv, RKVDEC2, rkvdec2);
MPP_REGISTER_DRIVER(srv, RKVENC2, rkvenc2);
dev_info(dev, "probe success\n");