Commit Graph

1065508 Commits

Author SHA1 Message Date
Guochun Huang
7cceedfb74 drm/panel: panel-simple: add error message to debug.
in order to directly determine the specific error
location of panel_simple_probe from error message
as follow:

BUG:
[    2.055658] rockchip-drm display-subsystem: bound ff900000.vop (ops
vop_component_ops)
[    2.055791] rockchip-vop ff8f0000.vop: missing rockchip,grf property
[    2.056148] rockchip-drm display-subsystem: bound ff8f0000.vop (ops
vop_component_ops)
[    2.056505] [drm:rockchip_dp_bind] *ERROR* failed to find panel
[    2.056732] rockchip-drm display-subsystem: failed to bind
ff970000.edp (ops rockchip_dp_component_ops): -517
[    2.057374] rockchip-drm display-subsystem: master bind failed: -517

Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
Change-Id: I2ceeaa9fac3834ad0c4b2bc0a4d8ab79050dfd8b
2022-03-12 19:32:59 +08:00
Lin Jinhan
23c9526f86 crypto: rockchip: v2: akcipher: prevent input data overflow
Signed-off-by: Lin Jinhan <troy.lin@rock-chips.com>
Change-Id: I39442e8e8ad1897b454da451090fbe867d6b26d6
2022-03-12 17:19:57 +08:00
Lin Jinhan
1e2b2b5aec crypto: rockchip: v2: akcipher: drop sign and verify
For kernel 5.10, the interface functions of sign and
 verify have changed and are not mandatory.

Signed-off-by: Lin Jinhan <troy.lin@rock-chips.com>
Change-Id: I2b94eaeaa5d0d3dd99ba86dd418338d9502c8aa5
2022-03-12 17:19:57 +08:00
吴良清
6e8b377f6d Revert "Revert "arm64: dts: rockchip: rk3588-android: enabled dmc""
This reverts commit de8062f2c3.

Change-Id: I061d2738aed267263f02f494b1663fb8d8a0e5db
Signed-off-by: Wu Liangqing <wlq@rock-chips.com>
2022-03-12 16:57:59 +08:00
Jianwei Fan
d079e65435 media: i2c: imx214: adapt to kernel-5.10 and add 4lane mode support
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
Change-Id: I05129ea47403f173fda55ddc4ccccc9fce5791f8
2022-03-12 16:49:51 +08:00
Sugar Zhang
d27ca5b359 drm/bridge: synopsys: dw-hdmi-qp: Fix audio infoframe
AUDI_CONTENTS0: { RSV, HB2, HB1, RSV }
AUDI_CONTENTS1: { PB3, PB2, PB1, PB0 }
AUDI_CONTENTS2: { PB7, PB6, PB5, PB4 }

PB0: CheckSum
PB1: | CT3    | CT2  | CT1  | CT0  | F13  | CC2 | CC1 | CC0 |
PB2: | F27    | F26  | F25  | SF2  | SF1  | SF0 | SS1 | SS0 |
PB3: | F37    | F36  | F35  | F34  | F33  | F32 | F31 | F30 |
PB4: | CA7    | CA6  | CA5  | CA4  | CA3  | CA2 | CA1 | CA0 |
PB5: | DM_INH | LSV3 | LSV2 | LSV1 | LSV0 | F52 | F51 | F50 |
PB6~PB10: Reserved

AUDI_CONTENTS0 default value defined by HDMI specification,
and shall only be changed for debug purposes.
So, we only configure payload byte from PB0~PB7(2 word total).

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Idfbb34ff7f7069af4e73c6995f32eefa798a9450
2022-03-12 16:29:28 +08:00
Sugar Zhang
ea0f840194 drm/bridge: synopsys: dw-hdmi-qp: Fix channel status
* LPCM: BPCUV insertion by hw
* NLPCM/HBR: BPCUV insertion from stream

when BPCUV is from stream, we should not enable hw channel
status override which will replace CS with the hw one.
This fixes DD+ bitstream.

