Commit Graph

1280748 Commits

Author SHA1 Message Date
Zefa Chen
02b83fb29a media: rockchip: vicap support mipi csi2 for rv1126b
Change-Id: I6e5a16c450e64c41ade9a6b0ea49915e49038d3c
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
2025-03-27 18:43:42 +08:00
Zefa Chen
08ad0f6304 media: rockchip: vicap support rv1126b
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Ib7949645d9d2081993e19574ba95195b77268387
2025-03-27 18:43:41 +08:00
Lin Jinhan
3683167fd0 crypto: rockchip: rkce init version
RKCE has redesigned the operational flow of CRYPTO to implement
pipelined computing. Using the standard crypto engine framework on
the driver can greatly simplify the logic of the code.

Signed-off-by: Lin Jinhan <troy.lin@rock-chips.com>
Change-Id: Ia6f5e2321ab4c7ae01d33cbd30a222bf32706ab4
2025-03-27 18:43:41 +08:00
Chaoyi Chen
5b8f017ee3 drm/rockchip: vop: Add MCU support for RV1126B
Change-Id: Ic91e167930d92a7cb13f345199a5ee5560df1fa8
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
2025-03-27 18:43:41 +08:00
Chaoyi Chen
6990c888f1 drm/rockchip: dsi2: Add cpu depend for dsi2 kconfig
Change-Id: Id96a3214ffd9dd12491b757423b39976829fac9b
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
2025-03-27 18:43:41 +08:00
Hongming Zou
ac6249fbe0 drm/rockchip: dsi: add rv1126b support
Support 4lane MIPI interface, 1.5Gbps/lane
Max output resolution is 1920x1080@60fps

Change-Id: I6b99b9d42aefd6f07a2bc49c9bb1696d712ed1fa
Signed-off-by: Hongming Zou <hongming.zou@rock-chips.com>
2025-03-27 18:43:41 +08:00
Chaoyi Chen
f7e3199891 drm/rockchip: vop: Add writeback support
RV1126B VOP has a writeback with max 1920 x 1080 output.
Writeback work as a connector in drm system.

Change-Id: I550601e480630a841c9abfadb9eda2204c074592
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
2025-03-27 18:43:41 +08:00
Chaoyi Chen
8f17704e58 drm/rockchip: vop: Add dclk rate count for RV1126B
RV1126B supports calculating the exact dclk from the known aclk rate.

Change-Id: I92539f34eda514a5f35ce53ece98109dac888d6c
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
2025-03-27 18:43:41 +08:00
Chaoyi Chen
c80bc3d76f drm/rockchip: vop: Add support for color bar
RV1126B support horizontial and vertical color bar.

Change-Id: Idf4fe9d125585286b928f4728b0567ea4c20aa2e
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
2025-03-27 18:43:41 +08:00
Chaoyi Chen
bdc1cace60 drm/rockchip: vop: Add support for RV1126B
VOP on RV1126B support 2 win, max output resolution 1920x1080P60:
Win0 MAX 1920x1080, support line YUV/RGB
Win2 MAX 1920x1080, support RGB

RV1126B VOP also supports write back feature, max resolution 1920x1080.

Change-Id: I07376ec32e5200f29038b5bdcacc0ac31bd7e915
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
2025-03-27 18:43:41 +08:00
Chaoyi Chen
042e588ff7 drm/rockchip: rgb: Add support for RV1126B
Change-Id: I5fe861a4fac567254ae5fc18352fed9569480372
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
2025-03-27 18:43:41 +08:00
Finley Xiao
0debea1483 soc: rockchip: power-domain: Add power domain support for rv1126b
This driver is modified to support RV1126B SoCs.

Change-Id: I9f2c09f229e933f68f37af179ef8d6c27bc09a41
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2025-03-27 18:43:41 +08:00
Finley Xiao
37564c9fcf dt-bindings: add power-domain header for RV1126B SoCs
Add power-domain header for RV1126B SoC from description in TRM.

Change-Id: I7fda5a49ec3eed790ddff17ba2be3e74a35f02c3
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2025-03-27 18:43:41 +08:00
Jason Zhu
240d040e41 ASoC: rockchip: pdm_v2: support new features for rv1126b pdm
1.Support data shift.
2.Move the hpf after cic filter.
3.Separate the gain control.

