Commit Graph

1066110 Commits

Author SHA1 Message Date
Jianwei Fan
8b6e363e11 media: i2c: s5k3l6xx: fix start straem sequential and add flip support
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
Change-Id: I8c7302eac2a0129dcdb7a7c14b686d54b257853a
2022-05-13 17:12:22 +08:00
Wu Liangqing
aa43b7e67d arm64: dts: rockchip: rk3588s-tablet: add uboot charge suspend node
Change-Id: I664b07c341be806ea47b71ca182c1e024247551e
Signed-off-by: Wu Liangqing <wlq@rock-chips.com>
2022-05-13 16:09:42 +08:00
Zhenhua Huang
1fe13c137b UPSTREAM: mm: fix page_owner initializing issue for arm32
Page owner of pages used by page owner itself used is missing on arm32
targets.  The reason is dummy_handle and failure_handle is not initialized
correctly.  Buddy allocator is used to initialize these two handles.
However, buddy allocator is not ready when page owner calls it.  This
change fixed that by initializing page owner after buddy initialization.

The working flow before and after this change are:
original logic:
 1. allocated memory for page_ext(using memblock).
 2. invoke the init callback of page_ext_ops like page_owner(using buddy
    allocator).
 3. initialize buddy.

after this change:
 1. allocated memory for page_ext(using memblock).
 2. initialize buddy.
 3. invoke the init callback of page_ext_ops like page_owner(using buddy
    allocator).

with the change, failure/dummy_handle can get its correct value and page
owner output for example has the one for page owner itself:

  Page allocated via order 2, mask 0x6202c0(GFP_USER|__GFP_NOWARN), pid 1006, ts 67278156558 ns
  PFN 543776 type Unmovable Block 531 type Unmovable Flags 0x0()
    init_page_owner+0x28/0x2f8
    invoke_init_callbacks_flatmem+0x24/0x34
    start_kernel+0x33c/0x5d8

Link: https://lkml.kernel.org/r/1603104925-5888-1-git-send-email-zhenhuah@codeaurora.org
Signed-off-by: Zhenhua Huang <zhenhuah@codeaurora.org>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
(cherry picked from commit 7fb7ab6d61)
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: I5bdf1274eba27dacd41b92246c70bb41a69bd87e
2022-05-13 14:45:20 +08:00
Damon Ding
60788a1442 drm/rockchip: vop: add vop_reg interlace_read for rv1106
It is necessary for rv1106 to enable win interlace_read
feature when using 'i' display mode, like 720x480i and
720x576i.

Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
Change-Id: I174043875d2b19f0eebaa43f3555de3ca6d96c00
2022-05-13 14:33:52 +08:00
Su Yuefu
e5c40bc9d0 ARM: dts: rockchip: rv1106-evb-v10: RV1106 rtc open by default
Signed-off-by: Su Yuefu <yuefu.su@rock-chips.com>
Change-Id: I9456d17dae8b24bf8a0a8041efc8eef2592e48a1
2022-05-13 14:27:19 +08:00
Su Yuefu
ed45a03577 ARM: rv1106-evb.config: add rockchip rtc build config
Signed-off-by: Su Yuefu <yuefu.su@rock-chips.com>
Change-Id: I1b154688c8850de49b24521b0081f5bd6398e5cf
2022-05-13 14:22:57 +08:00
Tao Huang
dd9ba4d35b ARM: rv1106-evb.config: Update by diffconfig
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I8149173f7a3a5182e21c7f723d60ddf705723252
2022-05-13 14:20:47 +08:00
Zhichao Yu
adc69b3cef ARM: dts: rockchip: rv1106-ipc: add coherent_pool=0 to bootargs
Signed-off-by: Zhichao Yu <zhichao.yu@rock-chips.com>
Change-Id: I451f5b220e5395a7af78cdc4989e086fc977108e
2022-05-13 14:15:15 +08:00
Ding Wei
bfb97da050 rockchip: video: mpp: Add soft reset+disable_irq before power off
Change-Id: I62feeae483092bbd12edb185c956acc00b27b1c3
Signed-off-by: Ding Wei <leo.ding@rock-chips.com>
Signed-off-by: Wu Liangqing <wlq@rock-chips.com>
2022-05-13 14:14:02 +08:00
Dingxian Wen
5c5251eabd media: rockchip: hdmirx: remove LTE_340MHz_scramble support from edid
Signed-off-by: Dingxian Wen <shawn.wen@rock-chips.com>
Change-Id: I3b82ab2786b908cfd188348afc96049749c2f79d
2022-05-13 11:26:29 +08:00
Dingxian Wen
6f4e90e375 media: rockchip: hdmirx: add wdt support
Reset the system through the watchdog when the system crashes with a
very low probability.

