Commit Graph

1066037 Commits

Author SHA1 Message Date
Zhang Yubing
23d416248b drm/rockchip: vop2: calculate dclk first when dsc enable
When the request pixelclk is under 600MHz, vop2 will
calculate dclk first. When  the dsc is enabled. vop2 will
calculate dsc clk first then dclk. the dclk rate get from
the first time calclulate dsc clk and second set dck may
be different, which will get wrong dsc clk when use the
latest dclk rate to recalculate it. So the dclk should
be calculated before dsc clk when dsc enable and pixelclk
is under 600MHz.

Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: If6794a266dd624be2cd14ab1be0ee0c0db20b49a
2022-05-07 14:55:46 +08:00
XiaoTan Luo
ce0d012e79 ASoC: rockchip: pdm: Fix record error at the 2nd time
Signed-off-by: XiaoTan Luo <lxt@rock-chips.com>
Change-Id: Ifd239c8a467fc4d77ff354ff724d9bb83db046ce
2022-05-07 14:27:51 +08:00
Herman Chen
9c557a7559 video: rockchip: mpp: Fix deinit failure memory leak
The dmabuf allocated by video will leaked when media process exit
abnormal, this patch changes the deinit for mpp driver to fix it.

Tested on RK3588 Debian:
step1:
GST_DEBUG=fpsdisplaysink:6 gst-play-1.0 /data/1.mp4 --use-playbin3 \
	--audiosink=fakesink --videosink="fpsdisplaysink \
	video-sink=waylandsink signal-fps-measurements=true"
step2:
ctrl + c to kill process
step3:
cat /proc/rk_dmabuf/dev to check dmabuf stat

Tested-by: Jianqun Xu <jay.xu@rock-chips.com>
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: Ia3906b3a0bb5ec6511fc8d8abefadc37d6287c89
2022-05-07 14:13:58 +08:00
Weixin Zhou
b53829d039 arm64: dts: rockchip: rk3588s-tablet-rk806-single: adjust gpu upthreshold/downdifferential
adjust upthreshold/downdifferential for gpu to save power

Signed-off-by: Weixin Zhou <zwx@rock-chips.com>
Change-Id: I992f6dd55f86f27c86d9472a3519f24e6f9cb1b6
2022-05-06 18:16:48 +08:00
Cai YiWei
559e5fb78d Revert "media: rockchip: isp: support soft dvbm for vepu"
This reverts commit fa60562f7a.

Change-Id: I7b43ced4870d5b47ebbea828de1773c9aba4190b
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-05-06 15:01:07 +08:00
Yu Qiaowei
c3749a47d8 video: rockchip: rga3: Support soft batch mode
Split the request into multiple jobs and execute them.

Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I96d044cb52ed20e452154c400a1454bcea014bfa
2022-05-06 14:59:03 +08:00
Sandy Huang
fdb920eef1 drm/rockchip: vop3: move cluster mix config from vop_ctrl to cluster_regs
cluster mix config followed cluster, so we move mix regsiter from
vop_ctrl to cluster_regs is more suitable.

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I28d80ce9e902992870b9876296af3daa2f5add65
2022-05-06 14:43:27 +08:00
Sandy Huang
9a3072f627 drm/rockchip: vop2: use fb->format->is_yuv to instead of is_yuv_support()
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I89d13b160cf9fb11ef0af449dc09288f4a920f39
2022-05-06 14:43:27 +08:00
Sandy Huang
792d53fac9 drm/rockchip: vop2: fix frame_bw calc error at YU08/YU10 format
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: Id7b0f9c5b99458b15f7a9de06c711454665a8794
2022-05-06 14:43:27 +08:00
Guochun Huang
dfa43c60cd drm/rockchip: dsi2: use mode->crtc_clock instead of mode->clock to calculate
the mode->clock is the requested pixel clock which may different from
the actual allocated mode->crtc_clock.

