Commit Graph

1072253 Commits

Author SHA1 Message Date
Simon Xue
502e1d32f2 iommu: Don't break iommu_attach_device() if iommu shared by more than one master
Don't break iommu_attach_device.
iommu_attach_device will break if iommu shared by two or more masters

Change-Id: Ifd1c652341e2270bfde57ebe1e0cd00d51d38eec
Signed-off-by: Simon Xue <xxm@rock-chips.com>
2022-08-10 15:21:22 +08:00
Yiqing Zeng
f9613e3a3c media: i2c: gc4023 update version v0.2.0
1, update init registers setting;
2, update gain table;
3, update mirror/flip setting;

Signed-off-by: Yiqing Zeng <zack.zeng@rock-chips.com>
Change-Id: Ic8a84efadc9dd69e8e826f10beb5c4fec90b4ee6
2022-08-10 15:16:45 +08:00
Guochun Huang
ecc6097c8d drm/bridge: Add support for Maxim MAX96776
The deserializers convert a singleor dual-link GMSL2
serial input to embedded DisplayPort (eDP), enabling
display of high-resolution RGB888 video.

Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
Change-Id: Ief4d5a8ca9ed42c5954c8fc1403da58bebee4730
2022-08-10 10:19:57 +08:00
Guochun Huang
4b9ba5d213 mfd: Add support for Maxim MAX96776
The MAX96776/MAX96778 deserializers convert singleor
dual-link GMSL™ serial input to embedded DisplayPort
(eDP) v1.4a. 600MHz PCLK capability and decompression
of VESA 3:1 DSC v1.1 enable transport of 4K (UHD),
24-bit, 60fps video over a single coax or twisted pair
link. The MAX96776/MAX96778 also send and receive
sidechannel and peripheral control data to enable
full-duplex single-wire transmission of video and
bidirectional data.

Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
Change-Id: I3c07fc1053ae6080cb1cca1bfb9bca5fb38bb563
2022-08-10 10:19:27 +08:00
Zefa Chen
18279453cd media: rockchip: vicap does not do a soft reset before capture raw
while online mode is running

Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: I023ad640be010b9d109458e6c755d251e9338294
2022-08-10 09:46:32 +08:00
Wang Panzhenzhuan
fb39bd5bec media: i2c: gc5035: fix compile error
Signed-off-by: Wang Panzhenzhuan <randy.wang@rock-chips.com>
Change-Id: I5baa609d0028d7cbcfc26334d68ace1db741e340
2022-08-09 19:32:35 +08:00
Kever Yang
df5f7115ff phy: rockchip: naneng-combophy: Set pcie to use T3-p1
T3-p1 with 650mV output voltage is the best signal via the test.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Change-Id: I5c2bd3ab0c235f3079925a03a59c419ad37da485
2022-08-09 19:31:40 +08:00
Yu Qiaowei
783ba8db79 video: rockchip: rga3: Modify YUV10bit of RGA3 to default to compact mode
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I310839f124e4c3e4ef7aa0e81f4cc780893377db
2022-08-09 19:01:49 +08:00
Caesar Wang
bce92d16b2 arm64: dts: rockchip: Add mmc aliases for linux
This series in order to have the default MMC alias.

The mmc default alias:
	mmc0 = &sdhci;
	mmc1 = &sdmmc;
	mmc2 = &sdio0;

The Linux OS have the post-build.sh to handle the rootfs,
and export RK_EXTRA_PARTITIONS for setting the PARTITIONS.

Signed-off-by: Caesar Wang <wxt@rock-chips.com>
Change-Id: I27b5645200a645bee6c3dc2f4e95cdb23ba19ab8
2022-08-09 17:21:34 +08:00
Jianqun Xu
60a150e070 drm/rockchip: Set both the DMA mask and the coherent DMA mask earlier
Set both the DMA mask and the coherent DMA mask before drm master to
binder the components.

Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: Ia7ba80e4fddaf957e775e10348bacbf0568102bd
2022-08-09 15:28:23 +08:00
Cai YiWei
67d5c49fcc media: rockchip: isp: fix isp20 and isp21 default to online with vicap
Change-Id: I144768b61a239269633b0fb0591ce196dc3ce80a
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-08-09 15:23:17 +08:00
Cai YiWei
c57a9f9994 media: rockchip: ispp: fix warn of v4l_enum_fmt
WARNING: CPU: 0 PID: 391 at drivers/media/v4l2-core/v4l2-ioctl.c:1476 v4l_enum_fmt+0x20c8/0x2114

