Commit Graph

1064979 Commits

Author SHA1 Message Date
Herman Chen
7eb71ee55c video: rockchip: mpp: Fix combo hardware issue
With multi core patch it will be lack of core id at old combo
hardware probe process.

The error log is shown below on device probe:
mpp_vepu2 ff650000.vepu: can not attach device with same id 0

And also kernel crach on mpp library init.

Signed-off-by: Caesar Wang <wxt@rock-chips.com>
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I92ea5fc3575dad9236878235a396d02da7a3fba5
2022-02-15 17:21:00 +08:00
Addy Ke
33af23ddcf arm64: configs: add rk3588_edge.config for edge
make ARCH=arm64 rockchip_linux_defconfig rk3588_edge.config

Signed-off-by: Addy Ke <addy.ke@rock-chips.com>
Change-Id: Id7eb2364c0f65e4d3954eb4c7f66d4bfd8acdfcf
2022-02-15 17:08:35 +08:00
Yu Qiaowei
d7116b7931 video: rockchip: rga3: Fix compile warning about 'make W=1 ...'
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: Idc6656489051ff75abcca19acd362c52d5513226
2022-02-15 17:06:29 +08:00
Algea Cao
ccbe4263a2 drm/rockchip: dw_hdmi: Use HDMI global colorspace property
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I7e645fe4b7f59a527834b810d5c64c3a7cd580d3
2022-02-15 17:00:16 +08:00
Algea Cao
925a72f42b drm/rockchip: dw_hdmi: Unified HDMI properties name to rk standard names
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I80977bd6da6faa9ac4c355da860c9559f7643a55
2022-02-15 16:59:50 +08:00
Algea Cao
0171f55e64 arm64: dts: rockchip: rk3588: Support rk3588 hdmi uboot logo
Add route-hdmi1 node

Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I83fbd70e0b873d26292e0298af560e302a8c9cf7
2022-02-15 16:58:00 +08:00
Algea Cao
4adb1baf91 drm/rockchip: vop2: Don't check mode valid when use hdmiphy-pll
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I23d5d097ff35d818021eaa09dd6af0e9906c6b4d
2022-02-15 16:56:42 +08:00
Algea Cao
e9dc995898 drm/rockchip: dw_hdmi: Support rk3588 kernel logo display
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I2e946ad0e71901229ca201af18566e099d8fa2ed
2022-02-15 16:09:48 +08:00
Algea Cao
6513e0cce3 phy: rockchip-samsung-hdptx-hdmi: Support phy as uboot dclk source
For support kernel logo, don't disable phy when phy probe.

Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I04168e1374104480c1fa611539938f1374967bd7
2022-02-15 15:14:58 +08:00
Algea Cao
ab176f555a drm/rockchip: dw_hdmi: Only clear output interface flag when hdmi disable
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I19bf8a9e8de541b7a9b4f30421b7d9a5d75ae00c
2022-02-15 14:32:28 +08:00
Ai ShaoXiang
7d1001ba5d drm/rockchip: vop2: vcnt event use signal to fill user_data
The userspace transmits private data through request.signal,
vcnt event return it to userspace through vbl.userdata

Change-Id: I8295a3d4fd91430b3b9fac6c5b6b526e1f266f24
Signed-off-by: Ai ShaoXiang <aisx@rock-chips.com>
2022-02-15 14:26:16 +08:00
Cai YiWei
ac4241d915 media: rockchip: isp: fix isp30 uyvy format error
Change-Id: Ic92347cff6af98813d406f44f6a9ca50cf96a50c
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-02-15 14:08:59 +08:00
Elaine Zhang
cf1e77119b arm64: dts: rockchip: rk3588: fix can0 dts node
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
Change-Id: I61643022835287dcf8879cadc0ea38dd900604ac
2022-02-14 18:28:09 +08:00
Jianwei Fan
c5e0f84e44 media: i2c: fp5510: adapt sensor driver to kernel-5.10
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
Change-Id: I7a4ebb39e8b8106173cfb6e857718264ecdeaabb
2022-02-14 16:17:33 +08:00
Damon Ding
f031ad34e5 drm/rockchip: add config option of DRM DP support
Add config option to modularize the DP interface support of DRM.