example:
cat /d/dri/0/summary
Video Port3: ACTIVE
    Connector: DSI-1
        bus_format[100a]: RGB888_1X24
        overlay_mode[0] output_mode[0] color_space[0], eotf:0
    Display mode: 1920x384p60
        clk[47400] real_clk[46875] type[48] flag[a]
        H: 1920 1946 1958 1974
        V: 384 392 395 400

Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
Change-Id: I63a5c7b83b96174c2044e4bde969d74cff8af0b7
2022-05-06 14:42:08 +08:00
Guochun Huang
33abd5ac99 drm/rockchip: dsi2: get lane rate before set lane rate
Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
Change-Id: I8c83300194027bc3f760f69c2626ed94cb922320
2022-05-06 14:41:55 +08:00
Luo Wei
95335c3fb6 arm64: dts: rockchip: init rk3588-vehicle-evb-v10 dts file
Signed-off-by: Luo Wei <lw@rock-chips.com>
Change-Id: I5e039dd7a3253d46181e59c328629b814c47a577
2022-05-06 14:28:06 +08:00
Jon Lin
761a00d0e9 mtd: spinand: fmsh: Support new devices
FM25LS01

Change-Id: I488b8aa01114e7ca0f2c7f748b4a7628e8f856de
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
2022-05-05 16:56:09 +08:00
Jon Lin
6595d8aefb mtd: spinand: winbond: Support new devices
W25N02KW

Change-Id: I76b420d5d919bbc46fa0ac48df7f77a948cb8a3d
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
2022-05-05 16:23:22 +08:00
Algea Cao
7bdfab66d7 drm/bridge: synopsys: dw-hdmi-qp: Fix hdmi debugfs show hdmi disabled when uboot logo is on
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: Ica6bde26628889ea17ff54a3dc288f87ac3498d0
2022-05-05 15:59:26 +08:00
William Wu
631d008d1c phy: rockchip: inno-usb2: update phy tuning for rv1106 and rv1103
According to the new simulation result, we need to update the
phy configuration to cover different corner of rv1106 and rv1103.

1. Always enable pre-emphasis in SOF & EOP & chirp & non-chirp state;
2. Set Tx HS pre_emphasize strength to 3'b010;
3. Set 45ohm HS ODT value to 5'b10111 for better Rx ODT resistance.

Signed-off-by: William Wu <william.wu@rock-chips.com>
Change-Id: I9faca9d35124122faf5a35c78f9ee13fd9c24bba
2022-05-05 15:52:54 +08:00
Kever Yang
8e908294a5 phy: phy-rockchip-snps-pcie3: Update calibration controls for rk356x
This update fix link fail because of RX signal on rk356x.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Change-Id: I7380f9ff0dfb351618fc09e543f676968b1f3ec9
2022-05-05 15:41:15 +08:00
Chen Shunqing
7aeb078365 power: rk817_battery: fix battery not update after resume
Signed-off-by: Chen Shunqing <csq@rock-chips.com>
Change-Id: I305a6957d0e5e324cf6d5dee204d5f54de524336
2022-05-05 14:48:11 +08:00
shengfei Xu
85c6fda3fc mfd: rk806: add powerkey on time config
Signed-off-by: shengfei Xu <xsf@rock-chips.com>
Change-Id: Ib7f37252f26be6e717140ab048e2ba6758eadb1d
2022-05-05 14:37:30 +08:00
Xing Zheng
867e943b51 ASoC: codecs: rv1106_codec: fix and clean up DAC gains
Fixes the range of DAC gains.
- LINEOUT: -39dB ~ 6dB (Limits: 0 - 30)
- HPMIX: 0dB ~ 6dB (Limits: 1 - 2)