Signed-off-by: Dingxian Wen <shawn.wen@rock-chips.com>
Change-Id: I075852d6fcf9fbf5428c3b9ec794d58c3471a8af
2022-05-13 11:03:09 +08:00
XiaoDong Huang
187a20276c firmware: rockchip_sip: support wdt config
Signed-off-by: XiaoDong Huang <derrick.huang@rock-chips.com>
Change-Id: I49bceb0dfe0c6bed797d34e98a48ab793f91dbce
2022-05-13 11:03:09 +08:00
Yu Qiaowei
2f34117233 video: rockchip: rga3: Fix abnormal request exit process
Update driver version to 1.2.12

Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I4381e4b62ff90e09a148bee56f8bbaa478561570
2022-05-13 10:54:44 +08:00
Jianqun Xu
08a957965d ARM: dts: rockchip: rv1103-evb-v10: add coherent_pool=0 to bootargs
Change-Id: Id5439ae999db5e6bcc77f3b6a21e021622cdd2c7
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
2022-05-13 10:37:05 +08:00
Finley Xiao
36a09bba64 arm64: dts: rockchip: rk3588s: Add more opp node for cpub
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: I58880e1ddde285196ea37954f8bef426fd3ba54a
2022-05-12 20:50:56 +08:00
Finley Xiao
6e471ff113 cpufreq: rockchip: Add support to set soc info for rk3588
1. Change length according to speed grade.
2. Set supported platforms according to SoC version and speed grade.

Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: I448d3f784216bc034ea2900e5ab837920721cdd0
2022-05-12 20:50:56 +08:00
Finley Xiao
917e7daef8 arm64: dts: rockchip: rk3588s: change cpu npu and gpu opp table
In order to improve yield and stability.

Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: I5e5fc7aa3b0a06b2a518cee0bba0c348f9321989
2022-05-12 20:50:56 +08:00
William Wu
a9e2f5f2a7 phy: rockchip: inno-usb2: fix compile warning
This patch fixes the following compile warning:
drivers/phy/rockchip/phy-rockchip-inno-usb2.c:1225:3: warning: Value stored to 'sch_work' is never read
drivers/phy/rockchip/phy-rockchip-inno-usb2.c:1235:4: warning: Value stored to 'sch_work' is never read

Signed-off-by: William Wu <william.wu@rock-chips.com>
Change-Id: I053f5775b28707a45530405084e3df827edde882
2022-05-12 19:04:29 +08:00
Finley Xiao
bdc5bf6b2d arm64: dts: rockchip: rk3588-rk806: Remove vdd gpu regulator-always-on
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: I5ce9e0ec39f14c23a3e8aec608f4034308d1f8c4
2022-05-12 18:59:23 +08:00
Finley Xiao
e7fd42c35e MALI: bifrost: disable regulator when pm status is suspended
The system calls pm_runtime_get_noresume() to prevent device
from entering to runtime suspend status when reboot, and the
pm_runtime_put_sync_suspend() is called in a delay work,
so when reboot the power domain may be power on,
but the regulator is disabled, it's not allowed.

Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: Ie25451ddf4fc866e93e7272a8d9a809919a96e1d
2022-05-12 18:59:23 +08:00
Finley Xiao
fe111758d6 MALI: bifrost: enable regulator when suspend
When system resume, all power domains will power on in
dpm_noirq_resume_devices(), if vdd gpu is disabled before system
suspend, the pd gpu will failed to power on when system resume,
the detail as follows:

rockchip-pm-domain fd8d8000.power-management:power-controller: failed to get ack on domain 'gpu', target_idle = 0, target_ack = 0, val=0x8080f
Kernel panic - not syncing: panic_on_set_idle set ...
CPU: 0 PID: 1947 Comm: Binder:352_2 Not tainted 5.10.66 #960
Hardware name: Rockchip RK3588 EVB1 LP4 V10 Board (DT)
Call trace:
 dump_backtrace+0x0/0x1c8
 show_stack+0x1c/0x2c
 dump_stack_lvl+0xdc/0x12c
 dump_stack+0x1c/0x64
 panic+0x150/0x3a4
 rockchip_pmu_set_idle_request+0x1f8/0x1fc
 rockchip_pd_power+0x11c/0x1e0
 rockchip_pd_power_on+0x28/0x38
 genpd_sync_power_on+0xf4/0x134
 genpd_resume_noirq+0x70/0xd0
 device_resume_noirq+0x1a8/0x410
 dpm_noirq_resume_devices+0x100/0x55c
 dpm_resume_noirq+0x18/0x34
 suspend_enter+0x33c/0x52c
 suspend_devices_and_enter+0xec/0x338
 enter_state+0x12c/0x3f8
 pm_suspend+0x60/0xcc
 state_store+0x108/0x148
 kobj_attr_store+0x1c/0x34
 sysfs_kf_write+0x40/0x58
 kernfs_fop_write_iter+0xf0/0x194
 vfs_write+0x328/0x390
 ksys_write+0x78/0xe8
 __arm64_sys_write+0x20/0x30
 el0_svc_common+0xc0/0x23c
 do_el0_svc+0x28/0x88
 el0_svc+0x14/0x24
 el0_sync_handler+0x88/0xec
 el0_sync+0x1a8/0x1c0
SMP: stopping secondary CPUs

Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: I89f80d37ab2cc61c715bce3f8a25c26552918922
2022-05-12 18:59:23 +08:00
Jason Song
d1ae8597d2 arm64: dts: rockchip: support rk3588s tablet v11, single rk806.
Signed-off-by: Jason Song <sxj@rock-chips.com>
Change-Id: I96f7d494d2470aacde8ea95ba84dd6f5bb50efdc
2022-05-12 18:51:15 +08:00
Steven Liu
d17c82171e ARM: configs: rv1106: Enable ROCKCHIP_AMP
Signed-off-by: Steven Liu <steven.liu@rock-chips.com>
Change-Id: I41ae22d7c45fad742917d48c2399c319fe15e208
2022-05-12 18:50:48 +08:00
Steven Liu
ee2906b73e ARM: dts: rockchip: rv1106: add rv1106-amp.dtsi
Signed-off-by: Steven Liu <steven.liu@rock-chips.com>
Change-Id: I5bb07301307cf6e53ceeb056ed006d18eb89ff68
2022-05-12 18:50:48 +08:00
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