Commit Graph

1066059 Commits

Author SHA1 Message Date
Weixin Zhou
6933ea73fe arm64: dts: rockchip: rk3588s-tablet-rk806-single: correct dp in vp1
Signed-off-by: Weixin Zhou <zwx@rock-chips.com>
Change-Id: I1346f32659fc917af9ae501f46bc0290d0d3f18a
2022-05-10 10:29:50 +08:00
Guochun Huang
e7ca222fee arm64: dts: rockchip: rk3588-vehicle: fix USB_OTG_PWREN gpio pin
Change-Id: I7122e43aeec997bd9e8c80441195fae328d7887a
Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
2022-05-10 10:23:56 +08:00
Guochun Huang
0ca8d654bd drm/bridge: Add support for BU18TL82-M/BU18RL82-M
BU18TL82-M supports MIPI DSI and LVDS data
transmission by ROHM's original CDR (Clock Data
Recovery) technology. This chip is the serial interface
transmitter IC of the Clockless Link-BD series.

BU18TL82-M converts the MIPI DSI and LVDS data
stream into Clockless Link format transmit through 2
pairs of differential wires.

BU18RL82-M supports LVDS data transmission by
ROHM's original CDR (Clock Data Recovery) technology.
This chip is serial interface receiver IC of the Clockless
Link-BD series.

BU18RL82-M converts Clockless link stream into a
LVDS format, and transmits through one or two ports of
LVDS.

Flexible Input / Output mode is suitable for a variety of
application interface.

Change-Id: Ia8693b84d910ce9e08c49b9957bd5682b8625b0f
Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
2022-05-10 10:23:56 +08:00
Zhang Yubing
53da594597 drm/rockchip: vop2: support vop splice mode in loader protect
when the hdisplay more than 4096, vop need use splice mode to
output image. So another vop port need config in load protect
function.

Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: I64b7726397553af4aeb3cf35ef751b73345497ad
2022-05-10 09:30:05 +08:00
Zhang Yubing
0a196311ef drm/rockchip: logo: attach crtc to drm state
In order to get the hdisplay of the display mode, attaching the
crtc to drm state.

Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: I85909a414767b0bdd078edfa0a17df97b7612538
2022-05-10 09:23:56 +08:00
Yu Qiaowei
a2b12fb2b6 video: rockchip: rga3: rga3 is compatible with RGA2's alpha_blend configuration
1. ABA -> ABB.
2. The output has an offset and is placed in win0 for processing.

Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: Id501ad32fc887b6e88dfaec5cfdb1842169951bd
2022-05-10 09:23:00 +08:00
Yu Qiaowei
b88dc824d9 video: rockchip: rga3: The colorkey value is adapted to 8bit(RGA2)->10bit(RGA3)
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I4651659e75b7cddd15e3a9a29b7588c382d4bb22
2022-05-09 20:54:11 +08:00
Yu Qiaowei
6469f2fb4f video: rockchip: rga3: Fix RGA2 getting mmu_base requires 16 alignment
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I7f096d51021ed941240f5ab3578fbc1f3b44b505
2022-05-09 17:31:19 +08:00
Wyon Bi
f72b7c857e drm/panel: simple: Add reset gpio
Fixes: 12353d7243 ("drm/panel: simple: Add reset gpio")
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: I3c3066e4249aa49f948de9f0bb5d888f0e3d2739
2022-05-09 15:41:50 +08:00
Wyon Bi
c8383f61c1 drm/rockchip: analogix_dp: Find possible connector from encoder
Fixes: 48fb554efc ("drm/rockchip: analogix_dp: Protect kernel logo with loader_protect callback")
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: Id2f5817445e86a4e902f9cd4009815687cd5ebe0
2022-05-09 15:18:11 +08:00
Zhang Yubing
1a5cc99e50 drm/rockchip: dw-dp: support DP SI auto test
Use the DPCD Automated Testing Filed to auto test DP SI.

Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: Ic3c01cd2068125ff415a205e57a0b873cc2541fc
2022-05-09 14:31:26 +08:00
Dingxian Wen
c231756164 media: rockchip: hdmirx: add timing validity judgment
Signed-off-by: Dingxian Wen <shawn.wen@rock-chips.com>
Change-Id: I11cfb328dc37c5239e2557460dd99f471d23a52b
2022-05-09 11:00:54 +08:00
Dingxian Wen
ae854e6b5d media: rockchip: hdmirx: check timing before start streaming
Signed-off-by: Dingxian Wen <shawn.wen@rock-chips.com>
Change-Id: Id0b830b09db4f18eb3b96606e4e8d6fdd95b44c2
2022-05-09 11:00:54 +08:00
Zhenke Fan
d54e56dbc6 media: i2c: add gc4653 sesnor
Signed-off-by: Zhenke Fan <fanzy.fan@rock-chips.com>
Change-Id: Ide1351b6396eceda1df399485b22f807fce8a867
2022-05-09 10:34:26 +08:00
Su Yuefu
4ffc6172ee media: i2c: add sc230ai sensor driver
Signed-off-by: Su Yuefu <yuefu.su@rock-chips.com>
Change-Id: I57e9d414fd51ddc620c18233e9072a22cb8fa7d8
2022-05-07 19:11:44 +08:00
Frank Wang
45d113ab59 phy: rockchip: inno-usb2: add linestate filter config for rk3588
For linestate irq as a wakeup source, we need to reconfigure the
linestate filter value base on 32KHz clk at suspend time, and restore
it to the default when the system resume.