And cleans up the handlings of disable DAC.

Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
Change-Id: I1e0aebabfb9269b33e5217a87f72c269cc7c2a21
2022-05-05 14:33:24 +08:00
Xing Zheng
40dc2e3c02 ASoC: codecs: rv1106_codec: fix and clean up ADC gains
To clarify the path of ADC gains:
ADC MIC Boost --> ADC ALC PGA --> ADC Digital Volume

Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
Change-Id: I1a398eb7eaf4e4f2fc246d36b0cbbe114c8159ee
2022-05-05 14:33:24 +08:00
Xing Zheng
04e7d87459 ASoC: codecs: rv1106_codec: fix the register address of ACODEC_ADC_PGA_AGC_R_x
From the 0x40 to 0x4b is the description of the AGC register for the
left channel. The right channel has the same registers but different
address from 0x50 to 0x5b.

Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
Change-Id: I189d6136a9cede095eb9409766a6e85d81476d7b
2022-05-05 14:33:24 +08:00
Zefa Chen
7cb254ede6 phy: rockchip: csi2-dphy: fixed bug for dphy1/dphy4 to using full mode
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Ia4cf42863ff15aee379a7946662df3507670b61f
2022-05-05 14:32:37 +08:00
Ding Wei
a6674cac04 video: rockchip: mpp: rkvdec2: task->irq_status set for link mode
In link mode, when meet error, the hardware may not write registers
back to ddr. Thus the irq_status in ddr is zero, and it should
use mpp->irq_status which read register directly.

Change-Id: Ib4b1533a543a19c48bc91ee7e134159b1c257f27
Signed-off-by: Ding Wei <leo.ding@rock-chips.com>
2022-05-05 14:32:21 +08:00
Lian Xu
b59362fbb3 media: rockchip: isp: add the bp stream async for isp32
Change-Id: Ife23a4e6dc75147e308b9e6fe2c88719ef6e1edc
Signed-off-by: Lian Xu <xu.lian@rock-chips.com>
2022-05-05 14:09:15 +08:00
Yiqing Zeng
9a80278fbe media: i2c: support os08a20 sensor driver
Signed-off-by: Yiqing Zeng <zack.zeng@rock-chips.com>
Change-Id: I54ad0fdf782832fe410e42063b569ba15aa40109
2022-05-05 14:08:47 +08:00
Zhang Yubing
dbd7eb3367 drm/rockchip: vop2: enable/disable win according to it real status.
When enable the uboot logo function, For DP/HDMI, if they are
connected before boot and disconnected after end uboot stage and
before display kernel logo. The driver will try to disable
the win. In this case, the enable flag is false and the win real
status is enabled. So The real status will not be changed, and
cause wait win status disabled timeout.

It also need set the win pd status when the win is used during
boot.

Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: Ibc0944dca4775f7ebfc8218e2c17f2e6ba3354c8
2022-05-05 11:55:36 +08:00
Zhang Yubing
ee63f03b66 drm/rockchip: vop2: fix vop power domain vp mask config
When disable win, just need clear the vp mask value.

Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: I31aac908b2cae2ff01d116ceea901cd4a111289f
2022-05-05 11:55:29 +08:00
Lian Xu
b0127db292 media: rockchip: isp: ctrl the fps for isp32
Change-Id: Ia2d780d263bc14327527b9e87607a823f1e7936f
Signed-off-by: Lian Xu <xu.lian@rock-chips.com>
2022-05-05 10:55:19 +08:00
Jeffy Chen
ffc8225221 video: rockchip: mpp: write a sem around session dma operations
Write a sem to protect session dma destroy or release.

Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: I07e720ab603c6f99924d4ec9cd57475756582325
2022-05-05 10:27:50 +08:00
Jianqun Xu
516fad73c9 arm64: configs: rockchip_linux_defconfig enable DMABUF_DEBUG
Enable DMABUF_DEBUG will default to set a name with pid + taskname to a
dmabuf where it's exported, also create a /proc/rk_dmabuf debug node to
take a look for the dmabuf list, it's useful for dmabuf leak detect.

Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: Ia8de3d919335fc0237e5802fe98ba64b114af078
2022-05-05 09:55:41 +08:00
Jianqun Xu
1a1873a53b arm64: configs: rockchip_defconfig enable DMABUF_DEBUG
Enable DMABUF_DEBUG will default to set a name with pid + taskname to a
dmabuf where it's exported, also create a /proc/rk_dmabuf debug node to
take a look for the dmabuf list, it's useful for dmabuf leak detect.

Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: I10e638491675bec3fbb66c4c4392c6399c3bedd3
2022-05-05 09:55:16 +08:00
Felix Zeng
41e9ffebc8 driver: rknpu: Update rknpu driver, version: 0.7.2
Signed-off-by: Felix Zeng <felix.zeng@rock-chips.com>
Change-Id: I4959bf36fac74d590e651afdccba2dd2d8a856e9
2022-05-05 09:37:18 +08:00
Frank Wang
30e8416742 usb: typec: tcpm: fix cc role at port reset
In the current implementation, the tcpm set CC1/CC2 role to open when
it do port reset would cause the VBUS removed by the Type-C partner.

