Commit Graph

1268779 Commits

Author SHA1 Message Date
Cody Xie
ad65017d04 arm64: dts: rockchip: Add max96756 dtsi for RK3588 Vehicle EVB board
Change-Id: I592f401ba449822b037a81c9abeeeaa30165ac12
Signed-off-by: Cody Xie <cody.xie@rock-chips.com>
2023-12-22 20:01:32 +08:00
David Wu
2b42b3527e i2c: busses: rk3x: Sync with i2c->msg with idle state
Ensure that the I2C->msg is synchronized with the idle state,
and the I2C->msg may still be used in the stop phase, need to
wait until the I2C transfer is completed, and then set I2C->msg
to be null.

Signed-off-by: David Wu <david.wu@rock-chips.com>
Change-Id: I8a8e8c1e72f28cf4c95fe4efb559177056f483d1
2023-12-22 17:59:03 +08:00
David Wu
6272868cd8 i2c: busses: rk3x: Don't care about start ipd
If the start interrupt is not enabled, don't care about this
interrupt, clean it can slove the warning log:
"rk3x-i2c fead0000.i2c: unexpected irq in STOP: 0x10 may appear".

Signed-off-by: David Wu <david.wu@rock-chips.com>
Change-Id: I0ebb145ac7971b4c128c172e136bd1dda6e6192e
2023-12-22 17:59:03 +08:00
Huang zhibao
6ee328c3d6 arm64: dts: rockchip: rk3308-evb-audio-v10-display-rgb: add gt911 support
Change-Id: I16764d76cd60c3d735cbc243ef7c5e42c6c159dd
Signed-off-by: Huang zhibao <hzb@rock-chips.com>
2023-12-22 16:48:13 +08:00
Lan Honglin
9c85271688 media: i2c: sc530ai support thunderboot
Change-Id: Ia8214a1ea0431d3382c50a2ff97a4e21520d1005
Signed-off-by: Lan Honglin <helin.lan@rock-chips.com>
2023-12-22 16:47:17 +08:00
Chuanhu Sun
24af1ec6d3 media: i2c: sc200ai: sensor close i2c in standby mode
Signed-off-by: Chuanhu Sun <aaron.sun@rock-chips.com>
Change-Id: I67e01f1a33de020afed75ad62199672f38753560
2023-12-22 16:41:16 +08:00
Chuanhu Sun
2fe1ecb994 media: i2c: sc200ai: remove use meta fps select sensor mode
Signed-off-by: Chuanhu Sun <aaron.sun@rock-chips.com>
Change-Id: Ic8e88594e410e8c734d64230e20e7f15005a24c6
2023-12-22 16:41:16 +08:00
Tao Huang
9731742ad5 mfd: rkx110_x120: make serdes_connector_detect() static
drivers/mfd/rkx110_x120/rkx110_x120_panel.c:59:1: warning: no previous prototype for 'serdes_connector_detect' [-Wmissing-prototypes]

Fixes: 2281a7ab25 ("mfd: rkx110_x120: serdes panel register bridge and connector")
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: Ia20962a6b866a24a9c18f3e4181d6a1d616e5c49
2023-12-22 09:08:13 +08:00
Wu Bo
d5552f63b8 UPSTREAM: dm verity: don't perform FEC for failed readahead IO
We found an issue under Android OTA scenario that many BIOs have to do
FEC where the data under dm-verity is 100% complete and no corruption.

Android OTA has many dm-block layers, from upper to lower:
dm-verity
dm-snapshot
dm-origin & dm-cow
dm-linear
ufs

DM tables have to change 2 times during Android OTA merging process.
When doing table change, the dm-snapshot will be suspended for a while.
During this interval, many readahead IOs are submitted to dm_verity
from filesystem. Then the kverity works are busy doing FEC process
which cost too much time to finish dm-verity IO. This causes needless
delay which feels like system is hung.