./ksize.sh  drivers/gpu/drm/

before ksize: 536734 Bytes
after  kszie: 487941 Bytes
save   about:  48793 Bytes

Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
Change-Id: Ie2157fad13a71a3099b79085e0de40efe4b4ab34
2022-02-14 15:51:31 +08:00
Andy Yan
4c759b0426 drm/rockchip: vvop: send last vblank when vblank disable
Fix the warning:
[   32.660604] virtual-vop virtual-vop: [drm:vvop_vblank_simulate]
[   32.677230] virtual-vop virtual-vop: [drm:vvop_vblank_simulate]
[   32.693872] virtual-vop virtual-vop: [drm:vvop_vblank_simulate]
[   32.710535] virtual-vop virtual-vop: [drm:vvop_vblank_simulate]
[   32.716379] rockchip-drm display-subsystem:[drm:vvop_crtc_atomic_disable]
[   32.716412] rockchip-drm display-subsystem: [drm:vvop_disable_vblank]
[   32.716446] drm_atomic_helper_commit_hw_done start
[   32.716458] ------------[ cut here ]------------
[   32.716515] WARNING: CPU: 2 PID: 243 drivers/gpu/drm/drm_atomic_helper.c:2214
               drm_atomic_helper_commit_hw_done+0xe0/0x138
[   32.716539] Modules linked in: bcmdhd
[   32.716571] CPU: 2 PID: 243 Comm: HwBinder:231_1 Not tainted 4.19.193
[   32.716595] Hardware name: Rockchip RK3568 EVB1 DDR4 V10 Board (DT)
[   32.716624] pstate: 40400009 (nZcv daif +PAN -UAO)
[   32.716653] pc : drm_atomic_helper_commit_hw_done+0xe0/0x138
[   32.716679] lr : drm_atomic_helper_commit_hw_done+0xe0/0x138

Change-Id: Ia2ff790f685d4c5421a21f958a9f466179cd64a8
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
2022-02-14 15:38:31 +08:00
Andy Yan
0f72190031 drm/rockchip: vvop: Enable hrtimer for vblank simulate
Start hrtimer when enable vblank.

Change-Id: If0f914e8da61f811347e3dabdaf8630e7aa92cb7
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
2022-02-14 15:38:25 +08:00
Andy Yan
3ea74ab3c9 drm/rockchip: Add a virtual vop driver
Some times we only want use some of the module
of rockchip vop driver(et: rkmpp some times only
wat to use rockchip drm gem),
the real vop drivers is not needed to load.

Add a virtual vop driver let the rockchip drm launch.

Enabled by add following to you dts:

display_subsystem: display-subsystem {
	compatible = "rockchip,display-subsystem";
}