The Figure 4-20 in the TCPCI 2.0 specification show that the CC1/CC2
role should set to 01b (Rp) or 10b (Rd) at Power On or Reset stage
in DRP initialization and connection detection.

So set CC1/CC2 to Rd to fix it.

Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
Change-Id: Iea0fbd30c111d59b8d56f8002827eb6ceea28196
2022-04-29 16:05:15 +08:00
Algea Cao
70635264f2 drm/bridge: synopsys: dw-hdmi-qp: Workaround for FRL mode no signal after plug
The cause of no signal is unclear. And there is no way to know that
problem has occurred. Enable/disable send NULL packet repeatedly
after FLT passed can restore the display to normal. This is the current
workaround with the least side effect.

Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: Idbc2bea32d418821599e9df8740df07e5ad5964e
2022-04-29 15:08:29 +08:00
Andy Yan
3183f8c36e drm/rockchip: vop2: Only check pending done bits for rk3568
This is a workaround for rk3566/rk3568 only.

Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Change-Id: I6762ab146e810535643f9f59b99af2271febbab4
2022-04-29 15:04:05 +08:00
Jon Lin
9b9aac1a70 ARM: dts: rockchip: rv1106: Add spi0 sclk_in
Change-Id: Ic3bf280f135aa5c09b90394bb5b014f9a66816e2
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
2022-04-29 14:39:34 +08:00
Jon Lin
a3cc38e65d spi: rockchip: Add sclk_in gate support
Change-Id: If757c7e23f8e9791991a2e4e4eb769a8c3d56eeb
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
2022-04-29 14:18:37 +08:00
Li Huang
1d51332e49 video: rockchip: rve: update to 1.0.3
code optimization