Change-Id: I092360fad0945084c3b44f3a31be6ee67371755a
Signed-off-by: Jason Zhu <jason.zhu@rock-chips.com>
2025-03-27 18:43:41 +08:00
Sugar Zhang
e0d4c336d2 ASoC: rockchip: sai: Add support for slot mask cfg
e.g. mask the right channel for play and rec

dai-tdm-slot-num = <2>;
dai-tdm-slot-width = <32>;
dai-tdm-slot-tx-mask = <0 1>;
dai-tdm-slot-rx-mask = <0 1>;

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Id359876f47916417ee6be9e607b05b79665cd9bf
2025-03-27 18:43:41 +08:00
Elaine Zhang
6c3b5ec765 rtc: rockchip: add rv1126b rtc
Change-Id: I455581ac1e2d933dd470d081f975ab22741b4e29
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2025-03-27 18:43:41 +08:00
Sugar Zhang
a5efaae962 dmaengine: rockchip-dma: Use clk_bulk API
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: If69dc1a0df9b4001d7501d9f19e93efdcb7bfb5c
2025-03-27 18:43:41 +08:00
Sugar Zhang
dded1124fe dmaengine: rockchip-dma: Use BIT_ULL helper for dma chan
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Ied6b7ea214642ba74c0e39d0a6d37de0739a1105
2025-03-27 18:43:40 +08:00
Sugar Zhang
8eaaad2158 dmaengine: rockchip-dma: Limit the maxburst per buf-depth
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I8a6e9f24cd6effc5345a74d698f1c7e92f8becd2
2025-03-27 18:43:40 +08:00
Sugar Zhang
003ad51ebb dmaengine: rockchip-dma: Add support desc addressed in sram
&dmac {
    sram = <&system_sram>;
    iram = <&system_sram>;
};

property 'sram' for desc addressed in sram.
property 'iram' for audio buf in sram.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I0021d971da663cd90c05622f07039bd87725a55b
2025-03-27 18:43:40 +08:00
Sugar Zhang
adeea7a684 dmaengine: rockchip-dma: Add support for RV1126B
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Ibb9eae158c6c86ac65a4509b8e86640ffbe06d07
2025-03-27 18:43:40 +08:00
Sugar Zhang
80e7b5d620 ASoC: rockchip: sai: Add support for RV1126B
* Enhance Frame Integrity Robustness
* Support FIFO Interleaved Cfg
* Support Data Debug

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I1cff642007e3421b49e602ea900832a0d94c58d1
2025-03-27 18:43:40 +08:00
Elaine Zhang
f5ab8f61cc net: can: rockchip: support canfd for rv1126b
Change-Id: I23925f6199686e7184abb5802cd819b0d6c4b090
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2025-03-27 18:34:23 +08:00
Finley Xiao
56f63ccba4 thermal: rockchip: Add phy init for rv1126b
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: I57287dd94425dcb65133033fc02d19404beac609
2025-03-27 16:40:22 +08:00
Ye Zhang
05a960a2c2 thermal: rockchip: Support RV1126B SoC in the thermal driver
Signed-off-by: Ye Zhang <ye.zhang@rock-chips.com>
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: I2c21b7a8c4fd7062e43e74445cb9c8b0cd8c6494
2025-03-27 16:40:22 +08:00
Ye Zhang
98abacc735 gpio: rockchip: support GPIO_TYPE_V2_6
Signed-off-by: Ye Zhang <ye.zhang@rock-chips.com>
Change-Id: Iaea19d3c1ee0b53138a2913fcd2b51a58159e732
2025-03-27 16:40:22 +08:00
Ye Zhang
5c4bc56605 pinctrl: rockchip: add rv1126b support
Signed-off-by: Ye Zhang <ye.zhang@rock-chips.com>
Change-Id: Ibb75f7b8f6b9ec72dd73b533e4d1cb0b49bccace
2025-03-27 16:40:22 +08:00
Elaine Zhang
c8d6e2b552 clk: rockchip: Add clock controller for the RV1126B
Add the clock tree definition for the new RV1126B SoC.

