Commit Graph

1268711 Commits

Author SHA1 Message Date
Zhang Yubing
21084cb7e0 drm/rockchip: dw-dp: get hdcp status when irq coming
The hdcp irq status need clear as soon as possible.

Change-Id: I17eda476d30fec6f57f53c1de25e8a0e7dc3f5b2
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
2024-03-22 19:17:27 +08:00
Huibin Hong
807863f905 serial: 8250_dwlib: support simple rs485
Change-Id: Ic32dd4ca47a3f83c5efaf232c61fd036e72b539f
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
2024-03-22 19:16:59 +08:00
Huibin Hong
604c04bbd1 arm64: dts: rockchip: rk3576: higer frac for uart
96MHz is for 6M baudrate, 128MHz is for 8M baudrate

Change-Id: I292240b1dcca3f358393b28ec52051fd67ecba19
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
2024-03-22 19:11:46 +08:00
Algea Cao
19bc7529b9 drm/rockchip: vop2: Fix no signal when switch YUV420 to RGB/YUV444 in hdmi frl mode
The timing of YUV420 at the same resolution is different from other
color formats. Therefore, if timing switch of vop is later than the
switching process of hdmi, hdmi timing will be abnormal.

In hdmi frl mode, input ipi clk is different from output link clk
frequency, which makes it difficult to restore after the timing
error.

Therefore, it is necessary to ensure that the output mode of
vop is switched before hdmi switch to ensure the correct timing

Change-Id: I4633670f13a28975eb37a68ad597956d87a159c3
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2024-03-22 19:05:26 +08:00
Binyuan Lan
3133279020 input: touchscreen: chipone_9551r add early_suspend
Signed-off-by: Binyuan Lan <lby@rock-chips.com>
Change-Id: Ic0ee4a18af52e785f0d4001b3c55e36ae4b8eaed
2024-03-22 19:03:28 +08:00
Sugar Zhang
8c74ab6a7a ASoC: rockchip: multi-dais: Add support for 1-DAI-N-DAILINKS
e.g.

multidais_sound: multidais-sound {
	compatible = "simple-audio-card";
	simple-audio-card,format = "i2s";
	simple-audio-card,name = "rockchip-es8388";
	simple-audio-card,mclk-fs = <256>;
	#address-cells = <1>;
	#size-cells = <0>;
	status = "okay";

	simple-audio-card,dai-link@1 {
		format = "i2s";
		cpu {
			sound-dai = <&multi_dais>;
		};
		codec {
			sound-dai = <&es8388>;
		};
	};

	simple-audio-card,dai-link@2 {
		format = "i2s";
		cpu {
			sound-dai = <&multi_dais>;
		};
		codec {
			sound-dai = <&pdmics>;
		};
	};
};

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I2064a71979a0a96d683f1daecb21533c1fb3a2f7
2024-03-22 14:54:31 +08:00
Sandy Huang
aedb0ca73c arm64: dts: rockchip: rk3576-evb: assigned vpll as vp2 dclk parent
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: Icbff9534a4c6b0b5c09c3879e85a33ef764e166f
2024-03-22 14:54:02 +08:00
Sandy Huang
4b46ff4a58 drm/rockchip: vop2: add max dclk to filter unsupported resolution
Before this commit, we use max_output.width to filter unsupported resolution,
but just like rk3576 vp0 can support 4k120 but can't support 4k144hz, so
we add max dclk to filer this resolution.

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I44e8b7db33ca426226afb2137b2643ae09b97425
2024-03-22 14:54:02 +08:00
Sandy Huang
077e48341d drm/rockchip: vop2: remove afbc disable when close cluster at rk356x
Disable cluster afbc when close cluster is a reasonable operation,
but for some design reasons, this will lead to VOP iommu pagefault at rk356x,
so we keep it always on at rk356x.

