Commit Graph

1066086 Commits

Author SHA1 Message Date
Wyon Bi
68d8bf81ae arm64: dts: rockchip: rk3588-vehicle-serdes-display: Enable split mode
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: I8b5391ecb732cf00fb38c22b30b9dfd6015bbb9f
2022-05-12 16:56:42 +08:00
Wyon Bi
55f6668552 drm/bridge: Add support for BU18TL82-M/BU18RL82-M
Split the driver code into separate source file

Fixes: 0ca8d654bd ("drm/bridge: Add support for BU18TL82-M/BU18RL82-M")
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: Id46cfbab9b21812432da0db1cfb4306feb79c595
2022-05-12 16:56:42 +08:00
Wyon Bi
c1754005a3 drm/bridge: analogix_dp: Support split mode for bridge chain
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: I22ec16f8b12213d3adf1929bd49e2437085b2485
2022-05-12 16:47:21 +08:00
Wyon Bi
6cc4fe12bb drm/rockchip: dw-dp: Add support for external bridge
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: Ia7f5299a89e8ec0588f95e26c1120dc9cfb990cc
2022-05-12 16:47:08 +08:00
Wyon Bi
130d976f44 drm/rockchip: dw-dp: Support force hpd
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: Iaa4bcb049ae1634b26f1f1ad232fbd574d870b2e
2022-05-12 16:46:02 +08:00
Yifeng Zhao
da1c2c4a2c scsi: sata: re enter sleep is prohibited during wake-up
The work ata_scsi_dev_rescan will hangup and can not wakeup if PM
enter sleep at the sata device  wake-up process.

Signed-off-by: Yifeng Zhao <yifeng.zhao@rock-chips.com>
Change-Id: I44045505c2e691102ab90ba3b2ae3031e7bab0a6
2022-05-12 16:45:18 +08:00
aaron.sun
d32e5f2e57 ARM: dts: rockchip: rv1106: Reserved 4k sram memory for mcu
reserved sram memory from 0xff6ff000 to 0xff6fffff for
mcu wrap

Signed-off-by: aaron.sun <aaron.sun@rock-chips.com>
Change-Id: I116476a5d787014088788191acf2cef7f1c921c4
2022-05-12 15:31:55 +08:00
Yandong Lin
731c9ba041 video: rockchip: dvbm: update for mcu update line cnt case
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I41a502e19a1fd565a0d2d97e2017666540297c12
2022-05-12 15:29:48 +08:00
Yandong Lin
ffc716a9e6 video: rockchip: dvbm: fix start offset calculate err
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: If23f1fb22d2cff9b76c22aff8d7e23eef3f699e7
2022-05-12 15:29:48 +08:00
Zhang Yubing
7c4965dc25 drm/rockchip: dw-dp: filter yuv420 only mode
When the display mode support yuv420, It can get the min bpp
12. If the display mode only support yuv420 and downstream
device don't set VSC_SDP_EXTENSION_FOR_COLORIMETRY_SUPPORTED
bit in DPCD, filtering this mode.

Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
Change-Id: I1ba05ce8ad622ba6a25b48025fe2a3efeaa289a1
2022-05-12 15:27:35 +08:00
Huibin Hong
9700637878 arm64: rockchip_defconfig: enable CONFIG_HARDLOCKUP_DETECTOR
Enable CONFIG_HARDLOCKUP_DETECTOR_OTHER_CPU which enable
CONFIG_SOFTLOCKUP_DETECTOR too.

The kernel can detect the lockup that cpu stuck with interrupts disabled.

Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
Change-Id: I34b3f1c99bc99c52c91b84c26c45e01207e60739
2022-05-12 15:13:47 +08:00
Colin Cross
93d3affa84 hardlockup: detect hard lockups without NMIs using secondary cpus
Emulate NMIs on systems where they are not available by using timer
interrupts on other cpus.  Each cpu will use its softlockup hrtimer
to check that the next cpu is processing hrtimer interrupts by
verifying that a counter is increasing.

This patch is useful on systems where the hardlockup detector is not
available due to a lack of NMIs, for example most ARM SoCs.
Without this patch any cpu stuck with interrupts disabled can
cause a hardware watchdog reset with no debugging information,
but with this patch the kernel can detect the lockup and panic,
which can result in useful debugging info.

Change-Id: Ia5faf50243e19c1755201212e04c8892d929785a
Signed-off-by: Colin Cross <ccross@android.com>
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2022-05-12 15:11:15 +08:00
William Wu
200edc7b87 phy: rockchip: inno-usb2: fix miss host disc irq for rk3588
On RK3588 platform, the USB Host port may miss disconnect
falling edge irq which is used to detect usb device plug in.
This always happens in the following two cases:
1. For RK3588 ARM PC, boot system from U Disk which connected
   the USB2 Host port (EHCI & OHCI Controller);