By the way, set the grf to handle the phy status when the system
suspend, which can support the linestate wakeup even the PD of the
USB controller was off for RK3588 OTG1 port.

Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
Change-Id: I630855981082298d079d9c713029a7e3093b09cd
2022-05-07 17:37:09 +08:00
Jianqun Xu
af77c1d2e1 soc: rockchip: rk_dmabuf add 'peak' child node
Add a child node 'peak' to stat the peak size for dmabuf.

Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: I6ee9e69f60e9c7660477dafb3d7f789677406abb
2022-05-07 17:05:48 +08:00
Jianqun Xu
d870c5bea7 dma-buf: support to stat peak size for all dmabuf
The system memory presure always take care of the peak memory size, for
dmabuf, the peak size is useful when media module to design drivers.

Get peak can show the peak size currently, and reset peak can clear it.

Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: I56b0323167361e11dd657a22449aad65751fc81a
2022-05-07 17:04:43 +08:00
Simon Xue
f89952729b iommu/rockchip: fix rockchip_iommu_is_enabled api
Fixes: 18762023bb ("iommu/rockchip: add rockchip_iommu_is_enabled api")
Change-Id: Ifdccd89e74bccc69c5e15abc835fba529287f92f
Signed-off-by: Simon Xue <xxm@rock-chips.com>
2022-05-07 16:45:05 +08:00
Felix Zeng
046d5df7ac driver: rknpu: Only wait for iommu disabled in multiple domains
Signed-off-by: Felix Zeng <felix.zeng@rock-chips.com>
Change-Id: I2d8768a018e05286f2dcc7d1190e5e34ac34e923
2022-05-07 16:41:49 +08:00
Lei Chen
10bcb7c37c arm64: configs: rk3588_nvr.config: enable DRM_ITE_IT6161
Signed-off-by: Lei Chen <lei.chen@rock-chips.com>
Change-Id: I1114f9a293a9d09051444d40db2cddaee560e0ae
2022-05-07 16:40:06 +08:00
Ren Jianing
c740acfa34 usb: gadget: u_audio: add uevent for ppm compensation
This patch add uevent to notify the application layer how much ppm
is different between USB clk and AUDIO clk.

The event include two parts USB_STATE and PPM. For example:

  g_audio_work: sent uac uevent USB_STATE=SET_AUDIO_CLK PPM=12
  g_audio_work: sent uac uevent USB_STATE=SET_AUDIO_CLK PPM=-1

Note: The ppm compensation depends on the method implement of
clk drift and compensation in the audio driver (eg. sound/soc/
rockchip/rockchip_i2s.c). So if you want the ppm compensation to
take effect, please make sure the related driver has implemented.

Change-Id: I71cb431cf4798028e1b62c1570eb5911b17b3ddc
Signed-off-by: Ren Jianing <jianing.ren@rock-chips.com>
Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
2022-05-07 15:52:53 +08:00
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