Fixes: 8379fd7555 ("drm/rockchip: vop2: add support rk3576")
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I9931da7f45171161b46fb46ab6b8e1e377debab0
2024-03-22 14:54:02 +08:00
Sandy Huang
9a148a7c75 drm/rockchip: vop2: add VU24 linear format support for rk3576
The VU24 format can described both linear and nonlinear formats,
At rk3576:
  Esmart can support linear VU24 format;
  Cluster can support nonlinear VU24 format[RFBC].

The IC design linear VU24 format reuses the logic of RB24 format, so need to do
some special swap and force enable y2r when is at rgb overlay.

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I795629b81008fc62cb57a2f07fbdb2f05f21cbee
2024-03-22 14:54:02 +08:00
Jianwei Fan
6d6f06bbd9 media: i2c: rk628_csi: add set quick stream
Change-Id: I986db277914a26168049905e50572b07ba99cc69
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
2024-03-22 14:51:58 +08:00
Jianwei Fan
39b63d0caa media: i2c: rk628: add RKMODULE_GET_DSI_MODE ioctl for dsi mode
Change-Id: I47e642c5535469c6df0d0a2252613b6585bc124d
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
2024-03-22 14:51:58 +08:00
Mingwei Yan
71940785b8 media: rockchip: vpss: support tile and rotate
Signed-off-by: Mingwei Yan <mingwei.yan@rock-chips.com>
Change-Id: I7ed9bf1cb9791c6ed42ad64b861a276bd75959cf
2024-03-22 14:51:15 +08:00
Mingwei Yan
9ff3f39ebc media: rockchip: vpss: fix online cmsc shadow not update
Signed-off-by: Mingwei Yan <mingwei.yan@rock-chips.com>
Change-Id: I65280b6c6feff3c991d2faa5ef7087c7c4071391
2024-03-22 14:51:15 +08:00
Rimon Xu
d0fc27f1d9 media: rockchip: vpss: support rb/uv swap pixel format
Signed-off-by: Rimon Xu <rimon.xu@rock-chips.com>
Change-Id: I8068109353656a3dce0e663b696dc2e1cdce47d7
2024-03-22 14:51:15 +08:00
Eddy Zhang
8c05e5bfef drm/rockchip: dw_hdcp2: always support unlocked_ioctl() file operation
In both the Android SDK and Linux SDK, when compiling for a 64-bit
system, the CONFIG_COMPAT macro is enabled, but the unlocked_ioctl call
is not compiled. The hdcp2_tx_rx service compiled on Android is 32-bit,
corresponding to a 64-bit kernel. Therefore, ioctl calls go through
compat_ioctl without any issues. However, services and kernels built
with the NVR SDK and Linux SDK are consistent at 64 bits. This causes
ioctl calls to go through unlocked_ioctl, leading to exceptions.

Fixes: 8f36a88f84 ("drm/rockchip: Add dw hdcp2 controller driver")
Change-Id: I3090bcb03e509360b54194d1152cf05437dc0627
Signed-off-by: Eddy Zhang <eddy.zhang@rock-chips.com>
2024-03-22 10:32:29 +08:00
Algea Cao
cd4db62ef0 drm/rockchip: dw_hdmi: Don't set enable-gpio value when hdmi bind
If uboot logo is enabled and the enable-gpio value is
different from that in uboot, kernel logo will be displayed
abnormally. Therefore, we do not set the value of enable-gpio
when hdmi bind, but set it in encoder enable when hdmi is switched
after system boot. This method is also compatible with
scenarios that uboot logo is not enabled.