After adding debugging it was found that each readahead IO needed
around 10s to finish when this situation occurred. This is due to IO
amplification:

dm-snapshot suspend
erofs_readahead     // 300+ io is submitted
	dm_submit_bio (dm_verity)
		dm_submit_bio (dm_snapshot)
		bio return EIO
		bio got nothing, it's empty
	verity_end_io
	verity_verify_io
	forloop range(0, io->n_blocks)    // each io->nblocks ~= 20
		verity_fec_decode
		fec_decode_rsb
		fec_read_bufs
		forloop range(0, v->fec->rsn) // v->fec->rsn = 253
			new_read
			submit_bio (dm_snapshot)
		end loop
	end loop
dm-snapshot resume

Readahead BIOs get nothing while dm-snapshot is suspended, so all of
them will cause verity's FEC.
Each readahead BIO needs to verify ~20 (io->nblocks) blocks.
Each block needs to do FEC, and every block needs to do 253
(v->fec->rsn) reads.
So during the suspend interval(~200ms), 300 readahead BIOs trigger
~1518000 (300*20*253) IOs to dm-snapshot.

As readahead IO is not required by userspace, and to fix this issue,
it is best to pass readahead errors to upper layer to handle it.

Cc: stable@vger.kernel.org
Fixes: a739ff3f54 ("dm verity: add support for forward error correction")
Bug: 316972624
Link: https://lore.kernel.org/dm-devel/b84fb49-bf63-3442-8c99-d565e134f2@redhat.com
Signed-off-by: Wu Bo <bo.wu@vivo.com>
Reviewed-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Signed-off-by: Akilesh Kailash <akailash@google.com>
(cherry picked from commit 0193e3966ceeeef69e235975918b287ab093082b)
Change-Id: I73560e5660cebdc1997e1f9926cbb8888789eb46
2023-12-22 00:57:08 +00:00
Florian Westphal
2274751099 UPSTREAM: netfilter: nft_set_pipapo: skip inactive elements during set walk
commit 317eb9685095678f2c9f5a8189de698c5354316a upstream.

Otherwise set elements can be deactivated twice which will cause a crash.

Bug: 316310313
Reported-by: Xingyuan Mo <hdthky0@gmail.com>
Fixes: 3c4287f620 ("nf_tables: Add set type for arbitrary concatenation of ranges")
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 189c2a8293)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I27fb6ee806642e23ca02700763a387341dd463e6
2023-12-21 13:56:13 +00:00
Zhengchao Shao
a72131befe UPSTREAM: ipv4: igmp: fix refcnt uaf issue when receiving igmp query packet
[ Upstream commit e2b706c691905fe78468c361aaabc719d0a496f1 ]

When I perform the following test operations:
1.ip link add br0 type bridge
2.brctl addif br0 eth0
3.ip addr add 239.0.0.1/32 dev eth0
4.ip addr add 239.0.0.1/32 dev br0
5.ip addr add 224.0.0.1/32 dev br0
6.while ((1))
    do
        ifconfig br0 up
        ifconfig br0 down
    done
7.send IGMPv2 query packets to port eth0 continuously. For example,
./mausezahn ethX -c 0 "01 00 5e 00 00 01 00 72 19 88 aa 02 08 00 45 00 00
1c 00 01 00 00 01 02 0e 7f c0 a8 0a b7 e0 00 00 01 11 64 ee 9b 00 00 00 00"

