Commit Graph

34 Commits

Author SHA1 Message Date
Johnson Ding
45f2fcbcf0 fix[osal]: rv1109/rv1126 vcodec_type mismatch problem
RV1126/RV1109 JPEG decoder has no PP. This will be conflict with
vcodec_type queried from kernel. Also VPU_CLIENT_VEPU2_JPEG is defined
and used only for multi-core JPEG encoder at kernel. So the following
changes is made to fix this problem:

1. This reverts commit 9b860cd250.
2. Define a new MppDecHwCap to distinguish normal VPU with only JPEG
   supported from multi-core JPEG encoder.
3. Correct vcodec_type queried from kernel when there is no PP for
   VDPU2.

Change-Id: I58a1abe708721f725a9cf487e8f870dd5820844f
Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
2024-06-06 18:07:06 +08:00
Johnson Ding
ccf8f46e78 refactor[dec]: get deocder capability via common routine
Change-Id: I9700a2418653a6d5a9a00b4c4c13f33022d2159b
Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
2024-05-10 15:57:47 +08:00
Yanjun Liao
3cbb906673 feat[mpp_soc]: support rk3576 soc
Change-Id: I49bd3ccbc643b3c95db5ba3ca692f365c9425440
Signed-off-by: Yanjun Liao <yanjun.liao@rock-chips.com>
Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
2024-02-20 09:45:25 +08:00
Chen Jinsen
4b45330c50 [mpp_soc]: Add rk3567 soc support
Change-Id: I6d02f021544a9ba4d7ff96e5aad47f5fe1f87fb3
Signed-off-by: Chen Jinsen <kevin.chen@rock-chips.com>
2023-10-13 09:30:04 +08:00
Yandong Lin
6ac268dfea fix[mpp_soc]: fix rk356x vepu2 capability
Not support vp8 enc

Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I6080b5377a0c3615d922bb6ddcc677a736cb2b10
2023-08-03 10:29:14 +08:00
Chandler Chen
4fe51a6c29 feat: Add rk3528a support
Signed-off-by: Chandler Chen <chandler.chen@rock-chips.com>
Change-Id: Iff9f9f11bcda78476f8753c5f7c922953c243b25
2023-07-28 17:31:09 +08:00
Yandong Lin
8bbb9045c3 [mpp_soc]: fix enc cap for rk3562
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I9166ae8288c1c7d4fb4c691779b5a37bcd87318e
2023-03-24 14:54:28 +08:00
Chandler Chen
4c14bb1556 [mpp_soc] dec hw_cap add cap_colmv_compress
Signed-off-by: Chandler Chen <chandler.chen@rock-chips.com>
Change-Id: I13b98c5227f03a235c48cfdb639286e7ee595b3f
2023-01-13 14:20:00 +08:00
Chandler Chen
726840336e [mpp_soc] add hw cap for rk3528
Signed-off-by: Chandler Chen <chandler.chen@rock-chips.com>
Change-Id: Iadd4e3b99789a52f24a8da1dc96896ffc59a0266
2023-01-13 14:20:00 +08:00
Chandler Chen
1756c9a4de [mpp_soc][hal]: Add rk3562 support
add hw_id define for rk3562 & rk3528

Signed-off-by: Chandler Chen <chandler.chen@rock-chips.com>
Change-Id: Ie32ecec242da6bdcb59a1df3e3f2a3a1a54fd695
2023-01-13 14:20:00 +08:00
Grey Li
1e1b58d5bd [jpegd]: Fix stream copy_flag by hw cap
Change-Id: Iadcdb46f4828f8e5d9bc8fd77d76bd090a1e602e
Signed-off-by: Grey Li <grey.li@rock-chips.com>
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2022-12-22 14:28:26 +08:00
xueman.ruan
05bf99bec9 [hal_jpege]: Fix hardware mismatch error.
Signed-off-by: xueman.ruan <xueman.ruan@rock-chips.com>
Change-Id: I5f2051cf21711331e9e58ed0a92a2be2c24197a7
2022-11-22 14:49:39 +08:00
Herman Chen
6a643f6e18 [hal_avsd_plus]: Add avs+ dec support for rk3528
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I8cc2cd61cfa65e5824c1a0696d6de7bb1728221d
2022-11-18 17:12:00 +08:00
Chandler Chen
223e0739f0 [mpp_soc]: Add rk3528 support
Signed-off-by: Chandler Chen <chandler.chen@rock-chips.com>
Change-Id: Ic26260c0987176b785434188625e018ab2c5241c
2022-11-17 17:47:11 +08:00
Chandler Chen
65ba1d354c [mpp_soc] add vepu540c cap info
Signed-off-by: Chandler Chen <chandler.chen@rock-chips.com>
Change-Id: I7c487a02c96333a5fb2b757ce08c154ada72fb85
2022-11-17 17:47:11 +08:00
Yandong Lin
3adde926e2 [avs]: Add avs module
NOTE: I frame header decoding should check stream version.