Change-Id: Id6cd14a735eabaf8b4949330d56f77354e50c51c
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
2022-02-14 15:33:36 +08:00
Cai YiWei
ee825cfce0 media: rockchip: isp: check virtual isp link to hw
Change-Id: I817a08e63cfd147f2ee3fbb3aac477c3b4809f10
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-02-14 14:37:02 +08:00
Zhang Yubing
0b9e53c6df drm/rockchip: vop2: optimize the hdmi phy pll assignment.
Here are 2 hdmi phy pll can use for video port dclk.
There are strategies of how to use hdmi phy pll as follow:
1. hdmi phy pll can be used for video port0/1/2 when output
format under 4K@60Hz;
2. When a video port connect both hdmi0 and hdmi1(may also
connect other output interface), it must hold the hdmi0
and hdmi1 phy pll, and other video port can't use it. if
request dclk is under 4K@60Hz, set the video port dlk parent
as hdmi0 phy pll.if hdmi0 or hdmi1 phy pll is used by other
video port, report a error.
3. When a video port(A) connect hdmi0(may also connect other
output interface but not hdmi1), it must hold the hdmi0
phy pll, and other video port can't use it. If both hdmi0
and hdmi1 phy pll is used by other video port, report a error.
If hdmi0 phy pll is used by another video port(B) and hdmi1
phy pll is free, set hdmi1 phy pll as video port(B) dclk parent
and video port(A) hold hdmi0 phy pll. If hdmi0 phy pll is free,
video port(A) hold hdmi0 pll. If video port(A) hold hdmi0 phy
pll and request dclk is under 4k@60Hz, set hdmi0 phy pll as
video port(A) dclk parent.
4. When a video port(A) connect hdmi1(may also connect other
output interface but not hdmi0), it must hold the hdmi1 phy
pll, and other video port can't use it. If both hdmi0 and hdmi1
phy pll is used by other video port, report a error. If hdmi1
phy pll is used by another video port(B) and hdmi0 phy pll is
free, set hdmi0 phy pll as video port(B) dclk parent and video
port(A) hold hdmi1 phy pll. If hdmi1 phy pll is free, video
port(A) hold hdmi1 pll. If video port(A) hold hdmi1 phy pll and
request dclk is under 4k@60Hz, set hdmi1 phy pll as video port(A)
dclk parent.
5. When a video port connect dp(0, 1, or both, may also connect
other output type but not hdmi0 and hdmi1). If the request dclk
is higher than 4K@60Hz or video port id is 2, do nothing. Otherwise
get a free hdmi phy pll as video port dclk parent. If no free hdmi
phy pll can be get, report a error.

Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: If412cc2418561315be8e2ad82384be085000a957
2022-02-14 14:27:21 +08:00
Jianqun Xu
d867bff13a pinctrl: rockchip: fix rk3588 pin config registers offset error
Fix error offset for pin config between GPIO2_A0 - GPIO2_C4

Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: I62fc70d97b7f79a42aa4a370df8c6ff8f7d9745b
2022-02-14 14:25:42 +08:00
Yu Qiaowei
f9452876d5 video: rockchip: rga3: Add rga_common
And fix bug in address calculation in 422p format.

Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: Id0d7b3ad786dbec3774835f3a288448fe5107014
2022-02-14 10:55:28 +08:00
Jianwei Fan
3cc4ad4b2d arm64: rockchip_defconfig: enable CONFIG_VIDEO_FP5510
Enable CONFIG_VIDEO_FP5510 used for s5k3l6xx which found on
rk3588s tablet rk806 single board

Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
Change-Id: If561e1feecf4cf3c7672594edbc156c2bf90533a
2022-02-14 10:54:11 +08:00
Jianwei Fan
0d08aa66f3 arm64: dts: rockchip: rk3588s-tablet-rk806-single: add camera vcm driver fp5510 configuration
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
Change-Id: Ib866e8d5c14d12911c6bc64d9879c10548e83e4e
2022-02-14 10:52:13 +08:00
Zefa Chen
bcb8a5d1ce media: rockchip: vicap: modifies the allocation of dummy buffers
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Ie58d79e7bba999a4000ea4fd2f8c80d9dc3b74fa
2022-02-11 20:40:25 +08:00
Zefa Chen
1b1ec94d63 media: rockchip: vicap support to check group sync state
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Iff14c0108ba1a1e913177d307e47c0b97c27f7f5
2022-02-11 19:54:39 +08:00
Zhang Yubing
d10dfe46c2 phy: rockchip: usbdp: Add lock for interface functions
Interface functions may call by different threads, which may
access the same value at the same time. So we need add mutex
lock.

Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: I682820c0eb366d514e21cc54f9ab97d5039a0814
2022-02-11 19:00:23 +08:00
Shawn Lin
20d9a60a89 PCI: rockchip: dw: Remove rockchip,prsnt-active-high
gpiod_get_value would take gpio active state into count. So
the default pattern should be like prsnt-gpios = <&gpio4 15 GPIO_ACTIVE_LOW>
to indicate that 1 means no devices. If we need 0 to indicate no devices,
we should use GPIO_ACTIVE_HIGH instead.