The preceding tests may trigger the refcnt uaf issue of the mc list. The
stack is as follows:
	refcount_t: addition on 0; use-after-free.
	WARNING: CPU: 21 PID: 144 at lib/refcount.c:25 refcount_warn_saturate (lib/refcount.c:25)
	CPU: 21 PID: 144 Comm: ksoftirqd/21 Kdump: loaded Not tainted 6.7.0-rc1-next-20231117-dirty #80
	Hardware name: Red Hat KVM, BIOS 0.5.1 01/01/2011
	RIP: 0010:refcount_warn_saturate (lib/refcount.c:25)
	RSP: 0018:ffffb68f00657910 EFLAGS: 00010286
	RAX: 0000000000000000 RBX: ffff8a00c3bf96c0 RCX: ffff8a07b6160908
	RDX: 00000000ffffffd8 RSI: 0000000000000027 RDI: ffff8a07b6160900
	RBP: ffff8a00cba36862 R08: 0000000000000000 R09: 00000000ffff7fff
	R10: ffffb68f006577c0 R11: ffffffffb0fdcdc8 R12: ffff8a00c3bf9680
	R13: ffff8a00c3bf96f0 R14: 0000000000000000 R15: ffff8a00d8766e00
	FS:  0000000000000000(0000) GS:ffff8a07b6140000(0000) knlGS:0000000000000000
	CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
	CR2: 000055f10b520b28 CR3: 000000039741a000 CR4: 00000000000006f0
	Call Trace:
	<TASK>
	igmp_heard_query (net/ipv4/igmp.c:1068)
	igmp_rcv (net/ipv4/igmp.c:1132)
	ip_protocol_deliver_rcu (net/ipv4/ip_input.c:205)
	ip_local_deliver_finish (net/ipv4/ip_input.c:234)
	__netif_receive_skb_one_core (net/core/dev.c:5529)
	netif_receive_skb_internal (net/core/dev.c:5729)
	netif_receive_skb (net/core/dev.c:5788)
	br_handle_frame_finish (net/bridge/br_input.c:216)
	nf_hook_bridge_pre (net/bridge/br_input.c:294)
	__netif_receive_skb_core (net/core/dev.c:5423)
	__netif_receive_skb_list_core (net/core/dev.c:5606)
	__netif_receive_skb_list (net/core/dev.c:5674)
	netif_receive_skb_list_internal (net/core/dev.c:5764)
	napi_gro_receive (net/core/gro.c:609)
	e1000_clean_rx_irq (drivers/net/ethernet/intel/e1000/e1000_main.c:4467)
	e1000_clean (drivers/net/ethernet/intel/e1000/e1000_main.c:3805)
	__napi_poll (net/core/dev.c:6533)
	net_rx_action (net/core/dev.c:6735)
	__do_softirq (kernel/softirq.c:554)
	run_ksoftirqd (kernel/softirq.c:913)
	smpboot_thread_fn (kernel/smpboot.c:164)
	kthread (kernel/kthread.c:388)
	ret_from_fork (arch/x86/kernel/process.c:153)
	ret_from_fork_asm (arch/x86/entry/entry_64.S:250)
	</TASK>

The root causes are as follows:
Thread A					Thread B
...						netif_receive_skb
br_dev_stop					...
    br_multicast_leave_snoopers			...
        __ip_mc_dec_group			...
            __igmp_group_dropped		igmp_rcv
                igmp_stop_timer			    igmp_heard_query         //ref = 1
                ip_ma_put			        igmp_mod_timer
                    refcount_dec_and_test	            igmp_start_timer //ref = 0
			...                                     refcount_inc //ref increases from 0
When the device receives an IGMPv2 Query message, it starts the timer
immediately, regardless of whether the device is running. If the device is
down and has left the multicast group, it will cause the mc list refcount
uaf issue.

Bug: 316932391
Fixes: 1da177e4c3 ("Linux-2.6.12-rc2")
Signed-off-by: Zhengchao Shao <shaozhengchao@huawei.com>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Reviewed-by: Hangbin Liu <liuhangbin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
(cherry picked from commit 94445d9583)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I277be2304e564994e05b981ccd6cd8cbb9dc85be
2023-12-21 13:35:32 +00:00
Joerg Roedel
718225bcc1 UPSTREAM: x86/sev: Check for user-space IOIO pointing to kernel space
Upstream commit: 63e44bc520