Signed-off-by: Li Huang <putin.li@rock-chips.com>
Change-Id: I89979160feb31a1154c3232a32f9c3bbab2bdf35
2022-04-29 14:16:49 +08:00
Li Huang
cc9f3d2606 video: rockchip: rve: support rve session
Signed-off-by: Li Huang <putin.li@rock-chips.com>
Change-Id: Ic141815933c5cdd4832b0581ceab1f6c69aa315f
2022-04-29 14:16:38 +08:00
Li Huang
31443cb761 video: rockchip: rve: fixup rmmod crash
Signed-off-by: Li Huang <putin.li@rock-chips.com>
Change-Id: I832fcc9f4cd569232325ea62da95a641eaeb2e52
2022-04-29 14:16:38 +08:00
Ziyuan Xu
59bfbc5d42 ARM: configs: rockchip: rv1106-tb.config: build in MMC_DW/_PLTFM
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
Change-Id: Ibe856644c72a5520ff6c1a764287ff498c749e81
2022-04-29 14:14:45 +08:00
Ziyuan Xu
2f27a48ee3 mmc: dw_mmc: fixes crash when CONFIG_ROCKCHIP_THUNDER_BOOT=y
[  100.584484] Unable to handle kernel NULL pointer dereference at virtual address 00000000
[  100.584500] pgd = 466047cd
[  100.584509] [00000000] *pgd=00000000
[  100.584526] Internal error: Oops - BUG: 17 [#1] THUMB2
[  100.584534] Modules linked in: dw_mmc_rockchip(+) rknpu snd_soc_rv1106 rockit(O) mpp_vcodec(O) rga3
[  100.584586] CPU: 0 PID: 9 Comm: kworker/u2:1 Tainted: G           O      5.10.66 #9
[  100.584593] Hardware name: Generic DT based system
[  100.584618] Workqueue: events_unbound async_run_entry_fn
[  100.584638] PC is at dw_mci_probe+0x10a/0x7dc
[  100.584655] LR is at clk_core_enable_lock+0x19/0x1c
[  100.584667] pc : [<b038428a>]    lr : [<b02f79ef>]    psr: 60000033
[  100.584676] sp : b00a1e88  ip : b1caf580  fp : af8c29f4
[  100.584686] r10: 00000000  r9 : af8c2c04  r8 : af8c29f4
[  100.584696] r7 : b00cc4e4  r6 : 00000001  r5 : b1caf450  r4 : b1c8c010
[  100.584706] r3 : 00000000  r2 : b05b095c  r1 : 00000000  r0 : 00000000
[  100.584720] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA Thumb  Segment user
[  100.584731] Control: 50c53c7d  Table: 01c88059  DAC: 00000055
[  100.584743] Process kworker/u2:1 (pid: 9, stack limit = 0xc7a2c6f9)
[  100.584753] Stack: (0xb00a1e88 to 0xb00a2000)
[  100.584769] 1e80:                   00000001 00000001 ff9a0000 b02cce69 b1caf410 00000000
[  100.584787] 1ea0: b1c8c010 b00cc400 b00cc410 b00cc410 b00cc400 00000001 b00cc4e4 af8c29f4
[  100.584805] 1ec0: af8c2c04 0000000a 00000000 af8c2469 00000000 b00cc410 af8c2c04 b05b1e04
[  100.584822] 1ee0: 00000000 b031b3e3 b00cc410 00000000 b05b1e08 b031a775 00000000 b00cc410
[  100.584840] 1f00: af8c2c04 b1caf2c0 b0008000 00000000 00000000 b1caf2d4 00000000 b031a959
[  100.584858] 1f20: b00bed00 b00cc410 b05a1018 b031a989 b1caf2d0 b0223ad5 b002f8a0 b1caf2d0
[  100.584877] 1f40: b0007000 b021f917 b002f8a0 b1caf2d0 b002f8a0 b002f8b4 b0007000 b057ed20
[  100.584896] 1f60: b05a191c b0007014 b0007040 b021fbc3 b009d300 b0094920 ffffe000 b005bed0
[  100.584914] 1f80: b021fae1 b002f8a0 b009d320 b0222553 b0094920 b02224b1 00000000 00000000
[  100.584931] 1fa0: 00000000 00000000 00000000 b02082e9 00000000 00000000 00000000 00000000
[  100.584946] 1fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  100.584962] 1fe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000
[  100.585012] [<b038428a>] (dw_mci_probe) from [<af8c2469>] (dw_mci_rockchip_probe+0x79/0xbc [dw_mmc_rockchip])
[  100.585049] [<af8c2469>] (dw_mci_rockchip_probe [dw_mmc_rockchip]) from [<b031b3e3>] (platform_drv_probe+0x2d/0x5a)
[  100.585074] [<b031b3e3>] (platform_drv_probe) from [<b031a775>] (really_probe+0x16f/0x23e)
[  100.585096] [<b031a775>] (really_probe) from [<b031a959>] (driver_probe_device+0x5d/0x6c)
[  100.585118] [<b031a959>] (driver_probe_device) from [<b031a989>] (__driver_attach_async_helper+0x21/0x32)
[  100.585139] [<b031a989>] (__driver_attach_async_helper) from [<b0223ad5>] (async_run_entry_fn+0x25/0xa0)
[  100.585165] [<b0223ad5>] (async_run_entry_fn) from [<b021f917>] (process_one_work+0xd5/0x136)
[  100.585191] [<b021f917>] (process_one_work) from [<b021fbc3>] (worker_thread+0xe3/0x190)
[  100.585213] [<b021fbc3>] (worker_thread) from [<b0222553>] (kthread+0xa3/0xac)
[  100.585237] [<b0222553>] (kthread) from [<b02082e9>] (ret_from_fork+0x11/0x28)
[  100.585248] Exception stack(0xb00a1fb0 to 0xb00a1ff8)

Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
Change-Id: Ia0e2d83c53a757b1cf3703408a2803052ff78049
2022-04-29 14:14:45 +08:00
Lei Chen
2bf59d2fc5 arm64: configs: update rk3588_nvr.config
1) make ARCH=arm64 rockchip_linux_defconfig