Change-Id: If9618a7d0bdcbbac70958bca99be5742ec478aca
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-08-09 15:23:17 +08:00
Cai YiWei
f82495fca0 media: rockchip: ispp: support fec/orb image stabilization
Change-Id: Idf6b56d44bf9ab0c0137ffaca26436752f30b57d
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-08-09 15:23:17 +08:00
Cai YiWei
bbce16690e media: rockchip: ispp: fec to support output size crop by mesh
add rkispp-subdev pad2:Source set format API to support fec
crop output size by mesh size.

Change-Id: I8857547d1dc07ff033a50b1dc7bc2079a9221b12
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-08-09 15:23:17 +08:00
Cai YiWei
36d10fca69 media: rockchip: ispp: separate param/stats video device
Change-Id: I9cc94eb59b2704f27d16ce37aa6b8e8d33f84a7e
Signed-off-by: Hu Kejun <william.hu@rock-chips.com>
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-08-09 15:23:17 +08:00
Tao Huang
902b7efac3 pinctrl: max96755f: Fix fall-through warning in max96755f_pinconf_get()
Fix the following fall-through warning:
drivers/pinctrl/pinctrl-max96755f.c:123:6: warning: this statement may fall through [-Wimplicit-fallthrough=]

Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: Ib79fd9c76e4213709008a7d3102b9e2e033bf7d7
2022-08-09 11:05:28 +08:00
Guochun Huang
d7dca09d85 arm64: rockchip_defconfig: Enable CONFIG_DRM_MAXIM_MAX96755F
Enable the maxim serializer MAX96755F driver used on RK3588 vehicle.

Change-Id: Ieefe4406fa56a49e36bae7aaccdb40e58fcfb772
Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
2022-08-08 17:27:54 +08:00
Guochun Huang
62e31fd34f drm/bridge: maxim-max96755f: Fix possible irq unbalanced
Change-Id: Id1295c0eec38526215ac104706e435c3cf94faae
Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
2022-08-08 17:26:47 +08:00
Weiwen Chen
02f0163860 ARM: dts: rockchip: rv1103g-battery-ipc-v10: bootargs remove rk_dma_heap_cma
Signed-off-by: Weiwen Chen <cww@rock-chips.com>
Change-Id: I10543e0b4e041e23e4a776d913162029f48d00b0
2022-08-08 17:26:05 +08:00
Felix Zeng
9ed3b85496 driver: rknpu: fix dma buf double close in DMA_HEAP
Signed-off-by: Felix Zeng <felix.zeng@rock-chips.com>
Change-Id: I9eccc1c10a7fb5a01769de4018d954cfd0131bab
2022-08-08 14:54:16 +08:00
Wang Panzhenzhuan
c59860fa4e media: i2c: ov50c40: adjust some config for cts
only enable 8K@12fps & 4K@30fps setting for use, others for debug

Signed-off-by: Wang Panzhenzhuan <randy.wang@rock-chips.com>
Change-Id: I21faf9d961d7f90eed2d64e8da0f3bb4a980895e
2022-08-08 09:49:14 +08:00
Wang Panzhenzhuan
658e583bea media: i2c: ov13855: adjust some config for cts
1. 4224x3136@15fps & 2114x1568@60fps only enable for debug
2. fix some regs setting

Signed-off-by: Wang Panzhenzhuan <randy.wang@rock-chips.com>
Change-Id: Iab37357aea55a66c51ef70a76383b8b7b26ffd14
2022-08-08 09:49:06 +08:00
Zhang Yubing
7c699c81b4 drm/rockchip: vop2: set black background as default config for rk3588
For RK3588, the reset value of background is 0xa0080200, which
will enable background and output a grey image. But the reset
value is just valid in first frame and disable in follow frames.
If the panel backlight is valid before follow frames. The screen
may flick a grey image. To avoid this phenomenon appear, setting
black background after reset vop.

Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: Iadf805a26d84c1dc49cb64a637588c43ecd32977
2022-08-05 20:53:38 +08:00
Sugar Zhang
0d6541041f ASoC: rockchip: dlp: Fix wrong HW delta assign
Always update delta into ref, obviously, it's playback.

