Cai Wenzhong
2ad5f7b7bf
media: i2c: maxim: local: support mode add crop rect dts config
...
1. support mode dst: crop-rect = <left top width height>
2. v4l2 get_selection: crop rect = [left, top, width, height]
Signed-off-by: Cai Wenzhong <cwz@rock-chips.com >
Change-Id: Ieab812795fad8f2d8cd3618a924f9757ff952429
2024-04-11 19:47:43 +08:00
Cai Wenzhong
3267b452f2
media: i2c: maxim: remote: add dummy sensor driver
...
Signed-off-by: Cai Wenzhong <cwz@rock-chips.com >
Change-Id: Ibb3fa990044857bd8cf20fc4f54e4fc089aa5ec4
2024-04-11 19:47:43 +08:00
Cody Xie
c534e7e6ac
arm64: dts: rockchip: Add board dts rk3576-vehicle-evb-v10-linux
...
Change-Id: I6cce3abaf74a3ab133ce2d98669bf5d9ce277f66
Signed-off-by: Cody Xie <cody.xie@rock-chips.com >
2024-04-11 16:37:41 +08:00
Zhibin Huang
e219b757a2
drm/panel: panel-simple: delete pm_runtime
...
In upstream patch, runtime pm is used to avoid excessive unprepare/
prepare.
However, some DSI panels need to be powered off and on again before
reloading the initialization sequence. If set the auto_suspend and
delay time is set to 1s, the suspend/resume callback function cannot
be entered when sleeping/waking up quickly, the power of panel cannot
be restarted, causing this timing to be abnormal and causing the panel
to not work properly.
In kernel 5.10, pm_runtime has not been used in panel-simple, but it
still runs stably in panel applications. Considering the above
reasons, we chose to revert the submission of pm_runtime upstream.
Type: Fix
Redmine ID: 460825 468692
Associated modifications:
commit 3235b0f20a ("drm/panel: panel-simple: Use runtime pm to
avoid excessive unprepare / prepare")
Test: N/A
Signed-off-by: Zhibin Huang <zhibin.huang@rock-chips.com >
Change-Id: I348e1a860e528cf4bee7ce76de0ea13c18fddd90
2024-04-11 16:22:30 +08:00
Caesar Wang
badbb91c40
arm64: dts: rockchip: enable dp0 sound for rk3576-evb1.dtsi
...
Change-Id: I4ac91cb2c76bbfa8778bb8fc79d90b3adaa409e1
Signed-off-by: Caesar Wang <wxt@rock-chips.com >
2024-04-11 16:02:41 +08:00
Chen Shunqing
800b7a4984
media: i2c: rk628 add debugfs
...
Type: Function
Redmine ID: N/A
Associated modifications: N/A
Test:
enable rk628 debug:
echo 1 > /d/rk628/3-0050/debug
hdmirx status:
cat /d/rk628/3-0050/hdmirx/status
hdmirx hdcp:
cat /d/rk628/3-0050/hdmirx/hdcp/enable
echo 1 > /d/rk628/3-0050/hdmirx/hdcp/enable
cat /d/rk628/3-0050/hdmirx/hdcp/status
Change-Id: I638710c3e4c60d15b9ca1d0a2d5d42d581bd94ff
Signed-off-by: Chen Shunqing <csq@rock-chips.com >
2024-04-11 15:36:25 +08:00
Jianwei Fan
1228527277
media: i2c: rk628: add reset rkcif when error interrupts
...
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com >
Change-Id: I31f4409fe2b4f52c04d4035ad4525c9e80f24673
2024-04-11 14:57:25 +08:00
Jianwei Fan
0e43952c98
media: platform: vicap export external soft reset function
...
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com >
Change-Id: Ib8e64185eeb237bda5ab202f24d44331d98fb861
2024-04-11 14:41:56 +08:00
Finley Xiao
c9fc251f1f
arm64: dts: rockchip: rk3576: Add low temp config for opp table
...
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com >
Change-Id: Iba3ae4544e51a6902971a4d026e271a2191a8167
2024-04-11 14:36:29 +08:00
Frank Wang
45eac64a36
phy: rockchip: inno-usb2: add more debug print
...
This adds more step prints make easy to debug.
Signed-off-by: Frank Wang <frank.wang@rock-chips.com >
Change-Id: Icf48b7d9e0d254db2fc75d3fdf713f901549e0e9
2024-04-11 14:19:30 +08:00
Zhang Yubing
fcc32041a4
drm/rockchip: dw-dp: register audio codec when dp port enable
...
Change-Id: I310c512fa388f7303da16b30be1d7a07dfe17081
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com >
2024-04-10 19:34:45 +08:00
Zhang Yubing
d3a35aa83c
drm/rockchip: dw-dp: avoid register device use the same node
...
when register 2 platform device use the same device node,
they will request the some pinctrl resource and cause
conflict. Don't use the same device node th register device
can avoid this issue.
Change-Id: I0a97bf50b80801ad09035554f2438c1c21580c1a
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com >
2024-04-10 19:34:45 +08:00
Zhibin Huang
90480c88a8
arm64: dts: rockchip: normalize for dual-channel dsi
...
Signed-off-by: Zhibin Huang <zhibin.huang@rock-chips.com >
Change-Id: I04fd3ab4c1c09cc946957d8e1013ed214505ab90
2024-04-10 19:32:38 +08:00
Zhibin Huang
70d5c5d774
ARM: dts: rockchip: rk3288 boards: normalize for dual-channel dsi
...
Signed-off-by: Zhibin Huang <zhibin.huang@rock-chips.com >
Change-Id: Ie172d4d3821ef548149ce64f3e9d3eae5e83bdde
2024-04-10 19:32:16 +08:00
Guochun Huang
49a3a07ab7
drm/rockchip: dsi2: normalize for dual-channel
...
Change-Id: Ia1687f29183315d73aeaecd848e340e58a73717a
Signed-off-by: Guochun Huang <hero.huang@rock-chips.com >
2024-04-10 19:31:34 +08:00
Zhibin Huang
6e287635a8
drm/rockchip: dsi: add support swap two channel data of MIPI
...
Signed-off-by: Zhibin Huang <zhibin.huang@rock-chips.com >
Change-Id: Ib9dd986da26bff9fb744e592522c332e721e03ac
2024-04-10 19:31:34 +08:00
Zhibin Huang
4f489b9d96
drm/rockchip: dsi: normalize for dual-channel
...
Signed-off-by: Zhibin Huang <zhibin.huang@rock-chips.com >
Change-Id: I8241ba018f3333481fa0ec63e009755a1a6c7f17
2024-04-10 19:31:34 +08:00
Zefa Chen
2d4661c496
media: rockchip: vicap disable dma adapter when use hdmi input
...
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com >
Change-Id: I20a47ca718242eb253797c851b85189b5fcf1829
2024-04-10 17:40:39 +08:00
Wangqiang Guo
4fddfc26ca
media: i2c: rk628: fix color space err on "RGB" format.
...
Change-Id: If950c7971143a411f2a83ccda92afafdb047c2d7
Signed-off-by: Wangqiang Guo <kay.guo@rock-chips.com >
2024-04-10 08:55:28 +08:00
Guochun Huang
77b8a97e6d
drm/rockchip: analogix_dp: fix Condition of CDR fail
...
In DP spec 1.3, Condition of CR fail are outlined
in section 3.5.1.2.2.1, figure 3-20:
1. Maximum Voltage Swing reached
2. Same Voltage five times
The following conditions have been optimized:
1. Training of CDR still failed while maximum voltage swing has been applied and configured
2.Removed the redundant judgment for the maximum pre-emphasis level reached
Change-Id: I829437e0294663a6cb1f31feb91e1d6a468ed681
Signed-off-by: Guochun Huang <hero.huang@rock-chips.com >
2024-04-09 19:53:05 +08:00
Weixin Zhou
4d0cc7b05a
arm64: dts: rockchip: rk3576-eink: disable unuse node display_subsystem
...
Signed-off-by: Weixin Zhou <zwx@rock-chips.com >
Change-Id: Ib473e4d1e1af40c05cc2a33085764a93fdb3a092
2024-04-09 19:52:35 +08:00
Frank Wang
cda3d64772
phy: rockchip: inno-usb2: fix deadlock when using extcon_set_state_sync
...
The tcpm tx timeout cause a deadlock among these mutex locks.
- rport->mutex in drivers/phy/rockchip/phy-rockchip-inno-usb2.c
- phy->mutex in drivers/phy/phy-core.c
- port->lock in drivers/usb/typec/tcpm/tcpm.c
The kernel report the following hung_task messages:
[ 4393.667144][ T69] Workqueue: events_freezable __dwc3_set_mode
[ 4393.667175][ T69] Call trace:
[ 4393.667187][ T69] __switch_to+0xf8/0x134
[ 4393.667209][ T69] __schedule+0x5e8/0x96c
[ 4393.667226][ T69] schedule+0x7c/0xe4
[ 4393.667244][ T69] schedule_preempt_disabled+0x24/0x40
[ 4393.667263][ T69] __mutex_lock+0x3a4/0x950
[ 4393.667282][ T69] __mutex_lock_slowpath+0x14/0x20
[ 4393.667300][ T69] mutex_lock+0x38/0x70
[ 4393.667317][ T69] rockchip_usb2phy_power_on+0x60/0x1e0
[ 4393.667339][ T69] phy_power_on+0x8c/0x108
[ 4393.667357][ T69] dwc3_core_init+0xbbc/0x17ac
[ 4393.667377][ T69] dwc3_resume_common+0x5c/0x4b8
[ 4393.667396][ T69] dwc3_runtime_resume+0x28/0x64
[ 4393.667416][ T69] pm_generic_runtime_resume+0x28/0x3c
[ 4393.667437][ T69] genpd_runtime_resume+0x1fc/0x384
[ 4393.667456][ T69] __rpm_callback+0x7c/0x3c4
[ 4393.667477][ T69] rpm_resume+0x43c/0x678
[ 4393.667496][ T69] __pm_runtime_resume+0x4c/0x90
[ 4393.667515][ T69] __dwc3_set_mode+0x5c/0x910
[ 4393.667534][ T69] process_one_work+0x1a8/0x3b8
[ 4393.667557][ T69] worker_thread+0x25c/0x430
[ 4393.667577][ T69] kthread+0xec/0x1b8
[ 4393.667597][ T69] ret_from_fork+0x10/0x20
[ 4393.667713][ T69] Call trace:
[ 4393.667725][ T69] __switch_to+0xf8/0x134
[ 4393.667744][ T69] __schedule+0x5e8/0x96c
[ 4393.667761][ T69] schedule+0x7c/0xe4
[ 4393.667778][ T69] schedule_preempt_disabled+0x24/0x40
[ 4393.667796][ T69] __mutex_lock+0x3a4/0x950
[ 4393.667814][ T69] __mutex_lock_slowpath+0x14/0x20
[ 4393.667833][ T69] mutex_lock+0x38/0x70
[ 4393.667850][ T69] phy_set_mode_ext+0x3c/0x88
[ 4393.667868][ T69] dwc3_usb_role_switch_set+0x30/0x70
[ 4393.667887][ T69] usb_role_switch_set_role+0x48/0x80
[ 4393.667907][ T69] tcpm_set_roles+0xc0/0x128
[ 4393.667925][ T69] run_state_machine+0x8d8/0x1964
[ 4393.667942][ T69] tcpm_state_machine_work+0x84/0xcc
[ 4393.667963][ T69] kthread_worker_fn+0xf4/0x228
[ 4393.667982][ T69] kthread+0xec/0x1b8
[ 4393.668001][ T69] ret_from_fork+0x10/0x20
[ 4393.668641][ T69] Workqueue: events rockchip_chg_detect_work
[ 4393.668664][ T69] Call trace:
[ 4393.668675][ T69] __switch_to+0xf8/0x134
[ 4393.668694][ T69] __schedule+0x5e8/0x96c
[ 4393.668711][ T69] schedule+0x7c/0xe4
[ 4393.668729][ T69] schedule_preempt_disabled+0x24/0x40
[ 4393.668747][ T69] __mutex_lock+0x3a4/0x950
[ 4393.668765][ T69] __mutex_lock_slowpath+0x14/0x20
[ 4393.668784][ T69] mutex_lock+0x38/0x70
[ 4393.668801][ T69] tcpm_psy_set_prop+0x1ec/0x334
[ 4393.668819][ T69] power_supply_set_property+0x28/0x3c
[ 4393.668840][ T69] charger_extcon_notifier+0x46c/0x6e4
[ 4393.668858][ T69] raw_notifier_call_chain+0x44/0x70
[ 4393.668876][ T69] extcon_sync+0x124/0x2e4
[ 4393.668895][ T69] extcon_set_state_sync+0x2c/0x3c
[ 4393.668913][ T69] rockchip_usb2phy_otg_sm_work+0x2b8/0x48c
[ 4393.668934][ T69] rockchip_chg_detect_work+0x460/0x68c
[ 4393.668954][ T69] process_one_work+0x1a8/0x3b8
[ 4393.668975][ T69] worker_thread+0x25c/0x430
[ 4393.668995][ T69] kthread+0xec/0x1b8
[ 4393.669014][ T69] ret_from_fork+0x10/0x20
Signed-off-by: Frank Wang <frank.wang@rock-chips.com >
Change-Id: I002878b1e2ac23b6c4e9e2daf6d1bd7cd8f86d0a
2024-04-09 19:44:08 +08:00
Sandy Huang
8d5b857b29
drm/rockchip: vop2: Fix UAF error at incorrect dts configuration
...
If the dts enable display_subsystem and vop, but the connector is
disabled, the KASAN can detect the following error:
[ 10.668100] rockchip-drm display-subsystem: failed to bind
27d00000.vop (ops vop2_component_ops): -19
[ 10.671051] BUG: KASAN: use-after-free in drm_mode_config_cleanup+0x15c/0x3f4
[ 10.671088] Read of size 8 at addr ffffff80c68958d8 by task swapper/0/1
[ 10.671116]
[ 10.671137] CPU: 7 PID: 1 Comm: swapper/0 Not tainted 6.1.57 #4596
[ 10.671168] Hardware name: Rockchip RK3576 EVB1 V10 Board (DT)
[ 10.671191] Call trace:
[ 10.671211] dump_backtrace+0xf4/0x114
[ 10.671244] show_stack+0x18/0x24
[ 10.671274] dump_stack_lvl+0x6c/0x90
[ 10.671304] print_report+0x15c/0x4a0
[ 10.671333] kasan_report+0xc4/0x11c
[ 10.671360] __asan_load8+0x94/0x98
[ 10.671388] drm_mode_config_cleanup+0x15c/0x3f4
[ 10.671417] rockchip_drm_bind+0x2b4/0x350
[ 10.671448] try_to_bring_up_aggregate_device+0x25c/0x2c0
[ 10.671479] component_master_add_with_match+0x1bc/0x204
[ 10.671509] rockchip_drm_platform_probe+0x3d4/0x3ec
[ 10.671541] platform_probe+0xd4/0xf4
Signed-off-by: Sandy Huang <hjc@rock-chips.com >
Change-Id: I96d7fe2322f560478d2ce51c35f6a14f44d39c7a
2024-04-09 17:57:06 +08:00
Jeffy Chen
ce94130e61
ext4: Enable DISCARD by default
...
It improves the performance and lifespan of some storages by enabling
the operating system to inform the drive when data blocks are no longer
in use, allowing for more efficient garbage collection and wear
leveling.
To disable it, use the nodiscard mount option.
Change-Id: I215ca87c00f32908c1ae233bc9304e7b647f60ea
Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com >
2024-04-09 16:10:43 +08:00
Lin Jinhan
01f0b83ddf
media: i2c: ov50c40: use linkfreq 1250M for 4096x3072
...
The current linkfreq=750M is not working properly on rk3576 dphy3.
[ 82.433231] mipi3-csi2-hw ERR1:0x1000000 (crc,vc: 0)
[ 82.433289] mipi3-csi2-hw ERR1:0x1000000 (crc,vc: 0)
[ 82.433303] mipi3-csi2-hw ERR1:0x1000000 (crc,vc: 0)
[ 82.433317] mipi3-csi2-hw ERR1:0x3000000 (crc,vc: 0 1)
[ 82.433403] mipi3-csi2-hw ERR1:0x3000000 (crc,vc: 0 1)
[ 82.433437] mipi3-csi2-hw ERR1:0x1000000 (crc,vc: 0)
[ 82.433464] mipi3-csi2-hw ERR1:0x2000000 (crc,vc: 1)
[ 82.433493] mipi3-csi2-hw ERR1:0x2000000 (crc,vc: 1)
Change-Id: Iecd7c4990e312b3245aa630da71cc686ef90a373
Signed-off-by: Lin Jinhan <troy.lin@rock-chips.com >
2024-04-09 15:43:23 +08:00
Wu Liangqing
9cf8c1b29c
arm64: dts: rockchip: rk3399-sapphire-excavator-edp-avb: rewrite bootargs for gki
...
Change-Id: I0b294097a1db25ba112b0161edfa9b358a8ff280
Signed-off-by: Wu Liangqing <wlq@rock-chips.com >
2024-04-09 15:41:47 +08:00
Cai YiWei
3b4779dbfc
media: rockchip: isp: default readback mode for multi sensor
...
Change-Id: Iebbdae5c88ccb8b50593e25684fb7874a77310b1
Signed-off-by: Cai YiWei <cyw@rock-chips.com >
2024-04-09 09:24:37 +08:00
Cai YiWei
1aef9b5255
media: rockchip: isp: aiisp two buf
...
bay3d iir_buf->read->NN->write->aiisp_buf->isp
Change-Id: I5bfd944f84a9a01639bb9488926e41468b0173ec
Signed-off-by: Cai YiWei <cyw@rock-chips.com >
2024-04-09 09:24:30 +08:00
Jon Lin
0b9cb72c24
net: wireless: rockchip_wlan: bcmdhd: Support wait l1ss state before stop dev
...
Change-Id: I25295fea65b9e3e5051937885739cd4f8efa8386
Signed-off-by: Jon Lin <jon.lin@rock-chips.com >
2024-04-08 19:56:14 +08:00
Jon Lin
daf69def71
PCI: aspm_ext: Supoprt to check l1ss state
...
Change-Id: I585d01908751cefb66935951d42cd854299469fa
Signed-off-by: Jon Lin <jon.lin@rock-chips.com >
2024-04-08 19:56:14 +08:00
William Wu
e136756b81
phy: rockchip-inno-usb2: Add independent configuration for px30
...
The px30 use the same phy configuration as rk3328,
however, in fact, they need different phy tuning
parameter, especially the ID Detector pin, px30
support the iddig status detection, but rk3328 not
support. Therefore, this patch adds independent
configuration for px30.
Fixes: 22d153d2eb ("phy: rockchip-inno-usb2: fix USB OTG not working in HOST mode for RK3328")
Change-Id: I8d6d581f3e0b91d7fa06d9c569579cdf6ba8d4bb
Signed-off-by: William Wu <william.wu@rock-chips.com >
2024-04-08 19:45:11 +08:00
Sandy Huang
8d62bc8475
drm/rockchip: vop2: check xmirror/ymirror/rotate90/rotate270 for cluster
...
1. Cluster can't support xmirror/rotate90/rotate270 when it isn't fbc
format.
2. Cluster can't support xmirror/ymirror/rotate90/rotate270 when it is
tiled format.
Signed-off-by: Sandy Huang <hjc@rock-chips.com >
Change-Id: I191c090d69177f13b0352a0df452fc050f66a74c
2024-04-08 19:33:32 +08:00
YouMin Chen
c0abcaf26c
arm64: dts: rockchip: rk3576-eink: config dmc wait-mode
...
Change-Id: If0dc2108f79be4275600e1f79886724fa9e6936e
Signed-off-by: YouMin Chen <cym@rock-chips.com >
2024-04-08 15:42:06 +08:00
YouMin Chen
49413f3975
dt-bindings: soc: rockchip-system-status: add DMC_WAIT_MODE_EBC_VBANK
...
Change-Id: Ib56c43db97b90b4f7d37dddd25b2e0896b76e7ba
Signed-off-by: YouMin Chen <cym@rock-chips.com >
2024-04-08 15:41:54 +08:00
Guochun Huang
74ecc03c86
drm/panel: simple: differentiated DSC backlight naming
...
when two single DSI work simultaneously without defining
the backlight, there will be a naming conflict as follows:
sysfs: cannot create duplicate filename '/class/backlight/dcs-backlight'
Change-Id: I25c9da720595322cd8136b715efc7822bd7e04e9
Signed-off-by: Guochun Huang <hero.huang@rock-chips.com >
2024-04-08 15:32:19 +08:00
Damon Ding
458cc490ab
BACKPORT: FROMLIST: pwm: Add a software PWM which toggles a GPIO from a high-resolution timer
...
Add a software PWM which toggles a GPIO from a high-resolution timer.
This will naturally not be as accurate or as efficient as a hardware
PWM, but it is useful in some cases. I have for example used it for
evaluating LED brightness handling (via leds-pwm) on a board where the
LED was just hooked up to a GPIO, and for a simple verification of the
timer frequency on another platform.
Since high-resolution timers are used, sleeping gpio chips are not
supported and are rejected in the probe function.
Change-Id: Idbd041a5ab40530886192a913a092643646896ad
Signed-off-by: Vincent Whitchurch <vincent.whitchurch@axis.com >
Co-developed-by: Stefan Wahren <wahrenst@gmx.net >
Signed-off-by: Stefan Wahren <wahrenst@gmx.net >
Signed-off-by: Damon Ding <damon.ding@rock-chips.com >
(cherry picked from https://patchwork.ozlabs.org/project/linux-gpio/patch/20240204220851.4783-3-wahrenst@gmx.net/ )
2024-04-07 15:08:25 +08:00
Damon Ding
8112f11f0d
FROMLIST: Documentation: pwm: Add bindings for PWM modulated by GPIO
...
Change-Id: I17e84d79f32417c98485bcbc51bbd8fdf4871eb9
Signed-off-by: Nicola Di Lieto <nicola.dilieto@gmail.com >
Co-developed-by: Stefan Wahren <wahrenst@gmx.net >
Signed-off-by: Stefan Wahren <wahrenst@gmx.net >
Signed-off-by: Damon Ding <damon.ding@rock-chips.com >
(cherry picked from https://patchwork.ozlabs.org/project/linux-gpio/patch/20240204220851.4783-2-wahrenst@gmx.net/ )
2024-04-07 15:06:27 +08:00
Damon Ding
455dbb3a22
Revert "FROMLIST: pwm: gpio: Add a generic gpio based PWM driver"
...
This reverts commit db7279d29f .
Change-Id: I1d3fef5e4cf97fbc7a48b4d2edc2e6cb25f6c20f
Signed-off-by: Damon Ding <damon.ding@rock-chips.com >
2024-04-07 14:49:45 +08:00
Zhang Yubing
c327c0a796
arm64: dts: rockchip: rk3576-evb: support more audio card for DP port
...
Change-Id: I2af72283486410a94d40079e8a6818466c145608
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com >
2024-04-07 14:31:18 +08:00
Zhang Yubing
1fcaf20df1
arm64: dts: rockchip: rk3576: support dp audio for mst
...
Change-Id: Icb44a43af457e676a1d46b0a6d615964aba77dae
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com >
2024-04-07 14:28:26 +08:00
Damon Ding
6728fc2ab3
drm/rockchip: vop2: not to request late resume in loader protect
...
There is no need to call .resume() in switching between
uboot logo and kernel logo.
Fixes: 037df56ef7 ("drm/rockchip: vop2: Add support to request early supend")
Change-Id: I3da95e20726893412386cd414f9a4fd38724d0f0
Signed-off-by: Damon Ding <damon.ding@rock-chips.com >
2024-04-07 11:28:33 +08:00
Damon Ding
b72df72412
drm/rockchip: vop: Add support to request early suspend and late resume
...
Change-Id: I837569a318cc383c27cf7eef574b2b5a66ea046e
Signed-off-by: Damon Ding <damon.ding@rock-chips.com >
2024-04-07 11:28:33 +08:00
Zhang Yubing
470fb0cd99
drm/rockchip: dw-dp: support audio in mst mode
...
Change-Id: I8f98a39518b69416e4983c773951d1f998717b44
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com >
2024-04-07 09:17:24 +08:00
Yandong Lin
7611979954
video: rockchip: mpp: rkvenc2: fix bs overflow handle
...
When bitstream buffer not enough and trigger bitstream overflow, driver
will update r/w addr for enc continue.
The patch is adapter for rk3588 and other chips using rkvenc2.
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com >
Change-Id: If778f79ef6113883c8669873f4e3e3fccb93c402
2024-04-03 19:16:15 +08:00
Sandy Huang
3a992a666d
drm/rockchip: vop2: At rk3588 splice mode we need use vp0 to set config done
...
If less this commit, it will trigger null point at the following case:
1. VP0 -> HDMI0 & HDMI1 for dual 8K splice output;
2. Play HDR video, the port_mux_cfg is update and enter additional config done;
3. The crtc for VP1 isn't registered, so the crtc state is null;
The error logs:
[ 21.985727][ T399] Unable to handle kernel NULL pointer dereference
at virtual address 0000000000000165
[ 21.986201][ T238] ueventd: restorecon_recursive:
/sys/devices/platform/fde80000.hdmi/extcon/extcon11
[ 21.986563][ T399] Mem abort info:
[ 21.986565][ T399] ESR = 0x0000000096000005
[ 21.986568][ T399] EC = 0x25: DABT (current EL), IL = 32 bits
[ 21.988612][ T399] SET = 0, FnV = 0
[ 21.988943][ T399] EA = 0, S1PTW = 0
[ 21.989284][ T399] FSC = 0x05: level 1 translation fault
[ 21.989776][ T399] Data abort info:
[ 21.990095][ T399] ISV = 0, ISS = 0x000000
...
[ 22.003577][ T399] Call trace:
[ 22.003864][ T399] vop2_cfg_done+0x11c/0x184
[ 22.004262][ T399] vop2_setup_port_mux+0xdc/0x1b8
[ 22.004693][ T399] vop2_crtc_atomic_begin+0x2a50/0x2c90
[ 22.005177][ T399] drm_atomic_helper_commit_planes+0x40/0x1e0
[ 22.005706][ T399]
rockchip_drm_atomic_helper_commit_tail_rpm+0x1b4/0x26c
[ 22.006320][ T399] commit_tail+0xa4/0x154
[ 22.006696][ T399] drm_atomic_helper_commit+0x1c4/0x1e4
[ 22.007178][ T399] drm_atomic_commit+0xa4/0xd0
[ 22.007589][ T399] drm_mode_atomic_ioctl+0x5e4/0x754
[ 22.008051][ T399] drm_ioctl_kernel+0x80/0xf8
[ 22.008461][ T399] drm_ioctl+0x2d4/0x554
Signed-off-by: Sandy Huang <hjc@rock-chips.com >
Change-Id: I9076a866fe82c8f8972b94d09fbb5c7e1eb8e61a
2024-04-03 15:12:50 +08:00
Sandy Huang
85087083de
drm/rockchip: fb: Fix kenrel panic when cat /d/dri/0/state at kernel logo stage
...
when userspace cat /d/dri/0/state, the driver will try to dump gem info
throught obj->funcs->print_info(p, indent, obj), if logo gem object less
funcs init, it will appears the following error:
[ 52.587405][ T2156] pc : drm_gem_print_info+0xcc/0xf8
[ 52.587862][ T2156] lr : drm_gem_print_info+0xc8/0xf8
[ 52.588313][ T2156] sp : ffffffc00e35ba30
[ 52.588664][ T2156] x29: ffffffc00e35ba30 x28: 00000000010e0000 x27:
0000000000000000
[ 52.589358][ T2156] x26: 0000000000000004 x25: ffffff80c0c57150 x24:
000000000000010e
[ 52.590051][ T2156] x23: ffffffc009bcdd48 x22: ffffffc009bcdd48 x21:
ffffffc00e35bba8
[ 52.590744][ T2156] x20: 0000000000000004 x19: ffffff80c5cae0d0 x18:
ffffffc00d92d080
[ 52.591437][ T2156] x17: 0000000000000000 x16: 00000000000000a4 x15:
ffffffc0094a4174
[ 52.592130][ T2156] x14: 0000000000000000 x13: 000000000000004e x12:
ffff0000ffffff00
[ 52.592824][ T2156] x11: 0000000000000000 x10: 0000000000001000 x9 :
4f57b917247aff00
[ 52.593516][ T2156] x8 : 0000000000000000 x7 : 3d646574726f706d x6 :
000000000000000a
[ 52.594209][ T2156] x5 : ffffff80c5f08216 x4 : ffffffc009bbfcb5 x3 :
ffff0a00ffffff04
[ 52.594902][ T2156] x2 : 0000000000000001 x1 : ffffffc009bbfcb4 x0 :
0000000000000010
[ 52.595595][ T2156] Call trace:
[ 52.595882][ T2156] drm_gem_print_info+0xcc/0xf8
[ 52.596301][ T2156] drm_framebuffer_print_info+0x19c/0x2f4
[ 52.596799][ T2156] drm_atomic_plane_print_state+0xb8/0x1d0
[ 52.597305][ T2156] __drm_state_dump+0x7c/0x1a0
[ 52.597714][ T2156] drm_state_info+0x50/0x7c
[ 52.598101][ T2156] seq_read_iter+0x128/0x414
[ 52.598499][ T2156] seq_read+0x90/0xc8
[ 52.598841][ T2156] full_proxy_read+0x6c/0xf4
[ 52.599240][ T2156] vfs_read+0xe8/0x27c
[ 52.599594][ T2156] ksys_read+0x78/0xe4
before the following commit, drm_gem_print_info() function will check obj->funcs confirm is !NULL,
and then call obj->funcs->print_info, this can avoid kernel panic.
commit d693def4fd ("drm: Remove obsolete GEM and PRIME callbacks from struct drm_driver")
https://patchwork.freedesktop.org/patch/391822/
Signed-off-by: Sandy Huang <hjc@rock-chips.com >
Change-Id: I7236ac7f3f5475e6446546f069146a3fa0d7f2fe
2024-04-03 15:12:01 +08:00
Sandy Huang
aebca4f07f
drm/rockchip: vop2: filter unsupported mode when can't get correct dclk
...
For rk3576 and rk3588, vop dclk can be from pll or hdmi phy[except hdmi
2.1(dclk bigger than 597M), the HDMI work at FRL mode], when dclk is
from pll, dclk_parent is equal to dclk, we need clk_round_rate() for dclk_parent to
check whether can support this mode.
1. GPLL/CPLL/VPLL
dclk_parent
dclk
2. xin24m
clk_hdmiphy_pixel0
dclk
Signed-off-by: Sandy Huang <hjc@rock-chips.com >
Change-Id: I4541d41c3fda5b8ff989e19e8dbf686b15e81216
2024-04-03 15:10:27 +08:00
David Wu
2ce0e75bee
arm64: configs: rockchip: Enable CONFIG_NO_HZ_FULL for rt config
...
Change-Id: Ibffbc5d25afd82c9fc966b109b3cf692732fb027
Signed-off-by: David Wu <david.wu@rock-chips.com >
2024-04-03 14:35:27 +08:00
YouMin Chen
f91e805f2a
arm64: dts: rockchip: rk3576-linux: enable dmc
...
Change-Id: Iedb07a132b2cea5fef2c172d071144e955728e21
Signed-off-by: YouMin Chen <cym@rock-chips.com >
2024-04-03 12:25:04 +08:00
Caesar Wang
123aba2eed
arm64: dts: rockchip: add rk3576-iotest.dtsi for rk3576-iotest-v10-linux.dts
...
Change-Id: If1576ed44e7196e0f63b2e243c2469119e1ceb20
Signed-off-by: Caesar Wang <wxt@rock-chips.com >
2024-04-03 12:23:56 +08:00