Change-Id: I238aeb63790b67414036e2c89382870ff575c4e5
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2024-03-22 10:15:16 +08:00
Elaine Zhang
219d18bb9b clk: rockchip: rk3576: add CLK_SET_RATE_NO_REPARENT for dclk_vop_src
Change-Id: I63dadbc708ce89464e5ceef572972b01d9900c7f
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2024-03-22 10:12:39 +08:00
Tao Huang
51233ecd61 soc: rockchip: rockchip_system_monitor: Add early suspend debug
Add early_suspend_debug module parameter to enable print early
suspend call time.

Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: Iebcd55db18f87091392932efa3056b3b8d3c06be
2024-03-21 19:41:57 +08:00
Chaoyi Chen
71f567ab13 drm/rockchip: debugfs: Only use fourcc code for dump plane format name
The original drm format name will print fourcc along with the other
info, just take fourcc.

Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
Change-Id: Id438f5be90a81f1d163f40fcef86cb9cba0f9105
2024-03-21 18:53:23 +08:00
Chaoyi Chen
a295cb5909 drm/rockchip: debugfs: Add extra enable option for vop dump feature
Currently, the dump vop buffer feature is turned on and off through
`CONFIG_ROCKCHIP_DRM_DEBUG` marco. We want to control this at
runtime, so this patch adds a new option for enable to dump debugfs.

- DUMP_DISABLE: Disable dump and do not record plane info into list.
- DUMP_ENABLE: Record plane info into list.
- DUMP_KEEP: Record plane info into list and keep to dump plane.

Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
Change-Id: I96ad88068b383e93071896c63c3cc68aa05c8834
2024-03-21 18:53:12 +08:00
William Wu
d5cb3a119c phy: rockchip: inno-usb2: Fix chg_mode for rk3576
This patch disable DP/DM pull-down resistor during
charger detection, it can avoid mistakenly detected
floating charger as SDP charger.

Fixes: aedf737234 ("phy: rockchip: inno-usb2: Add usb2 phys support for rk3576")
Signed-off-by: William Wu <william.wu@rock-chips.com>
Change-Id: I16a3b984204e6db3f94a011d96a6e0bed57d6b4d
2024-03-21 18:45:56 +08:00
Algea Cao
8714a57e0b arm64: dts: rockchip: rk3576-evb1: Add hdmi ddc sda holding time config
Ensure that ddc signals comply with protocol requirements.

Change-Id: I4cd343061f2f6030951a71915d2086946b5cb722
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2024-03-21 18:41:44 +08:00
Algea Cao
edcadb8bb9 drm/rockchip: dw_hdmi: Fix rk3588 hpd misrecognition
When mask rk3588 hpd irq, hpd irq status bit
`ohpd_int` will be clear automatically.

Change-Id: I462e1f9e5e2b1ac923e32a0c7e08a06d4f867083
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2024-03-21 18:41:35 +08:00
Algea Cao
16c04d8838 drm/rockchip: dw_hdmi: Fix rk3576 hpd misrecognition
When mask rk3576 hpd irq, hpd irq status bit
`ohpd_int` will be clear automatically.

Change-Id: Ia3261ee439657f33bce36e244d52573586f2d92c
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2024-03-21 18:41:35 +08:00
Frank Wang
7c7e551f0c usb: typec: tcpm: husb311: add runtime power save
While TCPM invoke set_vbus(), we checked the vbus and charge status
to disable 24M OSC to save power consumption via a delay worker.

Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
Change-Id: I4e5b191d4071b3668413fc7362498d6ea3889b7a
2024-03-21 18:39:26 +08:00
Lin Jianhua
49f8a4c330 arm64: rockchip_linux_defconfig: enable ufs for rk3576
Change-Id: I8920365196c826caf667a5e124c69c8afa765ed3
Signed-off-by: Lin Jianhua <linjh@rock-chips.com>
2024-03-21 18:38:21 +08:00
Yifeng Zhao
a2d34b00a7 arm64: dts: rockchip: rk3576-evb1: enable ufs
Signed-off-by: Yifeng Zhao <yifeng.zhao@rock-chips.com>
Change-Id: I883d2221bfbd61a704be39416438e78c96843737
2024-03-21 18:36:47 +08:00
Yifeng Zhao
94f1bbce63 mmc: sdhci-of-dwcmshc: fix some config for rk3576
1. Set the default tx dll tap value to 0x7 for hs400.
2. Set the default cmd dll tap value to 0x7.
3. Configure the RK_TAP_VALUE_SEL flag.