Check the memory operand of INS/OUTS before emulating the instruction.
The #VC exception can get raised from user-space, but the memory operand
can be manipulated to access kernel memory before the emulation actually
begins and after the exception handler has run.

  [ bp: Massage commit message. ]

Bug: 309733863
Fixes: 597cfe4821 ("x86/boot/compressed/64: Setup a GHCB-based VC Exception handler")
Reported-by: Tom Dohrmann <erbse.13@gmx.de>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Cc: <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 6550cbe25de182f6c0176909a90b324cb375133f)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: Ie21d33ca750d1668244c9a954cb7ab6872066c2e
2023-12-21 13:08:52 +00:00
Joerg Roedel
5b118b5b1d UPSTREAM: x86/sev: Check IOBM for IOIO exceptions from user-space
Upstream commit: b9cb9c4558

Check the IO permission bitmap (if present) before emulating IOIO #VC
exceptions for user-space. These permissions are checked by hardware
already before the #VC is raised, but due to the VC-handler decoding
race it needs to be checked again in software.

Bug: 309733863
Fixes: 25189d08e5 ("x86/sev-es: Add support for handling IOIO exceptions")
Reported-by: Tom Dohrmann <erbse.13@gmx.de>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Tested-by: Tom Dohrmann <erbse.13@gmx.de>
Cc: <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 5bb9ba7dafbe18e027e335f74372ca65f07f7edd)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I559d1ee6aa0793f7bfd7b5e603cdaba2336d0562
2023-12-21 13:08:52 +00:00
Sagi Grimberg
0edf68775a UPSTREAM: nvmet-tcp: Fix a possible UAF in queue intialization setup
commit d920abd1e7 upstream.

From Alon:
"Due to a logical bug in the NVMe-oF/TCP subsystem in the Linux kernel,
a malicious user can cause a UAF and a double free, which may lead to
RCE (may also lead to an LPE in case the attacker already has local
privileges)."

Hence, when a queue initialization fails after the ahash requests are
allocated, it is guaranteed that the queue removal async work will be
called, hence leave the deallocation to the queue removal.

Also, be extra careful not to continue processing the socket, so set
queue rcv_state to NVMET_TCP_RECV_ERR upon a socket error.

Bug: 310114968
Cc: stable@vger.kernel.org
Reported-by: Alon Zahavi <zahavi.alon@gmail.com>
Tested-by: Alon Zahavi <zahavi.alon@gmail.com>
Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Signed-off-by: Keith Busch <kbusch@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit e985d78bdcf37f7ef73666a43b0d2407715f00d3)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: Ifd7ec8294182a6bf6d8c261aeda5d989e909f7ff
2023-12-21 13:05:32 +00:00
Zhang Yubing
2281a7ab25 mfd: rkx110_x120: serdes panel register bridge and connector
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: I9711b010f1ecf0b7400d78456fe39678ce2822dc
2023-12-21 19:15:40 +08:00
Wang Panzhenzhuan
f8c185a4ab media: i2c: add gc05a2 sensor driver
Signed-off-by: Wang Panzhenzhuan <randy.wang@rock-chips.com>
Change-Id: Ifbbee5f7c136dd1a7f73cdef0c48bdaf1162ad0c
2023-12-21 18:37:44 +08:00
Weixin Zhou
aa9f543266 backlight: pwm_bl: do not suspend in lite sleep mode
Signed-off-by: Weixin Zhou <zwx@rock-chips.com>
Change-Id: Ia522f69c3edc939d00ea4aec87568d8df8af4a58
2023-12-21 18:27:56 +08:00
Damon Ding
f1c0d82ea3 arm64: dts: rockchip: rk3588-evb: add edp 8lane display board
EDP panel M280DCA supports 3840x2160p144 with 8lanes.

Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
Change-Id: I90cb80d6534c1c56610a55b8e6e90f5c9a712b5a
2023-12-21 16:59:52 +08:00
Tao Huang
3b3d502d08 Merge commit 'b9ceef773d7113416588d3d5ac8ed6f96e101dc8'
Merge made by the 'ours' strategy.