Fixes: cca1a93b9e ("PCI: rockchip: dw: Add present IO detect")
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Change-Id: Ic34debabfccdac357c52df427573decc65eea83f
2022-02-11 18:58:28 +08:00
Lin Jinhan
1a23826f51 crypto: rockchip: v2: modify the length limit under user_ptr
When using user buffer, hardware crypto is used regardless of
 whether the data length is greater than 32K.

Signed-off-by: Lin Jinhan <troy.lin@rock-chips.com>
Change-Id: I3228910def265765e772da1ab4eda3b54d9927cb
2022-02-11 16:19:04 +08:00
Hongming Zou
f69206a363 arm64: dts: rockchip: update rk3588 pc demo board
Signed-off-by: Hongming Zou <hongming.zou@rock-chips.com>
Change-Id: I8fa1c8eadc13dc2664cbe5860dc0f56a36b28d57
2022-02-11 16:15:04 +08:00
Andy Yan
cf54ca6ff6 drm/rockchip: vop2: reverse list the internal pd when power down
Cluster0_PD is a parent power domain for Cluster1/2/3_PD,
it should be power on first and power down last.

use list_for_each_entry_safe_reverse to make sure the
right order.

Fixes: 8684b9914503("drm/rockchip: vop2: power off all vop pd when enter
suspend mode")

Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Change-Id: I50a5d53de40131d4878b8e1d4a065ce2b96eb2c8
2022-02-11 16:07:25 +08:00
Yu Qiaowei
5c4772a66b video: rockchip: rga3: Fix some bugs about import
1. Fix dma_fd cannot be imported when only RGA2.
2. fix crash in fill mode.

Update driver version to 1.2.2

Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: Ib71b381c9e784f9eee8be925e80cfb27f0be2563
2022-02-11 15:58:22 +08:00
Li Huang
8442472c30 video: rockchip: rga3: suit for kernel 4.19
Signed-off-by: Li Huang <putin.li@rock-chips.com>
Change-Id: I753e47fe7df8dee11a815db8f13834e722034db5
2022-02-11 15:58:07 +08:00
Zhang Yubing
e7599abc64 phy: rockchip: usbdp: adjust phy parameters for SI test
According to the result of SI test, adjust the ssc, voltage
swing, pre-emphasis to improve the phy compatibility.

Different rates use different parameters. The rbr and hbr
use the same parameters. Note that Type-C port's parameters
and DP standard port's parameters are different when the
lane rate is rbr or hbr.

Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: I27a8a846a198c7feabf1aaf1459a7df056e4312a
2022-02-11 14:11:15 +08:00
Chen Shunqing
577e8c4548 power: supply: bq25890: fix warning of pd notifier call
pc : rcu_note_context_switch+0x358/0x5a0
lr : __schedule+0x80/0x794
sp : ffffffc013233880
x29: ffffffc013233880 x28: 0000000000000002
x27: 0000000000000001 x26: ffffff81fe734c40
x25: ffffffc011ef1c40 x24: ffffff8102d5b590
x23: ffffffc011edc000 x22: 0000000000000002
x21: ffffffc1ec843000 x20: 0000000000000000
x19: ffffff8102909280 x18: ffffffc0130f10a0
x17: 0000000001000000 x16: 0000000000000002
x15: ffffff8102d9f100 x14: 0000000000000001
x13: 0000000000000001 x12: 0000000000000000
x11: 0000000000000001 x10: 0000000000000001
x9 : dead0000000005f6 x8 : 0000000000000001
x7 : 6eff726462687564 x6 : 00001cef92349520
x5 : 0000000000000000 x4 : 0000000000000001
x3 : 00000000fffea2c8 x2 : 0000000000000001
x1 : ffffffc011c34096 x0 : 0000000000000000
Call trace:
 rcu_note_context_switch+0x358/0x5a0
 __schedule+0x80/0x794
 schedule+0xa0/0xe8
 schedule_timeout+0x84/0x124
 rk3x_i2c_xfer_common+0x3cc/0x630
 rk3x_i2c_xfer+0x18/0x28
 __i2c_transfer+0x254/0x79c
 i2c_transfer+0xa4/0x100
 regmap_i2c_read+0x58/0x98
 _regmap_raw_read+0x290/0x42c
 _regmap_bus_read+0x48/0x84
 _regmap_read+0x188/0x24c
 _regmap_update_bits+0x90/0x10c
 regmap_field_update_bits_base+0x70/0xa4
 bq25890_pd_notifier_call+0x148/0x168
 atomic_notifier_call_chain+0x50/0x90
 power_supply_changed_work+0x80/0xd0
 process_one_work+0x1f4/0x490
 worker_thread+0x278/0x4dc
 kthread+0x13c/0x344
 ret_from_fork+0x10/0x30

Signed-off-by: Chen Shunqing <csq@rock-chips.com>
Change-Id: I2d42e2115daa99196bb77da577eafa0a94a91008
2022-02-10 20:08:46 +08:00
shengfei Xu
56213b16f7 mfd: rk806: digital output 2MHz clock force enable
Signed-off-by: shengfei Xu <xsf@rock-chips.com>
Change-Id: I19c3b55fcd8030d817c231db4eba9663f5a550d6
2022-02-10 15:17:10 +08:00
Lin Jinhan
d54578aabc crypto: rockchip: v2: modify the length limit under dma_fd
When using DMA_fd, hardware crypto is used regardless of
 whether the data length is greater than 32K.

Signed-off-by: Lin Jinhan <troy.lin@rock-chips.com>
Change-Id: Ifcc78bca17beb99ae7eae73f3def6ebf55f5cf1b
2022-02-10 15:10:12 +08:00
William Wu
388805c56b phy: rockchip: inno-usb2: correctly handle otg sm work
RK3588 has two OTG controllers, OTG0 is configured as
OTG mode, and OTG1 is configured as host mode. The OTG1
doesn't init the otg sm work, so it can only handle the
otg sm work if the func of the work is initialized.

This patch can fix the warning if the logic is power off
during deep sleep on RK3588 EVB2.

WARNING: CPU: 0 PID: 145 at kernel/workqueue.c:3057 __flush_work+0x26c/0x28c
Modules linked in:
CPU: 0 PID: 145 Comm: irq/106-rockchi Not tainted 5.10.66 #720
Hardware name: Rockchip RK3588 EVB2 LP4 V10 Board (DT)
pstate: 60c00009 (nZCv daif +PAN +UAO -TCO BTYPE=--)
pc : __flush_work+0x26c/0x28c
lr : __cancel_work_timer+0x11c/0x1c0
......
Call trace:
 __flush_work+0x26c/0x28c
 __cancel_work_timer+0x11c/0x1c0
 cancel_delayed_work_sync+0x18/0x2c
 rockchip_usb2phy_bvalid_irq+0xf4/0x144
 rockchip_usb2phy_irq+0x368/0x384
 irq_thread_fn+0x34/0x88
 irq_thread+0x1a4/0x248
 kthread+0x13c/0x344
 ret_from_fork+0x10/0x30

Signed-off-by: William Wu <william.wu@rock-chips.com>
Change-Id: I42b5f6d22df3f7f94d54f05083694fb49e382620
2022-02-10 15:08:28 +08:00
Finley Xiao
003bfa520d soc: rockchip: opp_select: Don't remove static OPP
Only dynamic OPPs can be removed by dev_pm_opp_remove.

Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: I7362e7f58927ea9258c5abe761833e9fdc5e7656
2022-02-09 20:22:44 +08:00
Finley Xiao
3b2f4c277f PM / devfreq: rockchip_dmc: Fix WARNING when remove static OPP
Only dynamic OPPs can be removed by dev_pm_opp_remove.

[    2.484575][    T9] ------------[ cut here ]------------
[    2.485095][    T9] WARNING: CPU: 1 PID: 9 at drivers/opp/core.c:1205 dev_pm_opp_put_opp_table+0x130/0x138
[    2.487307][    T9] Modules linked in:
[    2.488411][    T9] CPU: 1 PID: 9 Comm: kworker/u16:1 Not tainted 5.10.66 #1871
[    2.489755][    T9] Hardware name: Rockchip RK3588 EVB1 LP4 V10 Board (DT)
[    2.491020][    T9] Workqueue: events_unbound deferred_probe_work_func
[    2.492845][    T9] pstate: 20800009 (nzCv daif -PAN +UAO -TCO BTYPE=--)
[    2.494247][    T9] pc : dev_pm_opp_put_opp_table+0x130/0x138
[    2.494759][    T9] lr : dev_pm_opp_put_opp_table+0x88/0x138
[    2.494767][    T9] sp : ffffffc01220b990
[    2.496151][    T9] x29: ffffffc01220b990
[    2.497399][    T9] x28: ffffff8102cc1488
[    2.498665][    T9]
[    2.498668][    T9] x27: 0000000000000000 x26: 00000000ffffffea
[    2.498675][    T9] x25: ffffffc0118d3536 x24: ffffff8103da5810
[    2.502111][    T9] x23: ffffff8103febf00 x22: dead000000000100
[    2.502680][    T9] x21: ffffff8101058010 x20: ffffff8102cc1800
[    2.503211][    T9] x19: ffffff8102cc1878 x18: ffffffc0120b5088
[    2.503742][    T9] x17: 0000000000000000 x16: 00000000000000d8
[    2.504273][    T9] x15: 0000000000000004 x14: 0000000000003fff
[    2.504812][    T9] x13: ffffffc011bec968 x12: 0000000000000003
[    2.506346][    T9] x11: 0000000000000000 x10: ffffffc1ed335000
[    2.507322][    T9] x9 : ffffff8103febe00 x8 : ffffff8102cc1868
[    2.507853][    T9] x7 : 342e32202020205b x6 : ffffffc011fc9db8
[    2.508385][    T9] x5 : ffffffffffffffff x4 : ffffff81fee890a0
[    2.508918][    T9] x3 : 0000000000000c59 x2 : ffffff8103da5500
[    2.509454][    T9] x1 : 0000000000000000 x0 : 0000000000000000
[    2.509988][    T9] Call trace:
[    2.510269][    T9]  dev_pm_opp_put_opp_table+0x130/0x138
[    2.510746][    T9]  dev_pm_opp_remove+0xe0/0xe4
[    2.511161][    T9]  rockchip_get_freq_info+0xd4/0x294
[    2.511614][    T9]  rk3588_dmc_init+0x148/0x234
[    2.512024][    T9]  rockchip_dmcfreq_probe+0x2f0/0x1498
[    2.512489][    T9]  platform_drv_probe+0x9c/0xc4
[    2.512910][    T9]  really_probe+0x204/0x510
[    2.513331][    T9]  driver_probe_device+0x80/0xc0
[    2.513788][    T9]  __device_attach_driver+0x118/0x140
[    2.514249][    T9]  bus_for_each_drv+0x84/0xd4
[    2.514654][    T9]  __device_attach+0xc0/0x158
[    2.515059][    T9]  device_initial_probe+0x18/0x28
[    2.515486][    T9]  bus_probe_device+0x38/0xa0
[    2.515891][    T9]  deferred_probe_work_func+0x80/0xe0
[    2.516352][    T9]  process_one_work+0x1f4/0x490
[    2.516768][    T9]  worker_thread+0x324/0x4dc
[    2.517164][    T9]  kthread+0x13c/0x344
[    2.517516][    T9]  ret_from_fork+0x10/0x30

Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: I5638b51e1e1f651c0a6755cebf9529fe64be4419
2022-02-09 20:22:34 +08:00
Finley Xiao
c572fc0487 soc: rockchip: opp_select: Fix safe rate error
Replace tmp_safe_rate type with unsigned long.

Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: I6677eea0a76448d58d0ef1e23ceb0cfcf393c80a
2022-02-09 20:22:25 +08:00
Damon Ding
53e774ac86 drm/rockchip: vop: separate the of_device_id array by different SoC
Separate the process of device matching by the different SoC macro
definitions, which can reduce memory usage.

./ksize.sh  drivers/gpu/drm/

before ksize: 565102 Bytes
after  kszie: 526734 Bytes
save   about:  38368 Bytes

Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
Change-Id: I6b3689b11598120aad16956235d1ee2bbdbe80e0
2022-02-09 19:48:43 +08:00
Sugar Zhang
e5c34ac367 ARM: dts: rockchip: Add support for RV1106/3 EVB REF Board
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Ia8e91f17aa429207caf9d5ca8a1570ef4d9e4e82
2022-02-09 09:29:15 +08:00
Sugar Zhang
f164131252 ARM: dts: rockchip: Add core dtsi for RV1106/3
RV1106/3 is a highly integrated vision processor SoC
for IPC, especially for AI related application.

Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I77650867696ac94c0a9ab9ad3b6ddaeea6121169
2022-02-09 09:24:32 +08:00
Jianwei Fan
98f59f4f3a arm64: rockchip_defconfig: enable CONFIG_VIDEO_S5K3L6XX
Enable CONFIG_VIDEO_S5K3L6XX which found on rk3588s tablet
rk806 single board

Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
Change-Id: If06becce1e3209feccff6d0975fdb17f81df26c1
2022-02-08 20:18:26 +08:00
Jianwei Fan
cb409c05ac arm64: dts: rockchip: rk3588s-tablet-rk806-single: add camera configuration
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
Change-Id: Ica76e81538b92afefb0693b760a1020f2269d520
2022-02-08 20:15:50 +08:00
Jianwei Fan
ed07815405 media: i2c: s5k3l6xx: add s5k3l6xx camera driver
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
Change-Id: I140414d9c54af22818852812bf436d562c6d5b0b
2022-02-08 20:13:10 +08:00
Zhen Chen
8556e654d6 MALI: bifrost: fix panic "stack is corrupted in: kbase_get_real_power_locked"
The panic was triggered
by running "cat /sys/kernel/debug/mali0/ipa_current_power".

It is fixed by enlarging KBASE_IPA_BLOCK_TYPE_NUM according to the fact
that we set 4 clks for GPU in rk3588 dts.

Change-Id: I3a87f6f2d25cf296d95d033d3d98c51666ea482d
Signed-off-by: Zhen Chen <chenzhen@rock-chips.com>
2022-02-08 20:11:31 +08:00
Ziyuan Xu
e1ebd0062d mmc: free the available reserved memory of escd when CONFIG_ROCKCHIP_THUNDER_BOOT=y
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
Change-Id: I77c69d579c9121adde94ffc2e68514a9fd34e870
2022-02-08 19:27:52 +08:00
Ziyuan Xu
ba941e36cc soc: rockchip: thunderboot_mmc: make sense of the *free_reserved_area*
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
Change-Id: I5470dadd845c706cae305f8f60b721b9904a7ddb
2022-02-08 19:27:52 +08:00