when BPCUV generated from HW, PBIT_FORCE_EN should be set
for Parity bit calculated internally.
This fixes no sound on some display devices.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I3aa0390d9dd7d217853394c74576749c36b84720
2022-03-12 16:29:22 +08:00
Sugar Zhang
974a88ba65 arm64: dts: rockchip: rk3588: Add DCLKx for hdmi nodes
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: If7e1be0e59bd2234e32769e06bc767b4a6fc2112
2022-03-12 16:29:15 +08:00
Algea Cao
de16913c3b drm/rockchip: dw_hdmi: Make sure dclk is enabled when set audio registers
Change-Id: Idb62c2c9ea0d75d7090ec3e35c7742b0d42b3e43
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2022-03-12 16:29:07 +08:00
Algea Cao
c14ae13e54 drm/rockchip: vop2: Save crtc id in rockchip_crtc_state
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: Iadcf16d59241f4915421f5c3937d4abe0a9bc304
2022-03-12 16:28:59 +08:00
Algea Cao
f0b4873247 drm/bridge: dw-hdmi-qp: Send AVI/DRMI packet once per field
Increasing the sending frequency of infoframe improves
compatibility.

Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I095495d8d6641e7263de6cf2d3359f645aac2d6b
2022-03-12 16:19:30 +08:00
Algea Cao
4acfe816a6 drm/bridge: dw-hdmi-qp: Enable cec when resume
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I670ac19b14725e575c8a194a9cbf1fd96560d764
2022-03-12 16:18:49 +08:00
Zefa Chen
179381a7c5 phy: rockchip: csi2-dphy: fixed err path register only for rv1106
Fixes: f31433ff94 ("phy: rockchip: csi2-dphy: support rv1106")
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Id4ad47f5fa5eb279b428216b3d568d7f3405819b
2022-03-12 16:08:21 +08:00
Yu Qiaowei
3289e323f8 video: rockchip: rga3: Fixup pr_err for debug info to pr_info
Update driver version to 1.2.5

Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: Ic34b2dd0f351906cd05f08db3e43052c0ab6f07f
2022-03-12 16:02:31 +08:00
Yu Qiaowei
76c47e9eea video: rockchip: rga3: fixup scale error on win1
even multiples of 128 (act w/h) require a scaling factor -1

Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I5e7d68088fb1eceb7a57729ce9f87886a3b9fbaf
2022-03-12 16:02:31 +08:00
Yu Qiaowei
9a9d2d4903 video: rockchip: rga3: update register print
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: Ic707e77ac4eb3757e7299c9fe27ab2bd4bfef55e
2022-03-12 16:02:31 +08:00
Yu Qiaowei
c7123b7112 video: rockchip: rga3: Fix 1106 RGA2 CSC output exception
Default configuration Y_clip[0,255] UV_clip[0,255].

Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I2134fa5fc179a6e86d73b11a632236b6859cc056
2022-03-12 16:02:31 +08:00
Yu Qiaowei
e3e16782ac video: rockchip: rga3: support early interruption
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I4cbd31d9088b789dffc215ce891cfcaa08a8b0bf
2022-03-12 16:02:31 +08:00
Yu Qiaowei
43375c377b video: rockchip: rga3: RGA2 support OSD
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: Ib649bbdf4b7b41b9bb93323b9004ca5e17577ec5
2022-03-12 16:02:31 +08:00
Yu Qiaowei
4bb8b324f2 video: rockchip: rga3: RGA2 support YUV HDS/VDS
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I03f909f4d52bb8c5bd6c0607064f9075a4865cd7
2022-03-12 16:02:31 +08:00
Yu Qiaowei
06622a5859 video: rockchip: rga3: support Yin_Yout mode
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: Ia94e4e58575eabcc122390ad126a1c5d9e6f468e
2022-03-12 16:02:31 +08:00
Yu Qiaowei
943b11ebfa video: rockchip: rga3: RGA2 Support mosaic
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: Ib79b211c76bc0f547e597a9dbeb94726b3766983
2022-03-12 16:02:31 +08:00
Yu Qiaowei
e95866de6e video: rockchip: rga3: Support to judge the hardware information of 1106
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I42f77a95d18e9e16e08194c1011114fe69a2ede4
2022-03-12 16:02:31 +08:00
Chen Shunqing
64faa64356 media: rockchip: hdmirx: set phy to low power mode
Signed-off-by: Chen Shunqing <csq@rock-chips.com>
Change-Id: I28c90d43029c1c0d71e4c7686a84fc086be8742f
2022-03-12 15:20:49 +08:00
Chen Shunqing
75dd861649 media: rockchip: hdmirx: fix interlaced resolution ficker
Signed-off-by: Chen Shunqing <csq@rock-chips.com>
Change-Id: I6b0b71fc846d98d02a6c79e88768315f11216418
2022-03-12 15:20:24 +08:00
Chen Shunqing
b3bfa85987 media: rockchip: hdmirx: workaround get error timing
1. Get timing from hdmirx ctrl.
2. If the timing is error, get timing from dma.
3. If get timing error from dma, re-execute hotplug process.