Signed-off-by: Yifeng Zhao <yifeng.zhao@rock-chips.com>
Change-Id: If9d920756b0ecc960bb607f1fcec889daff51f46
2024-03-21 18:28:31 +08:00
Elaine Zhang
1e07e1d604 net: can: rockchip: rk3576: support rx dma
remove ext storage.
add rx dma func.

Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
Change-Id: I4daec7fdfd52f22492641f8c07616f5b94086ac6
2024-03-21 18:25:45 +08:00
Shunhua Lan
b1d57c5627 ASoC: rockchip: pdm_v2: fix missing of register_component when rockchip,no-dmaengine is set
Signed-off-by: Shunhua Lan <lsh@rock-chips.com>
Change-Id: I75d0b1a85782f82662a0b8101654f7afc54787a8
2024-03-21 15:05:10 +08:00
Jon Lin
d5f68a41c3 arm64: dts: rockchip: rk3528: PCIe change to use 32bits dbi base address
Change-Id: I2340ca08ad72f52b98d48eb20cbe2ae025fb6503
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
2024-03-21 14:59:18 +08:00
Zhang Yubing
9e964cc346 drm/rockchip: dw-dp: set the connector_id_prop property
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: Ie78cb8f2cce05eb5243c056726d9ec08b0f25f61
2024-03-21 14:57:03 +08:00
Weixin Zhou
de37973351 input: touchscreen: parade: add parade driver
Signed-off-by: Weixin Zhou <zwx@rock-chips.com>
Change-Id: Ib93c92be5ad3c55da44ef75fcb86cba5d793a3fe
2024-03-21 14:51:13 +08:00
Jianwei Fan
d63fa17eda arm64: dts: rockchip: add rkvtunnel node for rk3576-evb2
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
Change-Id: I2007d7563bce741ba6dfa56d4266e588b7238f2f
2024-03-21 11:23:32 +08:00
Zorro Liu
559b218b69 arm64: dts: rockchip: enable ufs for rk3576-ebook-v10
Change-Id: I1ba8b37697e4f1f48081ee628576584db38bcd8a
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2024-03-21 11:23:20 +08:00
Wangqiang Guo
e0cfe1fa23 media: i2c: rk628: add color_range/color_space interface.
Change-Id: I9f2633f8ff4f9f2b3e9d6c02b3865eff125f30a5
Signed-off-by: Wangqiang Guo <kay.guo@rock-chips.com>
2024-03-21 09:43:32 +08:00
Jianwei Fan
7d65dab0e2 media: platform: vicap: get dsi cmd or video mode from sensor
Change-Id: I8a436399932468a0b4135c8fc27e3b9aacfe059e
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
2024-03-20 21:17:50 +08:00
Zefa Chen
dcd9af4824 phy: rockchip: mipi-dcphy: rx support skew calibration with RK3576
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: I0de7b4c1563f30e8e7e3ae81438c964e17f6a223
2024-03-20 21:16:04 +08:00
Zefa Chen
ae4058769f media: rockchip: vicap fixes error of yuv420 intput
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: I130049a7effa8eba2511bb63e95b29eb9481cf5c
2024-03-20 21:15:36 +08:00
Zefa Chen
4683d4d50b media: rockchip: vicap fixes error config of 2x2 pixel extraction mode
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: I7a8e2594247a0dbfcc4d9403265e99887d3c5ac8
2024-03-20 21:15:05 +08:00
Zefa Chen
00b96150b7 media: rockchip: vicap fixes size error of rgb888 with rk3576
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Ic9e933375b5a3d57fefd3cd4a7e9fcd2c74e8830
2024-03-20 21:13:54 +08:00
Chandler Chen
ae3eca4206 arm64: dts: rockchip: rk3576: rkvdec enable link mode by default
Change-Id: I6e8091b9cd69dd4e2a529721c3dc9813d2dbac02
Signed-off-by: Chandler Chen <chandler.chen@rock-chips.com>
2024-03-20 17:10:33 +08:00
Shunhua Lan
ab5593978c arm64: dts: rockchip: rk3588-evb7: add rk628 sound for hdmiin audio
Signed-off-by: Shunhua Lan <lsh@rock-chips.com>
Change-Id: I4b14de5ef996d256652a023a3bc64e6de056bd09
2024-03-20 17:04:51 +08:00
Zefa Chen
3490947faa media: rockchip: vicap fixes error of gcc compile
drivers/media/platform/rockchip/cif/capture.c:5159:6: error: conflicting types for 'rkcif_do_stop_stream' due to enum/integer mismatch; have 'void(struct rkcif_stream *, unsigned int)' [-Werror=enum-int-mismatch]
 5159 | void rkcif_do_stop_stream(struct rkcif_stream *stream,
      |      ^~~~~~~~~~~~~~~~~~~~
In file included from drivers/media/platform/rockchip/cif/capture.c:24:
drivers/media/platform/rockchip/cif/dev.h:949:6: note: previous declaration of 'rkcif_do_stop_stream' with type 'void(struct rkcif_stream *, enum rkcif_stream_mode)'
  949 | void rkcif_do_stop_stream(struct rkcif_stream *stream,
      |      ^~~~~~~~~~~~~~~~~~~~
drivers/media/platform/rockchip/cif/capture.c:6344:5: error: conflicting types for 'rkcif_do_start_stream' due to enum/integer mismatch; have 'int(struct rkcif_stream *, unsigned int)' [-Werror=enum-int-mismatch]
 6344 | int rkcif_do_start_stream(struct rkcif_stream *stream, unsigned int mode)
      |     ^~~~~~~~~~~~~~~~~~~~~
drivers/media/platform/rockchip/cif/dev.h:947:5: note: previous declaration of 'rkcif_do_start_stream' with type 'int(struct rkcif_stream *, enum rkcif_stream_mode)'
  947 | int rkcif_do_start_stream(struct rkcif_stream *stream,
      |     ^~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
scripts/Makefile.build:273: recipe for target 'drivers/media/platform/rockchip/cif/capture.o' failed

Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Ibbd427bf07937c655a93bf84d33f25e86fece9d0
2024-03-19 20:56:00 +08:00
Tao Huang
5ed0f1558c mfd: rkx110_x120: Check CONFIG_DEBUG_FS on rkx120_debugfs_init()
before:
   text	   data	    bss	    dec	    hex	filename
    538	    232	      0	    770	    302	drivers/mfd/rkx110_x120/rkx120.o
after:
   text	   data	    bss	    dec	    hex	filename
    468	     32	      0	    500	    1f4	drivers/mfd/rkx110_x120/rkx120.o

Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: Ic1b6fe5fef13e64756797e28b48935ac570aa80b
2024-03-19 20:27:54 +08:00
Wu Liangqing
624656c1c9 arm64: dts: rockchip: rk3576-evb: add test power
Change-Id: Ic27d8d774f6e1c07fb3ab835c37107c48e9dd2ef
Signed-off-by: Wu Liangqing <wlq@rock-chips.com>
2024-03-19 20:15:17 +08:00
Huibin Hong
bc24e0b49a fiq_debugger: arm64: fix command bt, show correct call stack
Change-Id: I718bdfb4247e67542ae665572b0438066fd9daab
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
2024-03-19 20:10:24 +08:00
Weixin Zhou
ddcea529f5 arm64: dts: rockchip: rk3576-eink: config pwrdn pinctrl
Signed-off-by: Weixin Zhou <zwx@rock-chips.com>
Change-Id: I1617fc5f7b8d8bb6fbee5c07709efa1fcf3d93fd
2024-03-19 19:16:53 +08:00
Chen Shunqing
98db161644 media: i2c: rk628: add cec register for csi_v4l2
Type: Function
Redmine ID: N/A
Associated modifications: N/A
Test: N/A

Signed-off-by: Chen Shunqing <csq@rock-chips.com>
Change-Id: I2ff2aedb323165ca3c1b95ae609f66facb1b61bb
2024-03-19 19:10:00 +08:00