Change-Id: Id03fb5d02c59fc2f4a55e0a9b7a98692a049d6bf
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2025-03-27 16:40:22 +08:00
Elaine Zhang
a3d5c8d005 clk: rockchip: add dt-binding header for rv1126b
Add the dt-bindings header for the rv1126b, that gets shared between
the clock controller and the clock references in the dts.
Add softreset ID for rv1126b.

Change-Id: I565399bb3a338453c6f2f3ac5d79775ad2be9481
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2025-03-27 16:40:22 +08:00
Sugar Zhang
697f6fb846 soc: rockchip: Add RV1126B config
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I95bb691a862f641d1cdeac929e6ec5c94c84e9d8
2025-03-27 14:21:49 +08:00
Algea Cao
fabdf68c81 drm/rockchip: drv: Support parse allm capbility in scds
Change-Id: I3d6e4ccecffe99bfcf4e5ca5e62225dd7210c3dd
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2025-03-26 10:46:25 +00:00
Algea Cao
944abbb10a drm/rockchip: drv: Add struct rockchip_drm_hdmi21_data
All hdmi 2.1 contents in the edid are saved in this
struct.

Change-Id: I2400fb9fe77163667419677ca3f55e88d795d2be
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2025-03-26 10:46:09 +00:00
Algea Cao
7915220fed drm/rockchip: drv: Remove parse_edid_forum_vsdb
The HDMI spec 10.3.2 talks about SCDS, Sink Capability Data
Structure, exposed via HF-VSDB or HF-SCDB. The actual content
of the them is same. So it needs only one parse function.

Change-Id: I61459b6d21d7e0666c1561bb2ad41729e0d00a49
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2025-03-26 18:44:38 +08:00
Yu Qiaowei
5f5900c350 video: rockchip: rga3: add RGA3 sys_reg debug log
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I4260ad0729bfdfaaaa0a0844cf8c84b61bf4635b
2025-03-26 10:29:18 +00:00
Yu Qiaowei
3b0e000a6f video: rockchip: rga3: print debug log before check param
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I8bcc8f0b79b354e60076d1d1b9991c60e7581dc2
2025-03-26 10:29:07 +00:00
Yu Qiaowei
455fbd6ef9 video: rockchip: rga3: fix typo in win1_param check during RGA3 rotation
Fixes: 0b97d73d8e ("video: rockchip: rga3: fix the wrong check of resolution in RGA3 rotating")

Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I27fd66c5ad2aa9ea9ea4495647c6c8aae1e21264
2025-03-26 10:28:59 +00:00
Zefa Chen
9bd09ac33f media: rockchip: vicap: fixes error data type of rgb888 for rk3576
Change-Id: I3fe6c6a4a35247494085d70bb2ab7dfdd1f8fc03
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
2025-03-26 15:08:39 +08:00
Mark Huang
aaa8aa56db arm64: dts: rockchip: rk3576-evb1-v10-projector: add rk628 hdmi2csi config
Signed-off-by: Mark Huang <huangjc@rock-chips.com>
Change-Id: Ib37212736f0a61b0db958b3f56add296dfb1e7bb
2025-03-26 11:54:18 +08:00
Mark Huang
53854c082b arm64: dts: rockchip: Add rk3576 evb1 v10 projector board
Signed-off-by: Mark Huang <huangjc@rock-chips.com>
Change-Id: I108c84755ce4ce9f1472d9e86ca2c771e5f857c4
(cherry picked from commit ca6f21b740)
2025-03-26 10:23:05 +08:00
Shunhua Lan
f4718c6fd1 ASoC: codecs: Add driver for codec es8390
Signed-off-by: Shunhua Lan <lsh@rock-chips.com>
Change-Id: Ibac594e504b82a515f355f37ca9dd3e8d308b630
2025-03-25 11:36:02 +00:00
Shunhua Lan
1136fd6608 media: i2c: rk628: fix g_volatile_ctrl return value
g_volatile_ctrl should return 0 if no error

Signed-off-by: Shunhua Lan <lsh@rock-chips.com>
Change-Id: I8f9d338a0a0421ba65940a0275d1f4378bc31504
2025-03-25 11:34:21 +00:00
Zhang Yubing
fc8a056676 drm/rockchip: vop2: get the real dclk parent
When assign the vp dclk parent as hdmi phy pll in dts. The
vp dclk parent should get by clk_get_parent. The vp.dclk_parent
is not the real parent.