Fixes: 9975bc50f3 ("ASoC: rockchip: Add support for Digital Loopback")
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Ie9507d87d56811cccd3ea884370e1e972aebf962
2022-08-05 20:49:53 +08:00
Herman Chen
9f7d75a79c video: rockchip: mpp: rkvenc2: Allow disabled rkvenc-core dtsi
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: Ic2bc6b469e7efbac9b03666a5a0cf791c130ab5b
2022-08-05 20:46:58 +08:00
Wyon Bi
495e32cf39 mfd: max96745: Fix power on reset
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: I8b325e09dff1e0e9bf2a5262d60e803986e52845
2022-08-05 08:17:17 +00:00
Wyon Bi
bf78aaf1e6 drm/bridge: maxim-max96745: Add video status check
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: I8563e1c8c885034b7c1cb61389ce8cc97c8114c3
2022-08-05 08:17:17 +00:00
Wyon Bi
176a78c0ce drm/bridge: maxim-max96745: Fix possible irq unbalanced
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: Id26d457f36fb2451fae7223c3876388bb8ab9adc
2022-08-05 08:15:17 +00:00
Wyon Bi
416f7f52af drm/bridge: maxim-max96752f: Add video status check
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: I3880a68f9a6ec2aef2b82a568d4f40dd39feeaa0
2022-08-05 08:15:17 +00:00
Wyon Bi
be3554a423 drm/rockchip: dw_dp: Find possible connector from encoder
Fixes: de30a9e538 ("drm/rockchip: dw-dp: Support dp show uboot logo")
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: Ib0e95ad4eaa88c7fd84f393d8c2dcceb4962a1b9
2022-08-05 08:15:17 +00:00
Yu Qiaowei
591a5a0071 video: rockchip: rga3: add debug node for hardware info
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I7edd4ebdac6235017631e1d7fa828d2e6362998d
2022-08-05 16:11:10 +08:00
Yu Qiaowei
75478f6429 video: rockchip: rga3: wakeup after updating status
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I74936fec3984cc19ed8720ccf9873b7dd561f47b
2022-08-05 16:11:10 +08:00
Sugar Zhang
c4047fb445 ARM: configs: rv1126: Update config by savedefconfig
Move ext device drivers (e.g. sensors) into segment config.

Usage:

  make ARCH=arm rv1126_defconfig rv1126-evb.config

Generated by:

  make ARCH=arm rv1126_defconfig
  cp .config tmp.config
  make ARCH=arm menuconfig
  bala...
  ./scripts/diffconfig -m tmp.config .config >
  arch/arm/configs/rv1126-evb.config

Updated by:

  make ARCH=arm rv1126_defconfig
  cp .config tmp.config
  make ARCH=arm rv1126_defconfig rv1126-evb.config
  make ARCH=arm menuconfig
  bala...
  ./scripts/diffconfig -m tmp.config .config >
  arch/arm/configs/rv1126-evb.config

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Id2faada752855fa041f67492669cfa4387c48c67
2022-08-05 15:28:07 +08:00
Nickey Yang
4706e5707c ARM: dts: rockchip: rv1126: change dsi and mipi dphy definition
Signed-off-by: Nickey Yang <nickey.yang@rock-chips.com>
Change-Id: Id60603657b39d4c01cd59af4cdfefd28031aa6f7
2022-08-04 18:13:34 +08:00
Nickey Yang
3198142cf2 phy/rockchip: inno-dsidphy: support rv1126
Signed-off-by: Nickey Yang <nickey.yang@rock-chips.com>
Change-Id: I84fb7a922528894c7c14c95902f0e273640834d6
2022-08-04 17:46:37 +08:00
Nickey Yang
ebcd655cc2 drm/rockchip: dsi: add rv1126 support
Signed-off-by: Nickey Yang <nickey.yang@rock-chips.com>
Change-Id: Ic3a8df6294aea290c7966f107333cc46f6fd63ba
2022-08-04 17:46:31 +08:00
Chen Shunqing
8f9d5e3447 media: rockchip: hdmirx: set to black screen when avmute
Signed-off-by: Chen Shunqing <csq@rock-chips.com>
Change-Id: I5462df9e74b373c92ed412dbc3431e596a2e7ff3
2022-08-04 16:41:32 +08:00
Wyon Bi
1049fe8294 arm64: rockchip_defconfig: Enable maxim serdes driver
Enable the maxim serdes driver used on RK3588 vehicle.

Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: I0ed611d2a14438e1fab76f97c2093804f4575940
2022-08-04 16:38:56 +08:00
William Wu
b9b76d08b5 phy: rockchip: inno-usb2: add phy reset during resume
On most of rockchip platforms, the usb2 phy lost power
during deep sleep. So we need to reset phy during pm
resume to recovery clock to usb controller.

When do sleeptest on rk3588 evb1, without this patch,
it may fail in ehci_resume or ohci_resume, because
the ehci/ohci controller can't get clock from usb2 phy.

Note that the phy reset is optional in devicetree, so
it needs to check the reset_control of phy before phy
reset operation to avoid unnecessary delay.