Signed-off-by: Ding Wei <leo.ding@rock-chips.com>
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
Change-Id: I1c8276f4499d73e3b60d582890037dec376e136f
2022-10-13 15:16:13 +08:00
Xinhuang Li
9b860cd250 [mpp_soc]: Fix rv1109/rv1126 soc_info err
Signed-off-by: Xinhuang Li <buluess.li@rock-chips.com>
Change-Id: I5de57f4c414d65c0d768c77470cf95a68d6ee71d
2022-10-10 16:03:42 +08:00
sayon.chen
2bf30c6f32 [mpp_soc]: Add capability core num set
Change-Id: I76add0b060b2c94914e7b11e8fb42d29c1987384
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com>
2022-09-22 17:32:31 +08:00
sayon.chen
038fecb3da [mpp_soc]: Add capability dec linebuf limit
Change-Id: I6b6d9f0728965ab4b73dc2ece7cd211b6fee190f
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com>
2022-09-22 17:32:21 +08:00
sayon.chen
6b4846bebd [soc_info]: Add cap_down_scale set
Change-Id: Ic0921ce74aea0d71d1629c4d88b5e76b87f294e9
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com>
2022-09-22 17:29:54 +08:00
Herman Chen
ea693d7a9e [mpp_soc]: Fix comment error
Change-Id: I1b4a2262da8499cc0ae5cd823687540382ea847b
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2022-08-11 09:42:01 +08:00
Yandong Lin
def09cb3c2 [jpege]: add new client type for vepu2 jpeg only
Add VPU_CLIENT_VEPU2_JPEG to distinguish vepu2 jpege only device.
And check whether kernel support the client type or not.

rk3588 has 4 jpeg encoder core and we will use VPU_CLIENT_VEPU2_JPEG as
its client type in kernel.

Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: Ib1c45781ac9c8f504ba7b46f2f0c7aad5d16fa68
2022-07-01 16:43:19 +08:00
Herman Chen
2b35cee0ce [mpp_log]: Add more log helper function
1. Move mpp_log.h to inc for external user.
2. Add mpp_debug.h for mpp internal logging.
3. Fix some warning.
4. Add log level setup function.
5. Check env log_level value in mpp_get_log_level call.

NOTE:
1. mpp internal module should use mpp_debug.h and mpp external user
should use mpp_log.h
2. Use mpp_get_log_level to update mpp_log_level when the env changed.

Change-Id: I90a55a02a72db177533013280dfe111ca3479229
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2022-05-20 11:42:10 +08:00
zj
3dea9cc46f [mpp_soc]: rk3368 has h264 decoder with vdpu1_2160p
Signed-off-by: zj <zj@rock-chips.com>
Change-Id: I915e9afad67e1de092aae288cb3a141daf0457fa
2022-03-07 10:32:07 +08:00
Herman Chen
881f05c7cf [mpp_soc]: Add avs+ decoder to rk3588
Change-Id: Ia93c70a16c17d1202ae4b133f157c140d8c8668c
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2022-03-03 16:38:49 +08:00
Yandong Lin
a4ece5df05 [hal_av1d]: Implement av1 decoder hal module
Change-Id: I9dc410b55cc614e7a4a6353d52a70c806e467b2e
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
2022-01-21 11:20:02 +08:00
Herman Chen
5e396e03d5 [mpp_soc]: Add AVS2 type
1. Add AVS2 coding type.
2. Add AVS2 support on rk3588.

Change-Id: Ifa677830d3f8c1625a4c351a6e008c09098f5122
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2021-11-20 18:34:30 +08:00
Herman Chen
6beec8ce65 [mpp_soc]: Add rk3588 support
Change-Id: I9a8829a1f0910c6de2062cd1c6b95d0c7ef71803
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2021-11-12 12:29:03 +08:00
Herman Chen
436209226b [mpp]: Add jpeg hw_type config implement
1. Add dec cfg update before mpp_init.
2. Add hw_type eheck and process on hal_jpegd init.
3. Disable soc cap error log.

Change-Id: Idb5929bf1eace77d4b09205b60d0c1f0e0eb50b5
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2021-09-15 12:21:03 +08:00
sayon.chen
9eb347a5ae [h264d]: Support hw resolution capability check
Add hw capability to parser and check resolustion based on hardware
capability.

Change-Id: Id9b719b238c74d6b77f78fd8d583a3de854a94f4
Signed-off-by: sayon.chen <sayon.chen@rock-chips.com>
2021-06-18 08:56:57 +08:00
Herman Chen
8dd7e8f37f [mpp_soc]: rk356x has jpeg decoder with pp
Change-Id: I5e9225299b842796e6e57f481b25ed5af26f6edf
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2021-01-27 15:28:47 +08:00
Johnson Ding
a2caeb423a [mpp_soc]: Fix vdpu jpeg with pp failed issue
Change-Id: I0d8418d187a3a44773342dccd1f8730cd6b54168
Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
2021-01-20 18:26:34 +08:00
Herman Chen
11aa95e52f [mpp_log]: Update mpp_log macro
Change-Id: I0e46e93a9a8fa0a7cb7a0e86cec1748503bddcfb
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2020-12-17 16:07:28 +08:00
Herman Chen
c106a5bdd0 [mpp_soc]: Add mpp_soc with more detail feature
1. Add soc definition structure to replace old one.
2. Use mpp_soc.h to replace soc detection in mpp_platform.h.
3. Add vcodec_type to each device definition.
4. Add check on soc info init.

Change-Id: Iecc44bd79e6fd09c58afbc1b5c526ecf31acc663
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
2020-12-08 19:42:53 +08:00