Signed-off-by: Chen Shunqing <csq@rock-chips.com>
Change-Id: Iae43386a8d45cb0a9338a1c8b32a122b6b377ca2
2022-03-12 15:19:53 +08:00
Jianwei Fan
a056012edf media: i2c: dw9714: sync from kernel-4.19
kernel 4.19 drivers/media/i2c/dw9714.c ends
commit 6e50af3b41 ("media: move rk_vcm_head.h from
drivers/media/i2c/ to include/uapi/linux/")

Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
Change-Id: If329076cf39aa01d9a7b7ab4326e09ba0578c90f
2022-03-12 15:15:47 +08:00
Zefa Chen
9f87ca55e4 media: rockchip: cif fix errors in rgb24 data format
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: I0766997860f06dc25e604c2ea8425049a987fdc5
2022-03-12 14:39:29 +08:00
Herman Chen
b5267d2417 video: rockchip: mpp: rkvenc2: Fix async msg issue
H.264 encoder will send the task request and wait result in async way.
The task process will be like:
send task 1
send task 2
wait task 1
send task 3
wait task 2
Then the msgs struct will carry the latest task rather than the task in
the pending queue. And free the wrong task structure.

Error log:
[  387.742800][ T1983] list_add corruption. prev->next should be next (ffffff8114ced948), but was ffffff8152228028. (prev=ffffff8152228028).
[  387.742819][ T1983] ------------[ cut here ]------------
[  387.742822][ T1983] kernel BUG at lib/list_debug.c:28!
[  387.742827][ T1983] Internal error: Oops - BUG: 0 [#1] PREEMPT SMP
[  387.762394][ T1983] Modules linked in: rk_vcodec
[  387.762403][ T1983] CPU: 5 PID: 1983 Comm: mpp_h264e_1982 Not tainted 5.10.66 #103
[  387.762404][ T1983] Hardware name: Rockchip RK3588 EVB1 LP4 V10 Board (DT)
[  387.762408][ T1983] pstate: 60400009 (nZCv daif +PAN -UAO -TCO BTYPE=--)
[  387.762415][ T1983] pc : __list_add_valid+0x94/0x98
[  387.762417][ T1983] lr : __list_add_valid+0x94/0x98
[  387.762419][ T1983] sp : ffffffc018f2bce0
[  387.762421][ T1983] x29: ffffffc018f2bce0 x28: ffffff8114ced948
[  387.762424][ T1983] x27: ffffff8152228028 x26: ffffff8152228028
[  387.762427][ T1983] x25: ffffff8114ced880 x24: ffffff817888a080
[  387.762429][ T1983] x23: ffffff8152228000 x22: ffffff817888a080
[  387.762432][ T1983] x21: ffffffc018f2bd58 x20: ffffff8114ced880
[  387.762435][ T1983] x19: ffffffc018f2bd58 x18: ffffffc018ecd040
[  387.762437][ T1983] x17: 0000000000000000 x16: 00000000000000d8
[  387.762440][ T1983] x15: 0000000000000004 x14: 0000000000003fff
[  387.762443][ T1983] x13: ffffffc011f0cf78 x12: 0000000000000003
[  387.762445][ T1983] x11: 00000000ffffbfff x10: 00000000ffffffff
[  387.762448][ T1983] x9 : 07e69d051dac6800 x8 : 07e69d051dac6800
[  387.762451][ T1983] x7 : 727028202e383230 x6 : ffffffc0120ee318
[  387.762454][ T1983] x5 : ffffffffffffffff x4 : 0000000000000000
[  387.762457][ T1983] x3 : ffffffc011bc4854 x2 : 0000000000000000
[  387.762459][ T1983] x1 : 0000000000000001 x0 : 0000000000000075
[  387.762462][ T1983] Call trace:
[  387.762465][ T1983]  __list_add_valid+0x94/0x98
[  387.762507][ T1983]  mpp_msgs_trigger+0x15c/0x1f0 [rk_vcodec]
[  387.762542][ T1983]  mpp_dev_ioctl+0x4b8/0x5d8 [rk_vcodec]
[  387.762563][ T1983]  __arm64_sys_ioctl+0x94/0xd0
[  387.764333][ T1983]  el0_svc_common+0xc0/0x23c
[  387.764335][ T1983]  do_el0_svc+0x28/0x88
[  387.764339][ T1983]  el0_svc+0x14/0x24
[  387.764342][ T1983]  el0_sync_handler+0x88/0xec
[  387.764344][ T1983]  el0_sync+0x1a8/0x1c0
[  387.764349][ T1983]
[  387.764349][ T1983] PC: 0xffffffc01059b608:

Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: Id55b3b66726a526bca68594ab9a86cc58c265945
2022-03-12 14:38:30 +08:00
Addy Ke
2094d714b6 arm64: dts: rockchip: rk3588-toybrick-x0: enable can2
Signed-off-by: Addy Ke <addy.ke@rock-chips.com>
Change-Id: Ie5cedd3055d7c64cf5b3a6f50684fe38a25f5ff5
2022-03-11 16:08:36 +08:00
Tao Huang
37d4a8872f soc: rockchip: ramdisk: Add Rockchip RAM disk support
Support use reserved RAM memory as a block device.

Change-Id: I64367a2cb67467425a0e4c6753fa5af0a245405d
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2022-03-11 16:03:08 +08:00
Wang Jie
0b9a0e19a7 dt-bindings: usb: add et7303 document
Change-Id: I3001058b835e367595924cd8b00b415bcaeee670
Signed-off-by: Wang Jie <dave.wang@rock-chips.com>
2022-03-11 15:09:21 +08:00
Wang Jie
fb2fd67ed8 usb: typec: tcpm: add et7303 driver
Change-Id: I2339e9ece6c00d5a18eac01224cb623468d1771c
Signed-off-by: Wang Jie <dave.wang@rock-chips.com>
2022-03-11 15:09:10 +08:00
Andy Yan
6a13a81062 drm/rockchip: vop2: Support skip reference fb
It support skip reference fb at vop driver by
adding add skip-ref-fb at vop dt node.

Change-Id: I7a0a91d905ba4907f8f0720e1997e9ee9c5c65c7
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
2022-03-11 14:28:38 +08:00
Cai YiWei
f6cafa7cbd media: rockchip: isp: isp32 add vsm
Change-Id: I456f06ef23c54196ddb4904675696a82dc74864c
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-03-11 14:18:01 +08:00
Cai YiWei
2fa9233522 media: rockchip: isp: scale up and down for some stream
Change-Id: Ie6f48cf197e5be0c4fbb63e641dde4299920d97a
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-03-11 14:17:38 +08:00
Cai YiWei
8b0728ec75 media: rockchip: isp: add luma stream for isp32
Change-Id: If20dfa24389b3df7f2ef0ad918cc649d9c560807
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-03-11 14:17:17 +08:00
Cai YiWei
8dd3e56958 media: rockchip: isp: isp32 mi switch according to output buf
Change-Id: I2d4ce521e00dc9907c60472538d2b9b7300e4539
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-03-11 14:16:48 +08:00
William Wu
3e84aecb52 usb: host: xhci-plat: build depends on ARCH_ROCKCHIP
When build with rv1106_defconfig, and enable at least the
following configs manually:

CONFIG_USB_XHCI_HCD=y
CONFIG_USB_XHCI_PLATFORM=y

size drivers/usb/host/xhci-plat.o

before:
   text    data     bss     dec     hex filename
   5570     376       4    5950    173e drivers/usb/host/xhci-plat.o

after:
   text    data     bss     dec     hex filename
   2898     376       4    3278     cce drivers/usb/host/xhci-plat.o

Signed-off-by: William Wu <william.wu@rock-chips.com>
Change-Id: Ica505b973d1f4ebdc18d814a3992ab51999be980
2022-03-11 11:45:36 +08:00
Zhang Yubing
f283539a10 drm/rockchip: vop2: support use video port default parent
When video port output image under 4K@60Hz(dclk less than 600MHz),
The dclk parent use hdmi0 phy pll or hdmi1 phy pll. In some cases
the hdmi0 phy pll or hdmi1 phy pll is not enough for all output
interface. For example, hdmi0 and hdmi0 connect to video port0 and
dp connect to video port1. In this case, It need the video port1
need use default dclk parent.

Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: Icdf050bb1e7a9f36022f5dd196358136c1d9242c
2022-03-11 11:34:59 +08:00
Algea Cao
817db0024a drm/rockchip: dw_hdmi: Enable split mode only when two HDMI are enabled
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: Ib62c7f3b9ccfb03f61311fb704d9d897afaa50f2
2022-03-11 11:34:12 +08:00
Cai YiWei
40e63cc682 media: rockchip: isp: build depends on CPU config
Change-Id: I20ed687a3b52b04bb826ef8c8405217c3f1f19d0
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-03-11 11:18:47 +08:00
Finley Xiao
0f3739e0b7 MALI: bifrost: Kconfig: Don't select PM_DEVFREQ and DEVFREQ_THERMAL
If use savedefconfig to update defconfig, PM_DEVFREQ and DEVFREQ_THERMAL
will be removed, and dmc and opp_select also depend on PM_DEVFREQ,
enable them default.

Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: Ied5ac8e70fe195294df2752160ce6e56360f2db8
2022-03-11 11:00:00 +08:00
Finley Xiao
115afc3bb5 arm64: configs: rockchip_linux_defconfig: enable PM_DEVFREQ and DEVFREQ_THERMAL
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: I62a248c07662339676c43c30535b745ee846a332
2022-03-11 11:00:00 +08:00
Finley Xiao
9303bebb7e arm64: configs: rockchip_defconfig: enable PM_DEVFREQ and DEVFREQ_THERMAL
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: I44fb16f6f0053249e497406c46cd9e89fc5c1315
2022-03-11 11:00:00 +08:00
William Wu
1e5e39bebf phy: rockchip: inno-usb2: build depends on CPU config
When build with rv1106_defconfig, and enable the following
configs manually:

CONFIG_EXTCON=y
CONFIG_USB_SUPPORT=y
CONFIG_PHY_ROCKCHIP_INNO_USB2=y

size drivers/phy/rockchip/phy-rockchip-inno-usb2.o

before:
   text    data     bss     dec     hex filename
   65118     204       4   65326    ff2e drivers/phy/rockchip/phy-rockchip-inno-usb2.o

after:
   text    data     bss     dec     hex filename
   13780     204       4   13988    36a4 drivers/phy/rockchip/phy-rockchip-inno-usb2.o

Signed-off-by: William Wu <william.wu@rock-chips.com>
Change-Id: Ia8900c17800a4ae9ae04e91f46d71986eda242c0
2022-03-11 10:57:05 +08:00
Cai YiWei
ead9f87f94 ARM: dts: rockchip: add isp nodes for rv1106
Change-Id: I93e20fccdd7269efac7e22eb7a83bbfea3ea22c3
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-03-11 10:32:47 +08:00
Sugar Zhang
4cfa4a1773 ARM: dts: rockchip: Add basic support rv1106/3 evb board
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I3f53c934dcd0cfb814bcd217c788a0c60319faaf
2022-03-11 10:16:37 +08:00
Yu Qiaowei
549c087dbd video: rockchip: rga3: Update RGA2 register
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I587db82cbf8148c274024a203f7646f7f218111c
2022-03-11 10:08:18 +08:00
Yu Qiaowei
afbf0cd0e4 video: rockchip: rga3: Code style of rga2_reg_info.c
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I17819439fe0d65c475b56b063be300e86e5ae048
2022-03-11 10:08:18 +08:00