2) cp .config tmp.config

3) make ARCH=arm64 rockchip_linux_defconfig rk3588_nvr.config

4) ./scripts/diffconfig -m tmp.config .config > arch/arm64/configs/rk3588_nvr.config

Signed-off-by: Lei Chen <lei.chen@rock-chips.com>
Change-Id: I18bddf7a5cfda7a8ef43d07e7637b03624255c47
2022-04-29 14:11:22 +08:00
Cai YiWei
5bcbbf90d3 media: rockchip: isp: fix imx327 hdr mode for isp21
Change-Id: I5388d3bae55cb1b35ff11cf6086313bc4b1a1e41
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-04-29 10:28:48 +08:00
Yiqing Zeng
b2e10ed41b media: i2c: sc500ai change mipi clk to continuous mode
Signed-off-by: Yiqing Zeng <zack.zeng@rock-chips.com>
Change-Id: Iea7f389d53fe8f8cf7c9294f0aa31ea9ac316892
2022-04-28 20:08:13 +08:00
Andy Yan
fcc55f394e drm/rockchip: No support create gem handle for logo fb
logo fb is not supported for exporting to userspace.

We found Xserver may try to copy logo(drmmode_copy_fb) to usersapce,
but our logo fb don't support exporting to userspace.

So not supported this to avoid the following panic:

Unable to handle kernel NULL pointer dereference at virtual address
0000000000000758
[    9.450902] Mem abort info:
[    9.451154]   ESR = 0x96000005
[    9.451431]   EC = 0x25: DABT (current EL), IL = 32 bits
[    9.451899]   SET = 0, FnV = 0
[    9.452173]   EA = 0, S1PTW = 0
[    9.452449] Data abort info:
[    9.452720]   ISV = 0, ISS = 0x00000005
[    9.453064]   CM = 0, WnR = 0
[    9.453326] user pgtable: 4k pages, 39-bit VAs, pgdp=0000000112171000
[    9.453890] [0000000000000758] pgd=0000000000000000,
p4d=0000000000000000, pud=0000000000000000
[    9.454658] Internal error: Oops: 96000005 [#1] SMP
[    9.455089] Modules linked in: bcmdhd
[    9.455421] CPU: 6 PID: 1092 Comm: Xorg Not tainted 5.10.66 #185
[    9.455951] Hardware name: Rockchip RK3588 EVB1 LP4 V10 Board (DT)
[    9.456495] pstate: 00400009 (nzcv daif +PAN -UAO -TCO BTYPE=--)
[    9.457029] pc : __ll_sc__cmpxchg_case_acq_64+0x4/0x20
[    9.457484] lr : mutex_lock+0x2c/0x44
[    9.457812] sp : ffffffc0164f3ba0
[    9.458107] x29: ffffffc0164f3ba0 x28: 000000000000001c
[    9.458573] x27: 000000000000001c x26: 0000007fe0261f28
[    9.459038] x25: 00000000c01c64ad x24: ffffffc0164f3d28
[    9.459502] x23: ffffffc0106367b8 x22: ffffff810d754e00
[    9.459967] x21: ffffffc0164f3d40 x20: ffffff810d754e00
[    9.460433] x19: 0000000000000758 x18: 000000000000000a
[    9.460898] x17: 0000000000000000 x16: 0000000000000000
[    9.461363] x15: 000000000006dcf2 x14: ffffffc0964f38c7
[    9.461827] x13: ffffffffffffffff x12: 0000000000000030
[    9.462292] x11: 00000000fffffffe x10: ffffff8103a6a328
[    9.462757] x9 : 00000000000000dd x8 : ffffff8103a6a308
[    9.463222] x7 : 0000000000000000 x6 : 0000000000000000
[    9.463687] x5 : ffffffc011a1a808 x4 : 0000000000000000
[    9.464158] x3 : ffffffc010614b1c x2 : ffffff8112522940
[    9.464625] x1 : 0000000000000000 x0 : 0000000000000758
[    9.465093] Call trace:
[    9.465312]  __ll_sc__cmpxchg_case_acq_64+0x4/0x20
[    9.465736]  drm_gem_handle_create+0x30/0x50
[    9.466117]  drm_gem_fb_create_handle+0x34/0x44
[    9.466519]  drm_mode_getfb+0x11c/0x144
[    9.466856]  drm_ioctl_kernel+0x94/0x100
[    9.467204]  drm_ioctl+0x30c/0x34c
[    9.467510]  vfs_ioctl+0x58/0x68
[    9.467794]  __arm64_sys_ioctl+0x68/0x98
[    9.468142]  el0_svc_common.constprop.5+0x138/0x1ec
[    9.468566]  do_el0_svc+0x80/0x9c
[    9.468860]  el0_svc+0x1c/0x28
[    9.469132]  el0_sync_handler+0x64/0x12c
[    9.469481]  el0_sync+0x158/0x180

Change-Id: Ieb8d603ddc70fb1274771a905df2211ba9231225
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
2022-04-28 18:34:16 +08:00
Wang Panzhenzhuan
30a25af28f media: i2c: add s5kjn1 sensor driver
Signed-off-by: Wang Panzhenzhuan <randy.wang@rock-chips.com>
Change-Id: Ic8a6639edadd9cecb0c49556d3be64a343828b76
2022-04-28 16:57:57 +08:00
Jianqun Xu
915a3a82ee soc: rockchip: restruct the rk_dmabuf procfs
This patch add a DMABUF_DEBUG_ADVANCED to try to attach and map
dmabufs who have no valid scatter list table.

Update the rk_dmabuf_procfs node to be a directory tree as:

/proc/rk_dmabuf/
  /proc/rk_dmabuf/dev
  /proc/rk_dmabuf/sgt
  /proc/rk_dmabuf/size

The "dev" to show all attached devices, such as:
ffffff816f8bb600 (null)           system-uncached        8288 KiB display-subsystem fb000000.gpu fb000000.gpu

The "sgt" to show scatter list table address range, such as
ffffff8124856200 (null)           system-uncached          52 KiB   0: 0x00000001712d0000..0x00000001712d0fff (         4 KiB)
                                                                    1: 0x00000001712d2000..0x00000001712d2fff (         4 KiB)
                                                                    2: 0x00000001712c6000..0x00000001712c6fff (         4 KiB)
                                                                    3: 0x00000001712c8000..0x00000001712c8fff (         4 KiB)
                                                                    4: 0x00000001712ca000..0x00000001712cafff (         4 KiB)
                                                                    5: 0x00000001712cc000..0x00000001712ccfff (         4 KiB)
                                                                    6: 0x00000001712ce000..0x00000001712cefff (         4 KiB)
                                                                    7: 0x00000001712d1000..0x00000001712d1fff (         4 KiB)
                                                                    8: 0x00000001712c7000..0x00000001712c7fff (         4 KiB)
                                                                    9: 0x00000001712c9000..0x00000001712c9fff (         4 KiB)
                                                                   10: 0x00000001712cb000..0x00000001712cbfff (         4 KiB)
                                                                   11: 0x00000001712cd000..0x00000001712cdfff (         4 KiB)
                                                                   12: 0x00000001712cf000..0x00000001712cffff (         4 KiB)

The "size" to show total dmabuf size, such as:
Total: 79836 KiB

Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: I62292094407696e410e2ce2973a60f569964e8bd
2022-04-28 16:43:53 +08:00
Jianqun Xu
aa907e7134 dma-buf: support to debug dmabuf via procfsnode
This patch add a DMABUF_DEBUG to switch on/off the debug codes for
dmabuf, including set a name for each dmabuf.

Support to set a name with pid+taskname for a exported dmabuf, this is
enabled depends on DMABUF_DEBUG.

Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: I84f2c3c66d407d7af29df1d7d85d62d0679d2218
2022-04-28 16:41:45 +08:00