Change-Id: I4b1ba1e1b46e2f5db323069402c4b322ba4a836f
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
2025-03-25 06:52:25 +00:00
Algea Cao
f9e84f307a drm/bridge: synopsys: dw-hdmi-qp: Enable dsc according to actual situation
1.Determine whether to enable dsc based on the current resolution
and color format.

2.Determine the dsc format of the output according to the
capability of sink.

Change-Id: If7a1c88ea1b6ec0208c9dc9d91a56376ff656707
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2025-03-24 17:37:25 +08:00
Algea Cao
d1f66b40c0 drm/rockchip: vop2: Support hdmi dsc bpp below 9
When the dsc bpp is less than 9, hdmi output will flash on TV.
It is speculated that the reason is that pixel rate of sink
decoding is not enough.

Taking 8bpp as an example, dsc clk needs to be 1/3 of the input
clk.the theoretical calculation of DEN compression 1/3, at this
time, the clk of vop dsc to hdmi tx can be reduced to about 260M
to meet the 8bpp transmission.

RK3588 dsc clk only supports 1/2 frequency division, so dsc clk
is 1/2 input clk, which needs to increase blank, which is
equivalent to compressing the absolute DEN time. TV is likely to
decode at a decoding rate of around 260M. DEN absolute time
shortening results in abnormal TV decoding.

So the value of hblank needs to be reduced when bpp is below 9.
The measurement can be displayed normally on TV, but reducing
the hblank will result in non-standard timing of the hdmi output.
This may cause compatibility issues and hdmi cts certification
may fail.

Change-Id: I6cd7890c62980c29322c437b20fb048fe0acbae3
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2025-03-24 17:37:25 +08:00
Damon Ding
131fb30229 drm/rockchip: rgb: update the check for clearing old output_if
In order to cover more application scenarios, when the crtc changes,
the old output_if should be cleared, rather than when the flag
&drm_crtc_state.active_changed is set to 1.

In addition, it would be more reasonable to name new crtc to 'new_crtc'
rather than 'crtc'.

Change-Id: I6821e85b0b6f1152cea3057ebb6f3ec9b821ebee
Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
2025-03-24 09:12:55 +00:00
Damon Ding
f486e2b73d drm/rockchip: analogix_dp: update the check for clearing old output_if
In order to cover more application scenarios, when the crtc changes,
the old output_if should be cleared, rather than when the flag
&drm_crtc_state.active_changed is set to 1.

In addition, it would be more reasonable to name new crtc to 'new_crtc'
rather than 'crtc'.

Change-Id: I5376c44eb5deab75acdbae95782cc5de2e2757d5
Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
2025-03-24 09:12:55 +00:00
Damon Ding
f897ad4b39 drm/rockchip: analogix_dp: use the unified function to get new crtc from encoder
Replace the rockchip_dp_drm_get_new_crtc() by the existing function
drm_atomic_get_new_crtc_for_encoder(), which defined in common Rockchip
DRM driver file 'drivers/gpu/drm/rockchip/rockchip_drm_drv.c'.

Change-Id: I011dc70b5e7e927a201c80cc8ecb15dbef446631
Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
2025-03-24 09:12:55 +00:00
Sandy Huang
d02a383e7c drm/rockchip: drv: remove unused commit_lock
struct mutex commit_lock is only used by kernel 4.19,
use ovl_lock now.

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: Id7eb81fac31026956eeb9b8799b7d8281e4de4c2
2025-03-24 09:00:21 +00:00
Damon Ding
b0d79ebe70 drm/rockchip: logo: support to use the win scale to configure overscan parameters
For some platforms, such as RK3576, use the win scale instead
of the post scale to configure overscan parameters, because the
sharp/post scale/split functions are mutually exclusice.

Change-Id: If422749ed8defc553924f14f24ab173913b2dcad
Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
2025-03-21 18:39:35 +08:00
XiaoDong Huang
703b39bceb soc: rockchip: pm_debug: support to dump common registers
Change-Id: If1a731248fb332f6e22a9a9c8708cec53d52216f
Signed-off-by: XiaoDong Huang <derrick.huang@rock-chips.com>
2025-03-21 17:43:05 +08:00