2. For RK3588 EVB, increase the disconnect filer counter to
   0xF4240 in the reg USB2PHY_GRF_DIS_CON. That is, the
   disconnect rising/falling irq filter time is set to 10ms
   depend on the 100MHz pclk.

In this case, we can clear the host_disconnect state depend
on the linestate irq which also means that an usb device is
connecting to the port.

Signed-off-by: William Wu <william.wu@rock-chips.com>
Change-Id: Iadde3278c3383c0d477a0b9998871a5a1f5fe206
2022-05-12 10:34:39 +08:00
Sugar Zhang
d4e5a644c5 ARM: dts: rockchip: rv1106-ipc: Enable tsadc
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I6dfb1d5467789d01e23775264824815a74355628
2022-05-11 20:26:35 +08:00
Sugar Zhang
06c451eee0 ARM: dts: rockchip: rv1106-evb: Enable tsadc
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I07dad89c2a722355e3b1e1293f13d1fd8491230d
2022-05-11 20:26:09 +08:00
Xing Zheng
78779a435f ASoC: codecs: rv1106_codec: clean up acodec power up/off handing
Clean up power up/off handing for acodec, make the DAC
PSRR feature is better ~14.5dB.

Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
Change-Id: Ia735d2f5e2134c86d35656fb027352a45093d9a5
2022-05-11 20:25:07 +08:00
Cai YiWei
34086f9377 media: rockchip: isp: fix csm range to full
csm->cgc->cproc->ie, and sharp no support
limit range from csm, so fix csm range to full and
cgc to config limit or full range.

Change-Id: Iccc3e7254d55c0e7b61e33028af88e7685e9f1e5
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-05-11 16:05:37 +08:00
Cai YiWei
a7dcda114f media: rockchip: isp: fix info2ddr buf free for isp32
Change-Id: Ifd88159e4377568b6a8efc71b3521a636d6cf267
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-05-11 16:05:37 +08:00
Yiqing Zeng
5435c2633b media: i2c: support gc4023 sensor driver
Signed-off-by: Yiqing Zeng <zack.zeng@rock-chips.com>
Change-Id: Ic429eb43d86fa1abc5d7fcd7ae1887b3f43de66d
2022-05-11 16:04:45 +08:00
Huibin Hong
bd0d6dbc3f soc: rockchip: debug: fix issue when reading pcsr if cpu is power down
When enable cpu auto power down, reading pcsr causes "synchronous
external abort" when cpu is power down. Disable the SError during
reading pcsr, and skip reading pcsr if cpu is power down.

Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
Change-Id: Id02b998f621daf440a602faf10439612868d731f
2022-05-11 15:20:57 +08:00
Finley Xiao
cf23a35d28 arm64: dts: rockchip: rk3588s: add high temperature configuration
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: Icc614484196a5914aee4d3615ad521db4fac8c82
2022-05-10 19:10:06 +08:00
Finley Xiao
54e328674a arm64: dts: rockchip: rk3588s: change low temperature configuration
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: Iff024258ce2f9b7755fcd3d87dcbb530ec8ffc3c
2022-05-10 19:10:06 +08:00
Yu Qiaowei
a130e5ac67 video: rockchip: rga3: fill mode disables src0 channel
Update driver version to 1.2.11

Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I132581e492bc0b6880bd6227cb083b263e2dc2d2
2022-05-10 14:54:49 +08:00
Zefa Chen
2df4d83c64 media: i2c: sc4336 support get real fps
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Id45cd12575f7439bdffbd482ea04b7ae7e33c3ef
2022-05-10 14:27:01 +08:00
Guochun Huang
17db577493 arm64: dts: rockchip: rk3588-vehicle: add serdes display
dsi0->bu18tl82->bu18rl82->lvds->panel
dsi1->bu18tl82->bu18rl82->lvds->panel
dp0->lt7911D->lvds->bu18tl82->bu18rl82->lvds->panel
dp1->lt7911D->lvds->bu18tl82->bu18rl82->lvds->panel
edp0->lt7911D->lvds->bu18tl82->bu18rl82->lvds->panel
edp1->lt7911D->lvds->bu18tl82->bu18rl82->lvds->panel

Change-Id: Iea640653c908c3f92d6d7f89c397d2c12792d486
Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
2022-05-10 14:11:40 +08:00
Damon Ding
2274784b05 ARM: dts: rockchip: rv1106: add rgb ext board support
A 1024x600 RGB888/RGB666 screen FX070-DHM11BOE-A.

Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
Change-Id: Ib757ff5daa73c17647ae27631b217e5a70284769
2022-05-10 10:50:25 +08:00
Ziyuan Xu
ad6118b6e5 ARM: dts: rockchip: rv1106g-evb2: config dma_heap_cma to 24MB
Generally, the set the rk_dma_heap_cma as an environment variable that
was passed to kernel via bootargs. Due to thuner-boot, we fixed the
bootargs in DTS.

Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
Change-Id: I725fa3cde59c8b1e6c84fecbc0d1611d333b69e3
2022-05-10 10:43:03 +08:00
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