Fixes: ba8a6e65a7 ("phy: rockchip: inno_usb2: only reset phy if deassert iddq for rk3588")
Signed-off-by: William Wu <william.wu@rock-chips.com>
Change-Id: I31dee9baea472d9e314eca6cb9f78b2aab0e5353
2022-08-04 16:21:02 +08:00
Damon Ding
d185ae34d0 drm/rockchip: dsi2: encoder->crtc maybe NULL
Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
Change-Id: I4f22a95f33ee012c47e2715aef0d66ec0b209b30
2022-08-04 16:15:33 +08:00
Zefa Chen
c0122f5de1 include: uapi/linux/rk-camera-module.h add RKMODULE_GET_READOUT_LINE_CNT_PER_LINE
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Ic89639c97016d993a431a7f7ea67c05ecf62d428
2022-08-04 16:14:04 +08:00
Zefa Chen
5f2f434198 media: rockchip: vicap fixed dvp segfault
[    0.463070] Unable to handle kernel NULL pointer dereference at virtual address 00000000
[    0.457836] rkcif rkcif_dvp: rkcif driver version: v00.01.0a
[    0.458009] rkcif rkcif_dvp: attach to cif hw node
[    0.458033] rkcif rkcif_dvp: rkcif wait line 0
[    0.458056] : terminal subdev does not exist
[    0.463620] rkcif_dvp: There is not terminal subdev, not synchronized with ISP
[    0.464566] [00000000] *pgd=00000000
[    0.468850] Internal error: Oops: 5 [#1] PREEMPT SMP ARM
[    0.469332] Modules linked in:
[    0.469627] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 5.10.110 #273
[    0.470186] Hardware name: Generic DT based system
[    0.470637] PC is at subdev_notifier_complete+0x2c0/0x3a0
[    0.471124] LR is at subdev_notifier_complete+0x34c/0x3a0
[    0.471608] pc : [<b06587e4>]    lr : [<b0658870>]    psr: 60000013
[    0.472169] sp : b86dbc78  ip : 0001c52c  fp : b1708030
[    0.472640] r10: b170801c  r9 : b1708078  r8 : b1708238
[    0.473113] r7 : b1708220  r6 : b1708220  r5 : 00000000  r4 : b170fcb0
[    0.473697] r3 : 00000000  r2 : 00000000  r1 : 60000013  r0 : b170fcb4
[    0.474282] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
[    0.474922] Control: 10c5387d  Table: 0000406a  DAC: 00000055
[    0.475442] Process swapper/0 (pid: 1, stack limit = 0xe78b9f4a)

Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Ic36dfc2cbc0928e39844263647eee082e5229e95
2022-08-04 16:14:04 +08:00
Allon Huang
731602bff1 ARM: dts: rv1126: mipi csi host add cru rst
Signed-off-by: Allon Huang <allon.huang@rock-chips.com>
Change-Id: I3cd48af1b26bba4e8ae23aa6a64b14420dc87de7
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
2022-08-04 16:14:04 +08:00
Zhang Yubing
0b955c148d drm/rockchip: vop2: close esmart pd when disable vop
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: Ic12297df5e47e31e5eb3472a89030b158477ed60
2022-08-04 16:11:30 +08:00
Herman Chen
c26747a966 video: rockchip: mpp: rkvenc2: Add disable_work
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: Icd707042ba9698582a4472c649bf3f4146e73661
2022-08-04 16:07:39 +08:00
Yao Xiao
04e0902678 soc: rockchip: rk3308b: grf: support switching between sdmmc and uart2
Change-Id: I965f3262da493cc374fad3a0949055e3656b4c5b
Signed-off-by: Yao Xiao <xiaoyao@rock-chips.com>
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
2022-08-04 15:55:33 +08:00
Ziyuan Xu
40a81aa549 ARM: configs: rv1106-battery-ipc.config: enable flock feature
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
Change-Id: I34e6c2a7074c81888440635a834b163aa2b96022
2022-08-04 15:53:13 +08:00
Yiqing Zeng
93fb08ae40 ARM: dts: rockchip: rv1106-evb-cam: os04a10 reset pin active low
Signed-off-by: Yiqing Zeng <zack.zeng@rock-chips.com>
Change-Id: I35858dd1bd82b4034c2bbe5ae140e0a0b51702ff
2022-08-04 15:50:51 +08:00
Jianwei Fan
6b4c37ce13 media: i2c: lt6911uxc: add ioctl RKMODULE_GET_HDMI_MODE
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
Change-Id: Iffde98bbf7529122e9c474ad91de03e949cbea22
2022-08-04 15:49:49 +08:00
Jianwei Fan
25f5becb7d media: i2c: lt7911d: add ioctl RKMODULE_GET_HDMI_MODE
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
Change-Id: Iedacb279f362651deaba63b44b05a974b1dc3448
2022-08-04 15:49:31 +08:00