* commit 'b9ceef773d7113416588d3d5ac8ed6f96e101dc8':
  drm/rockchip: analogix_dp: add mode_valid func support

Change-Id: I499bd7fe7d7299123ca9123be4eb12e1e6f83fc1
2023-12-21 16:32:27 +08:00
Damon Ding
bdb4e83833 drm/rockchip: analogix_dp: add mode_valid func support
The edp controller can not support display timings whose
front porch or back porch is 0.

Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
Change-Id: I689f9f23154cffd7199e65767e2a977cd3404ea9
2023-12-21 16:31:20 +08:00
Sandy Huang
7904c8b820 drm/rockchip: vop2: update rk3568 max height to 4096
Usually we think rk3568 max resolution is 4096x2160, in face rk3568 can
also support 2160x4096.

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I96358f481f9e26d1196e2118b3ce3b82c4a6ce82
2023-12-21 16:28:06 +08:00
Sugar Zhang
8fb9b4c3ba ASoC: rockchip: i2s-tdm: Register PCM before DAI component
API snd_soc_register_component will try to rebind card per
each component register. and the ASoC allow no-pcm card instance.

  devm_snd_soc_register_component
      snd_soc_try_rebind_card
          snd_soc_bind_card
              snd_soc_add_pcm_runtime
  devm_snd_dmaengine_pcm_register

So, we should register PCM before DAI component.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I578b7c54b96cfa89fd2f8cf346832e2b68a1d355
2023-12-21 16:20:44 +08:00
Sugar Zhang
87d0688458 drm/bridge: synopsys: Fix no sound on some TVs
This patch do full hw params re-configuation instead of the reset one.

Fixes: 0c2c6c9430 ("drm/bridge: synopsys: Fix wrong FIFO reset on AUD_CONF0")

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I1e259797ce22cd9a3be7086e1f21bd02c440ac57
2023-12-21 16:20:44 +08:00
Jon Lin
9403086898 spi: spidev_rkslv: Support dynamic adjustment of system performance
If the DRAM frequency conversion jitters during the transmission process,
it will cause the DMA to be unable to transport SPI FIFO data in a timely
manner, resulting in FIFO overflow/underflow.

Clear performance status for short cmd packet and Set the performance
status for data packet.

Change-Id: I65532ba309677a8d98c8277875a3bd358ca44e44
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
2023-12-21 16:15:27 +08:00
Sandy Huang
c401e4da24 drm/rockchip: vop2: fix other display dev do disable and enable when disable writeback
At following commit, we update connectors_changed flag for writeback
enable lead to other display dev do disable and enable:

c7e2a3387e ("drm/rockchip: vop2: No need for a full modested when the
only writeback connector changed")

And revert the drm framework update for GKI:
82a56746d9 ("Revert "drm: Not mark crtc state as connectors_changed
when a writeback connector attatch to a crtc"")

But when writeback disable, the DRM framework still thought crtc
connectors is changed and set connectors_changed to true, this will lead
other display dev do disable and enable, so we add this commit to fix
it.

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: Ie69d63ea19110251273eb8969fc40a4fceb5e309
2023-12-21 16:13:35 +08:00
Zorro Liu
502851cb0a arm64: dts: rockchip: rk3566-eink: change dmc freq level
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
Change-Id: I8b06eff47c6a7e07a375d818c9f4c1833dd77cd5
2023-12-21 15:33:00 +08:00
Zorro Liu
26f1fe8d3e arm64: dts: rockchip: update wacom touch i2c clock frequency for rk3566-rk817-eink-w103 board
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
Change-Id: I24037b12a3a071ecccb618abd2b680a55dc79664
2023-12-21 15:33:00 +08:00
Zorro Liu
8095f0bea1 arm64: dts: rockchip: config the pmic_sleep internal pull up/down for rk3566 eink boards
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
Change-Id: I7c9c31babd2ec700d522836eeadbe2e4ce6cc819
2023-12-21 15:33:00 +08:00
Zorro Liu
40fe0e9229 arm64: dts: rockchip: set chrg_term_mode 1 for rk3566 eink boards
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
Change-Id: Ia383cf9c70acd1aaed0f6426485ebd8c7039f3eb
2023-12-21 15:33:00 +08:00
Zorro Liu
b606641874 arm64: dts: rockchip: rk3566-eink: reserve more memory for regal mode
regal mode support max size 1920x2560

Signed-off-by: Zorro Liu <lyx@rock-chips.com>
Change-Id: I98b70506925ef55f0078477f9cd78c207631f9da
2023-12-21 15:32:52 +08:00
Zorro Liu
ec9f68472f arm64: dts: rockchip: rk3566-eink: remove private dmc_opp_table
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
Change-Id: I67a150eed7519e68e67abca80ec3ee2105bbd74d
2023-12-21 15:32:52 +08:00
Zorro Liu
0ba3d090f5 arm64: dts: rockchip: rk3566-eink: update gpu opp table
improve touch interactive for rk3566-eink

Signed-off-by: Zorro Liu <lyx@rock-chips.com>
Change-Id: Ia880a417d255bd7a5a0da70d09232f2245888b2d
2023-12-21 15:32:52 +08:00
Zorro Liu
4af0b70d5e arm64: dts: rockchip: rk3566-rk817-eink-w103: assign ebc dclk
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
Change-Id: I384f758401e5d591ff0a9fe2a1c7e0326cb064c2
2023-12-21 15:26:51 +08:00
Zorro Liu
b83cf26836 input: touchscreen: support wacom w9013
Change-Id: If18a48793807a3deb0ad5bf892149281ddd68cd2
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
2023-12-21 15:23:30 +08:00
Zorro Liu
cbb5ae48bf input: touchscreen: wacom_w9013: support tilt report
Signed-off-by: Zorro Liu <lyx@rock-chips.com>
Change-Id: I03c51dab934f4fce1c7718884ea6a0cd96c354d9
2023-12-21 15:22:02 +08:00
Weixin Zhou
8e6cbb690c input: touchscreen: add cyttsp5
Signed-off-by: Weixin Zhou <zwx@rock-chips.com>
Change-Id: Id758f89bf2e41562b524767af0ebb117f422c68e
2023-12-21 14:58:27 +08:00
Tao Huang
a5216b1266 input: touchscreen: cyttsp5: Remove use of variable length array
drivers/input/touchscreen/cyttsp5/cyttsp5_mt_common.c:238:9: error: ISO C90 forbids variable length array 'ids' [-Werror=vla]

Signed-off-by: Weixin Zhou <zwx@rock-chips.com>
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I8c5c31f53b22fdb8852d9c67ee453fec52368c8f
2023-12-21 14:57:59 +08:00
Weixin Zhou
b520a8aa50 input: touchscreen: cyttsp5: fix memory out of bounds write issue
Signed-off-by: Weixin Zhou <zwx@rock-chips.com>
Change-Id: I8d58353b74b96d6014613ae01e8a25643e2a50c9
2023-12-21 14:27:14 +08:00
Tao Huang
1576d1271b Merge commit 'e56d7f65a48330f34538ac382ee500c03f0130d1'
* commit 'e56d7f65a48330f34538ac382ee500c03f0130d1':
  drm/rockchip: analogix_dp: fix panel parsing in split mode
  media: rockchip: isp: wrap mode first done don't send event
  PCI: rockchip: dw: Add dev mutex to protect elbi0 irq user
  soc: rockchip: rockchip_system_monitor: Fix list_del corruption when del video info
  video: rockchip: mpp: fix watch dog interrupt storm issue
  arm64: dts: rockchip: rk3308-evb-audio-v10-display-rgb: enable pixelclk active
  ARM: rockchip: rv1106_pm: do hptimer soft adjust
  ARM: rockchip: add hptimer functions
  ARM: dts: rockchip: rv1106: add rockchip-suspend node
  dt-bindings: suspend: add rv1106 pm related macros
  ARM: rockchip: rv1106: sleep: support pm config
  ARM: configs: rockchip: rv1106-pm: enable CONFIG_ROCKCHIP_SUSPEND_MODE
  soc: rockchip: pm_config: add compatible "rockchip,pm-config"
  soc: rockchip: pm_config: support sleep_io_config
  soc: rockchip: pm_config: add rockchip_get_cur_sleep_config function
  soc: rockchip: Kconfig: delete ROCKCHIP_SUSPEND_MODE depends on ROCKCHIP_SIP
  mfd: rkx110_x120: support pattern generator for V1
  arm64: dts: rockchip: px30: fix vopb register length error
  soc: rockchip: opp_select: Add support to parse rockchip,pvtm-voltage-sel-<name>

Change-Id: Ifa8bc1fd696f43833c9c1e755ddad1ef9bf2439b
2023-12-20 17:30:20 +08:00
Tao Huang
8a7c7e5900 Merge commit 'feecbd010e4ef7f167611fad0ec94a2a8743d3ae'
* commit 'feecbd010e4ef7f167611fad0ec94a2a8743d3ae':
  soc: rockchip: rockchip_system_monitor: Add support to use low temp pvtpll config
  cpufreq: rockchip: Add support to init pvtpll table
  soc: rockchip: opp_select: Implement rockchip_init_pvtpll_table()

Change-Id: Id31976c5958fc0f89be5f9abee838f6cc40e6e41
2023-12-20 17:22:15 +08:00
Finley Xiao
0c99583df9 soc: rockchip: rockchip_system_monitor: Add support to use low temp pvtpll config
Change-Id: Ifa96a101008587309ca10ae6c2bd76424da6039b
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2023-12-20 17:10:16 +08:00
Finley Xiao
4e248de62f soc: rockchip: opp_select: Implement rockchip_init_pvtpll_table()
This patch adds support to parse pvtpll config from devicetree, and
change config through sip smc interface.

Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: I5f23b9eb1d358a95b690ca214e35927e74451af1
2023-12-20 17:09:47 +08:00
Damon Ding
b9ceef773d drm/rockchip: analogix_dp: add mode_valid func support
The edp controller can not support display timings whose
front porch or back porch is 0.

Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
Change-Id: I689f9f23154cffd7199e65767e2a977cd3404ea9
2023-12-20 16:46:57 +08:00
Damon Ding
e56d7f65a4 drm/rockchip: analogix_dp: fix panel parsing in split mode
If using split mode with edp0 and edp1, the node of which
displays in the left area should have "split-mode" property
and config panel node, and the other does not.

Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
Change-Id: I0533df43d5fd5d9ea3fd2fb94c9a8cdab1fd59e2
2023-12-20 16:26:11 +08:00
Mingwei Yan
3312d732ba media: rockchip: isp: wrap mode first done don't send event
Signed-off-by: Mingwei Yan <mingwei.yan@rock-chips.com>
Change-Id: I723ce7df449ae4020570e79990f671eb455ba55e
2023-12-20 16:19:45 +08:00
Jon Lin
8dc5855332 PCI: rockchip: dw: Add dev mutex to protect elbi0 irq user
Change-Id: I9dad204d1d714ecbfa9ac0872123e0001499b981
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
2023-12-20 16:18:49 +08:00
Tao Huang
1b1010dfcd Merge commit 'ee4a8d1396928bad4cbe8b236903aad56682aae0'
* commit 'ee4a8d1396928bad4cbe8b236903aad56682aae0':
  firmware: rockchip_sip: support pvtpll config

Change-Id: I1c2cdb390858a2f80fa7a475b2fcf4c9c7a0571e
2023-12-20 16:14:42 +08:00
Tao Huang
12e4de7dc0 Merge commit '7fc3233fd146619a8db1a87aa3858714847ec004'
Merge made by the 'ours' strategy.

* commit '7fc3233fd146619a8db1a87aa3858714847ec004':
  soc: rockchip: opp_select: Add missing of_node_put()

Change-Id: I3220feb90ac55782e4595824c17aecbb192512ff
2023-12-20 16:14:32 +08:00
Finley Xiao
bd14f96e5e soc: rockchip: rockchip_system_monitor: Fix list_del corruption when del video info
list_del corruption, ffffffc028662d18->next is LIST_POISON1 (dead000000000100)
------------[ cut here ]------------
kernel BUG at lib/list_debug.c:47!
Internal error: Oops - BUG: 0 [#1] PREEMPT SMP
Modules linked in: 8822es(O) sprdbt_tty
Process CtrlThread (pid: 3697, stack limit = 0x0000000060d302a5)
CPU: 1 PID: 3697 Comm: CtrlThread Tainted: G           O      4.19.232 #96
Hardware name: Rockchip RK3528 DEMO4 DDR4 V10 Board (DT)
pstate: 40400005 (nZcv daif +PAN -UAO)
pc : __list_del_entry_valid+0x64/0xb0
lr : __list_del_entry_valid+0x64/0xb0
sp : ffffff800fd1bc70
x29: ffffff800fd1bc70 x28: ffffffc05c468000
x27: 0000000000000000 x26: 0000000000000000
x25: 0000000046000000 x24: 0000000000000011
x23: ffffff800fd1be60 x22: ffffff80098188a0
x21: ffffff8009818000 x20: ffffffc0462af700
x19: ffffffc028662d00 x18: ffffffffffffffff
x17: 0000000000000000 x16: 0000000000000000
x15: ffffff800934a980 x14: 4f53494f505f5453
x13: 494c207369207478 x12: 656e3e2d38316432
x11: 3636383230636666 x10: 66666666202c6e6f
x9 : 6974707572726f63 x8 : 3030303030303030
x7 : 0000000000000058 x6 : ffffffc07f74aa18
x5 : ffffffc07f74aa18 x4 : 0000000000000000
x3 : ffffffc07f753908 x2 : ac674fb1e4701200
x1 : 0000000000000000 x0 : 000000000000004e
Call trace:
 __list_del_entry_valid+0x64/0xb0
 rockchip_update_system_status+0x168/0x250
 status_store+0x1c/0x38
 kobj_attr_store+0x14/0x28
 sysfs_kf_write+0x48/0x58
 kernfs_fop_write+0xf4/0x220
 __vfs_write+0x34/0x158
 vfs_write+0xb0/0x1d0
 ksys_write+0x64/0xe0
 __arm64_sys_write+0x14/0x20
 el0_svc_common.constprop.0+0x64/0x178
 el0_svc_compat_handler+0x18/0x20
 el0_svc_compat+0x8/0x34

Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: I42e9c42d7e65c742226f82b9367466b2ed86550d
2023-12-20 15:27:59 +08:00
Yandong Lin
ea89a09451 video: rockchip: mpp: fix watch dog interrupt storm issue
The enc did not stop working when the watch dog timeout was triggered,
and still check timeout and trigger watch dog irq. It will cause watch
dog interrupt storm.

Solution:
1. Mask watch dog irq when first watch dog irq trigger.
2. Set IRQF_ONESHOT to ensure the irq handling is completed.

Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I741fe9fd96486641b1ee5d337ecc144e29778157
2023-12-20 15:10:28 +08:00