Commit Graph

1065018 Commits

Author SHA1 Message Date
David Wu
defb18abcd net: ethernet: stmmac: dwmac-rk: Add config option for dwmac-rk-tool
Add this config option to reduce memory usage, if it was not necessary.

./ksize.sh drivers/net/ethernet/stmicro/

before size: 131758 Bytes
after  size: 121861 Bytes
save   size: 9897   Bytes

Signed-off-by: David Wu <david.wu@rock-chips.com>
Change-Id: I96c88d5eb5109fc956a85b8685e1746d76545a87
2022-02-20 20:52:42 +08:00
Tao Huang
9285917d7b net: stmmac: dwmac-rk: build depends on CPU config
When build with rv1126_defconfig:

before:
   text	   data	    bss	    dec	    hex	filename
  17063	    144	      0	  17207	   4337	drivers/net/ethernet/stmicro/stmmac/dwmac-rk.o

after:
   text	   data	    bss	    dec	    hex	filename
   7387	    144	      0	   7531	   1d6b	drivers/net/ethernet/stmicro/stmmac/dwmac-rk.o

Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I941f79357f686f5d35e727abea2fe26c4ea0dafa
2022-02-20 20:45:36 +08:00
Yu Qiaowei
75b148bcbe video: rockchip: rga3: Integration of format-related processing
1. Wrapped some format-related functions, avoid using formatted
index values.
2. Fix incorrect format alignment requirements.

Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I3f1493dc59f9b303f6e8f289f63b515ad56d3651
2022-02-18 20:15:20 +08:00
Wangqiang Guo
ab238eac93 input: sensor: light/proximity sensor: support ucs14620
Signed-off-by: Wangqiang Guo <kay.guo@rock-chips.com>
Change-Id: If3bb5077e0a5d4cc7a5581b479f39ee1bc4f3b1b
2022-02-18 16:56:01 +08:00
Elaine Zhang
20d9591cb6 clk: rockchip: optimize static memory consume
Before:
text    data     bss     dec     hex filename
   5661      24      16    5701    1645 clk.o
  10990       0      36   11026    2b12 clk-pll.o
   2288       0       0    2288     8f0 clk-cpu.o
   1856       0       0    1856     740 clk-half-divider.o
    607       0       0     607     25f clk-inverter.o
    872       0       0     872     368 clk-mmc-phase.o
    580       0       0     580     244 clk-muxgrf.o
   1524       0      12    1536     600 clk-ddr.o
   1322       0       0    1322     52a clk-dclk-divider.o
   2368     160       0    2528     9e0 clk-pvtm.o
After:
text    data     bss     dec     hex filename
   5461      24      16    5501    157d clk.o
   4864       0      36    4900    1324 clk-pll.o
   2164       0       0    2164     874 clk-cpu.o
   1856       0       0    1856     740 clk-half-divider.o
    872       0       0     872     368 clk-mmc-phase.o
    580       0       0     580     244 clk-muxgrf.o
    908       0       8     916     394 clk-ddr.o
    660       0       0     660     294 softrst.o

Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
Change-Id: I469229b9566af1cab6cc3a6bb9f4f8e308e0eded
2022-02-18 16:51:11 +08:00
ZiHan Huang
a1c7a21e37 arm64: dts: rockchip: rk3588-ipc: Remove the frequency below 1.2g from the CPU
Signed-off-by: ZiHan Huang <zack.huang@rock-chips.com>
Change-Id: Ie3c09b1201537b70a71f9d37b11b70f076591b97
2022-02-18 16:32:02 +08:00
XiaoDong Huang
905292577d arm64: dts: rockchip: rk3588-nvr-demo: overwrite rk806single node
Overwrite rk806single node for virtual poweroff:
1. Don't close 24M_osc's power in suspend;
2. Pmic's pinctrl switch to sleep function in system poweroff;

Signed-off-by: XiaoDong Huang <derrick.huang@rock-chips.com>
Change-Id: I3287eb57f5e18bf76f7f2468b997edd787d7c3f9
2022-02-18 16:31:40 +08:00
XiaoDong Huang
c67b9d6c2d arm64: dts: rockchip: rk3588-nvr-demo: overwrite rockchip_suspend node
Overwrite rockchip_suspend node for waking up by pwm_int in system suspend:
1. Use 24M clock in suspend;
2. Enable RKPM_CPU0_WKUP_EN wakeup;
3. Enable virtual-poweroff;
4. Enable sleep-debug-en;

Signed-off-by: XiaoDong Huang <derrick.huang@rock-chips.com>
Change-Id: I10685799a90cc5dde2f698924e5bd8a45ad00b27
2022-02-18 16:31:40 +08:00
Herman Chen
baccd98fb9 video: rockchip: mpp: Add message batch process
1. Add SET_SESSION_FD cmd for message session switch.
2. Use session to temporally store the ioctl message. Default message
   capacity is 2. For multi-core hardware the message capacity can be
   larger.
3. Split message handling into several stages. All the batch messages
   are attached to the temporary list and process stage by stage.

Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I9d96bb96c24001dc5d27893fb09d1b8073d1a4a5
2022-02-18 16:31:11 +08:00
Yu Qiaowei
d6ce2a864f video: rockchip: rga3: rga_mm supports physically continuous dma_buf
When calling RGA2 with a physically contiguous dma_buf it will be called
with the physical address.

Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: Iadb2d638b426c9be64a403b42513f8c7b58fb866
2022-02-18 11:28:48 +08:00
Steven Liu
3c9d35599a ARM: dts: rockchip: add rv1106 pinctrl file
Signed-off-by: Steven Liu <steven.liu@rock-chips.com>
Change-Id: If112f17b407db9046e86c75de6dc78671925a618
2022-02-18 10:33:02 +08:00
Wyon Bi
1e6a3f893b drm/bridge: analogix_dp: Add psr support for rk3588
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: I2004acef465a81b319533b15e15534f4e478aa7e
2022-02-18 10:04:16 +08:00
Wyon Bi
15459de1b5 drm/rockchip: analogix_dp: Add support for split mode
Fixes: 80db5a7bc7 ("drm/rockchip: analogix_dp: Add support for split mode")
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: I78adabb09462c9f612a369fd45d60fb701612d49
2022-02-18 10:04:16 +08:00
Wyon Bi
d0f6f91898 phy/rockchip: samsung-hdptx: Disable main link if lanes arg is zero
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: I59a88b37ae49d409b78e0f4764c1a9ec4e7b978c
2022-02-18 10:04:16 +08:00
Brian Norris
18a88f8ecc UPSTREAM: drm/bridge: analogix_dp: Make PSR-exit block less
Prior to commit 6c836d965b ("drm/rockchip: Use the helpers for PSR"),
"PSR exit" used non-blocking analogix_dp_send_psr_spd(). The refactor
started using the blocking variant, for a variety of reasons -- quoting
Sean Paul's potentially-faulty memory:

"""
 - To avoid racing a subsequent PSR entry (if exit takes a long time)
 - To avoid racing disable/modeset
 - We're not displaying new content while exiting PSR anyways, so there
   is minimal utility in allowing frames to be submitted
 - We're lying to userspace telling them frames are on the screen when
   we're just dropping them on the floor
"""

However, I'm finding that this blocking transition is causing upwards of
60+ ms of unneeded latency on PSR-exit, to the point that initial cursor
movements when leaving PSR are unbearably jumpy.

It turns out that we need to meet in the middle somewhere: Sean is right
that we were "lying to userspace" with a non-blocking PSR-exit, but the
new blocking behavior is also waiting too long:

According to the eDP specification, the sink device must support PSR
entry transitions from both state 4 (ACTIVE_RESYNC) and state 0
(INACTIVE). It also states that in ACTIVE_RESYNC, "the Sink device must
display the incoming active frames from the Source device with no
visible glitches and/or artifacts."

Thus, for our purposes, we only need to wait for ACTIVE_RESYNC before
moving on; we are ready to display video, and subsequent PSR-entry is
safe.

Tested on a Samsung Chromebook Plus (i.e., Rockchip RK3399 Gru Kevin),
where this saves about 60ms of latency, for PSR-exit that used to
take about 80ms.

Fixes: 6c836d965b ("drm/rockchip: Use the helpers for PSR")
Cc: <stable@vger.kernel.org>
Cc: Zain Wang <wzz@rock-chips.com>
Cc: Tomasz Figa <tfiga@chromium.org>
Cc: Heiko Stuebner <heiko@sntech.de>
Cc: Sean Paul <seanpaul@chromium.org>
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-by: Sean Paul <seanpaul@chromium.org>
Signed-off-by: Robert Foss <robert.foss@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20211103135112.v3.1.I67612ea073c3306c71b46a87be894f79707082df@changeid

Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: Idd20cb5533a6c56dfd291d5977a92ad28b02ce73
(cherry picked from commit c4c6ef2295)
2022-02-18 10:04:16 +08:00
Lin Jinhan
2b1119ffcf crypto: rockchip: cryptodev: optimized CIOCGSESSION return value
When the CIOCGSESSION command creates an unsupported algorithm or mode,
 errno is set to -ENOEN.

Add SM3/HMAC_SM3 support.

Move CMAC/CBCMAC from cipher to hmac.

Signed-off-by: Lin Jinhan <troy.lin@rock-chips.com>
Change-Id: I4f5f274ffe47d2b81584c192991670ddb2e3def5
2022-02-18 09:56:06 +08:00
Sugar Zhang
693ed82bdd ARM: configs: Add mini defconfig for rv1106
This patch minimize config for IPC products picked from
branch develop-4.19 and then do minimize work on branch develop-5.10.

System Features Disabled:

- CONFIG_TEE
- CONFIG_OPTEE
- CONFIG_ARM_PSCI
- CONFIG_IO_URING
- CONFIG_LOG_BUF_SHIFT=16
+ CONFIG_LOG_BUF_SHIFT=14
- CONFIG_CPU_ISOLATION
- CONFIG_LOG_CPU_MAX_BUF_SHIFT=0
- CONFIG_ARM_ERRATA_643719
- CONFIG_SMP
- CONFIG_SCHED_MC

Module Disabled:

- CONFIG_MFD_RK808
- CONFIG_ROCKCHIP_IODOMAIN (hw auto on rv1106)
- CONFIG_IOMMU_SUPPORT
- CONFIG_ROCKCHIP_SIP
- CONFIG_ROCKCHIP_SUSPEND_MODE
- CONFIG_VIDEO_ROCKCHIP_ISPP
- CONFIG_ROCKCHIP_PM_DOMAINS

Module Features Disabled:

- CONFIG_MEDIA_CEC_SUPPORT
- CONFIG_MEDIA_ANALOG_TV_SUPPORT
- CONFIG_MEDIA_DIGITAL_TV_SUPPORT
- CONFIG_MEDIA_RADIO_SUPPORT
- CONFIG_MEDIA_SDR_SUPPORT
- CONFIG_MEDIA_TEST_SUPPORT
- CONFIG_ROCKCHIP_MPP_RKVDEC
- CONFIG_ROCKCHIP_MPP_VDPU2
- CONFIG_ROCKCHIP_MPP_IEP2
- CONFIG_NVMEM_SYSFS
- CONFIG_DEBUG_MISC
- CONFIG_ROCKCHIP_CLK_COMPENSATION
- CONFIG_CLK_RV1108
- CONFIG_CLK_RV1126
- CONFIG_CLK_RK3036
- CONFIG_CLK_RK312X
- CONFIG_CLK_RK3188
- CONFIG_CLK_RK322X
- CONFIG_CLK_RK3288

Changelog:
v11: Disable SMP for single A7

    - CONFIG_CPU_ISOLATION
    - CONFIG_LOG_CPU_MAX_BUF_SHIFT=0
    - CONFIG_ARM_ERRATA_643719
    - CONFIG_SMP
    - CONFIG_SCHED_MC

v10: Disable rockchip power domain

    - CONFIG_ROCKCHIP_PM_DOMAINS

v9: Decrease log buf from 64KB to 16KB

    - CONFIG_LOG_BUF_SHIFT=16
    + CONFIG_LOG_BUF_SHIFT=14

    $ ./scripts/bloat-o-meter kernel/printk/printk.o.old kernel/printk/printk.o
    add/remove: 0/0 grow/shrink: 0/3 up/down: 0/-202752 (-202752)
    Function                                     old     new   delta
    _printk_rb_static_descs                    24576    6144  -18432
    __log_buf                                  65536   16384  -49152
    _printk_rb_static_infos                   180224   45056 -135168
    Total: Before=297532, After=94780, chg -68.14%

    The follow commit make DATA/BSS 200+ KB larger, Currently, just
    decrease CONFIG_LOG_BUF_SHIFT to minimize.

    896fbe20b4 ("printk: use the lockless ringbuffer")

v8: Disable io uring

    - CONFIG_IO_URING

v7: Disable clk for other SoC
    Disable clk compensation

v6: Enable CONFIG_CPU_RV1106

    - CONFIG_CPU_RV1126=y
    + CONFIG_CPU_RV1106=y

v5: Disable SIP with no ATF/TEE

    - CONFIG_ROCKCHIP_SIP=y
    - CONFIG_ROCKCHIP_SUSPEND_MODE=y
    - CONFIG_TEE=y
    - CONFIG_OPTEE=y
    - CONFIG_ARM_PSCI=y

    This also fix panic on FPGA which has no TEE/ATF.

    Fixes: b9c1178cad ("drm/rockchip: gem: dynamic get ddr map info for reorder page")

    [<b0013a48>] (unwind_backtrace) from [<b0010648>] (show_stack+0x10/0x14)
    [<b0010648>] (show_stack) from [<b04653b8>] (dump_stack_lvl+0x90/0xa8)
    [<b04653b8>] (dump_stack_lvl) from [<b0376750>] (__invoke_sip_fn_smc+0x20/0x84)
    [<b0376750>] (__invoke_sip_fn_smc) from [<b0376dc4>] (sip_smc_request_share_mem+0x24/0x50)
    [<b0376dc4>] (sip_smc_request_share_mem) from [<b0376e18>] (sip_smc_get_dram_map+0x28/0x90)
    [<b0376e18>] (sip_smc_get_dram_map) from [<b0268b38>] (rockchip_gem_get_ddr_info+0x8/0x28)
    [<b0268b38>] (rockchip_gem_get_ddr_info) from [<b0619378>] (rockchip_drm_init+0x50/0x78)
    [<b0619378>] (rockchip_drm_init) from [<b0009910>] (do_one_initcall+0x70/0x160)
    [<b0009910>] (do_one_initcall) from [<b0602fb0>] (kernel_init_freeable+0x1bc/0x208)
    [<b0602fb0>] (kernel_init_freeable) from [<b04684c4>] (kernel_init+0x8/0xf8)
    [<b04684c4>] (kernel_init) from [<b00083b8>] (ret_from_fork+0x14/0x3c)
    Exception stack(0xb084ffb0 to 0xb084fff8)
    ffa0:                                     00000000 00000000 00000000 00000000
    ffc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
    ffe0: 00000000 00000000 00000000 00000000 00000013 00000000
    Bad mode in data abort handler detected
    Internal error: Oops - BUG: 0 [#1] PREEMPT SMP ARM
    Modules linked in:
    CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.10.66 #18
    Hardware name: Generic DT based system
    PC is at vector_swi+0x4/0x44
    LR is at __invoke_sip_fn_smc+0x6c/0x84

v4: Disable iommu support.

    - CONFIG_IOMMU_SUPPORT

v3: Switch to KERNEL_XZ for minimize image size.

    + CONFIG_KERNEL_XZ
    - CONFIG_KERNEL_LZ4

v2: Disable pmic, iodomain, and some decoders.

v1: Cherry-pick and init config by savedefconfig on develop-5.10:
    make ARCH=arm savedefconfig
    cp defconfig arch/arm/configs/rv1106_mini_defconfig

As a reference for the original work for the tiny memory products
on branch develop-4.19:

| https://10.10.10.29/c/rk/kernel/+/132901/19
|
| Test based on commit branch: develop-4.19
| b84613bfeb ("ASoC: rockchip: Kconfig: Remove unused PREALLOC_BUFFER_SIZE")
|
| Compiled with rv1126_defconfig;
|
| $ ls -l
| 12881196 arch/arm/boot/Image
| 5950856 arch/arm/boot/zImage (lz4)
| 3643824 arch/arm/boot/zImage (xz)
|
| $ size vmlinux
|    text    data     bss     dec     hex filename
| 8235528	1998740	 256784	10491052 a014ac	vmlinux
|
| Compiled with rv1106_mini_defconfig:
|
| $ ls -l
| 5808184 arch/arm/boot/Image
| 3359464 arch/arm/boot/zImage (lz4)
| 2078880 arch/arm/boot/zImage (xz)
|
| Note: xz is smaller but boot slowly.
|
| $ size vmlinux
|    text    data     bss     dec     hex filename
| 4628287	1169884	 141472	5939643	 5aa1bb	vmlinux
|
| a. + CONFIG_SMP Disabled (for single core):
|
| $ ls -l
| 5733720 arch/arm/boot/Image
| 2007456 arch/arm/boot/zImage (xz)
|
| $ size vmlinux
|    text    data     bss     dec     hex filename
| 4583931	1136960	 135356	5856247	 595bf7	vmlinux
|
| b. + CONFIG_THUMB2_KERNEL
|
| $ ls -l
| 4365656 arch/arm/boot/Image ~24% smaller
| 2157208 arch/arm/boot/zImage (xz) bigger than arm inst ?
|
| $ size vmlinux
|    text    data     bss     dec     hex filename
| 3219691	1136952	 135356	4491999	 448adf	vmlinux
|
| -------------------------------------------------------------------------
|
| Compared to rv1126_defconfig:
|
| SubSystem Disabled:
|
| - CONFIG_BT
| - CONFIG_WIRELESS
| - CONFIG_SCSI
| - CONFIG_INPUT
| - CONFIG_USB
| - CONFIG_NEW_LEDS
| - CONFIG_MAILBOX
|
| Module Disabled:
|
| - CONFIG_RK_FLASH when eMMC
| - CONFIG_ARM_ROCKCHIP_DMC_DEVFREQ
| - CONFIG_ARM_ROCKCHIP_DMC_DEBUG
| - CONFIG_SND_HRTIMER
| - CONFIG_SND_ALOOP
| - CONFIG_SND_PROC_FS
| - CONFIG_SND_DRIVERS
| - CONFIG_SND_SOC_ROCKCHIP_I2S
| - CONFIG_SND_SOC_ROCKCHIP_PDM
| - CONFIG_SND_SOC_DUMMY_CODEC
| - CONFIG_OVERLAY_FS
| - CONFIG_UBIFS_FS when eMMC
| - CONFIG_MTD_UBI
| - CONFIG_SQUASHFS
| - CONFIG_PSTORE
| - CONFIG_VFAT_FS
| - CONFIG_NTFS_FS
| - CONFIG_VIDEO_IMX347
| - CONFIG_VIDEO_IMX378
| - CONFIG_VIDEO_OV4689
| - CONFIG_VIDEO_GC4C33
| - CONFIG_DRM_ROCKCHIP
| - CONFIG_BACKLIGHT_LCD_SUPPORT
| - CONFIG_PHY_ROCKCHIP_INNO_MIPI_DPHY
|
| Module Features Disabled:
|
| - CONFIG_RK_CONSOLE_THREAD
| - CONFIG_NET_KEY
| - CONFIG_SYN_COOKIES
| - CONFIG_PACKET (DHCP related)
| - CONFIG_LBDAF (ext4 2TB+)
| - CONFIG_BLK_DEV_BSG
| - CONFIG_FILE_LOCKING
| - CONFIG_INOTIFY_USER
| - CONFIG_NLS_CODEPAGE_437
| - CONFIG_NLS_ISO8859_1
| - CONFIG_I2C_MUX
| - CONFIG_PTP_1588_CLOCK
| - CONFIG_ARM_CRYPTO
| - CONFIG_CRYPTO_SHA1_ARM
| - CONFIG_CRYPTO_SHA256_ARM
| - CONFIG_CRYPTO_SHA512_ARM
| - CONFIG_STMMAC_ETHTOOL
| - CONFIG_STMMAC_FULL
| - CONFIG_DWMAC_ROCKCHIP_TOOL
| - CONFIG_ETHTOOL
| - CONFIG_FILTER
| - CONFIG_STMMAC_PTP
|
| System Features Disabled:
|
| - CONFIG_HIGHMEM
| - CONFIG_VDSO
| - CONFIG_ZRAM
| - CONFIG_SWAP
| - CONFIG_BLK_DEV_INITRD
| - CONFIG_INITRD_ASYNC
| - CONFIG_KERNEL_MODE_NEON
| - CONFIG_ZSMALLOC
|
| Debug / Profiling Disabled:
|
| - CONFIG_DEBUG_FS
| - CONFIG_IRQ_TIME_ACCOUNTING
| - CONFIG_PERF_EVENTS
| - CONFIG_BUG
| - CONFIG_ELF_CORE
| - CONFIG_SLUB_SYSFS
| - CONFIG_PROFILING
| - CONFIG_PM_DEBUG
| - CONFIG_PM_ADVANCED_DEBUG
| - CONFIG_DEBUG_INFO
| - CONFIG_MAGIC_SYSRQ
| - CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0
| - CONFIG_PANIC_ON_OOPS
| - CONFIG_DEBUG_USER
|
| Buffer Size Decrease:
|
| - CONFIG_SERIAL_8250_NR_UARTS=2
| - CONFIG_SERIAL_8250_RUNTIME_UARTS=2
| - CONFIG_LOG_BUF_SHIFT=16
| - CONFIG_CMA_SIZE_MBYTES=0 Note: cma dts node should be disabled.
|
| Section Align Disabled for minimize Image:
|
| - CONFIG_DEBUG_ALIGN_RODATA
| - CONFIG_STRICT_KERNEL_RWX
| - CONFIG_STRICT_MODULE_RWX
|
| Details see: arch/arm/kernel/vmlinux.lds.S
|
| Compile Optimized for Image:
|
| - CONFIG_STACKPROTECTOR_STRONG
| + CONFIG_CC_OPTIMIZE_FOR_SIZE=y
|
| -------------------------------------------------------------------------
| Changelog:
|
| v20: bring back INITRD for FPGA TEST.
|
| v19: drop CONFIG_SND_SOC_ROCKCHIP_PREALLOC_BUFFER_SIZE=32
|
|   Instead, pass module option 'prealloc_buffer_size_kbytes' to specify it.
|   any details refer to: Documentation/sound/alsa-configuration.rst
|
|   e.g. 32 kbytes prealloc buffer size:
|
|   "snd_soc_core.prealloc_buffer_size_kbytes=32"
|
| v18: drop CONFIG_LBDAF by do mke2fs with '-O ^huge_file' option.
|
| v17: bring back features for IPC-emmc FFT(Full Functional Test) passed
|
| + CONFIG_PACKET (dhcp related)
|   For support DHCP default.
|
| + CONFIG_DRM_ROCKCHIP
| + CONFIG_ROCKCHIP_VOP
|   Currently, drm buffer alloc is still used by user.
|   Note: uboot display should be disabled, otherwise, panic on rockchip drm probe.
|
| + CONFIG_LBDAF
|   Actually, here should say NO, because it is required to support 2TB+
|   devices which we don't need it, but which was enabled default by mke2fs.ext4.
|   So, we bring it back temporarily until users do mke2fs.ext4 without
|   huge file feature supported.
|
| static code size cost: ~200KB
|
| before:
| $ size vmlinux
|    text    data     bss     dec     hex filename
| 4469469 1143032  138528 5751029  57c0f5 vmlinux
|
| after:
| $ size vmlinux
|    text    data     bss     dec     hex filename
| 4628287	1169884	 141472	5939643	 5aa1bb	vmlinux

Change-Id: I5846831e3a43edd45587459866a339db5c42a137
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2022-02-17 21:12:50 +08:00
Tao Huang
fc2be569e8 HACK: lib/kobject_uevent.c: ignore thermal uevent when suspend
Android healthd try to listen power_supply subsystem uevent,
but which will block system from suspend on big.LITTLE system
because thermal_cooling_device_unregister will called when
cpufreq_exit. So ignore this uevent when suspend.

Change-Id: I35948498916560d5ec75fe561c9e9d588663ad22
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2022-02-17 20:34:22 +08:00
Wyon Bi
0126aeed19 drm/bridge: analogix_dp: Fix YCbCr Coefficients
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: If560fd514a2c946abcca35a5bbc18edf051cea5b
2022-02-17 19:23:10 +08:00
Wyon Bi
54f2fcc787 arm64: dts: rockchip: rk3568: Add edp phy grf node
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: I0ee522627cc057bd5b0be2c862e56f020dae57a2
2022-02-17 19:22:41 +08:00
Wyon Bi
3cdcfb1a52 phy/rockchip: naneng-edp: Convert to use regmap
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: I9a4a489b7df34a15d2b8e57cf9e2f4c97cc06118
2022-02-17 19:22:41 +08:00
Wyon Bi
2cbb25ad93 soc: rockchip: grf: Add platform driver for edp phy grf
We need to overwrite the default register value to put the PHY into
low power mode in idle state.

Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: I4c788ce04880d6e25d4454e5594882d511b0bc97
2022-02-17 19:22:41 +08:00
Tao Huang
a9a635ccaa Revert "arm64: rockchip_defconfig: Disable CONFIG_CLK_RK1808/CONFIG_CLK_RK3308"
This reverts commit 36040e7744.

After commit 5f3de16bb2 ("clk: rockchip: depends on CPU config").
CLK_RK1808 depends on CPU_RK1808 and CLK_RK3308 depends on CPU_RK3308.

Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I47b539d06980f5fa0b50ac88792f1db9cea3cb5f
2022-02-17 19:10:44 +08:00
Tao Huang
5f3de16bb2 clk: rockchip: depends on CPU config
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I0f1e0e16297ed637a0e9877fd81b912830fd54ac
2022-02-17 19:03:21 +08:00
Mark Huang
aeadae2cf0 arm64: dts: rockchip: rk3588-nvr-demo: enable hdmi kernel logo display
Signed-off-by: Mark Huang <huangjc@rock-chips.com>
Change-Id: I58fb5b66f8c61e234ee35981fbab3b3c89cfa7e6
2022-02-17 16:53:13 +08:00
Tao Huang
eaffc8cb25 soc: rockchip: pvtm: build depends on CPU config
When build with rv1126_defconfig:

before:
   text	   data	    bss	    dec	    hex	filename
   8796	    156	      4	   8956	   22fc	drivers/soc/rockchip/rockchip_pvtm.o

after:
   text	   data	    bss	    dec	    hex	filename
   4508	    156	      4	   4668	   123c	drivers/soc/rockchip/rockchip_pvtm.o

Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I8c49713ebc48586aa4f08fb3ec965890c2beb1a2
2022-02-17 16:01:16 +08:00
Tao Huang
83ce67ca8e arm64: rockchip_linux_defconfig: Remove CONFIG_ROCKCHIP_FIQ_DEBUGGER
default FIQ_DEBUGGER for ROCKCHIP_FIQ_DEBUGGER.

Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I057ced60a847774c6c67f89d9eedb8f8d31d53b4
2022-02-17 15:53:21 +08:00
Tao Huang
6ac1255a04 Revert "arm64: rockchip_defconfig: Enable CONFIG_ROCKCHIP_FIQ_DEBUGGER"
This reverts commit c75dc801f4.

default FIQ_DEBUGGER for ROCKCHIP_FIQ_DEBUGGER.

Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I928f061a92d5c8735ffcd05d5b1f40723d3678e3
2022-02-17 15:53:21 +08:00
Tao Huang
28683962e5 soc: rockchip: add default FIQ_DEBUGGER for ROCKCHIP_FIQ_DEBUGGER
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I632aea70c71fe016eab3c5b545d09e72464f11cb
2022-02-17 15:53:21 +08:00
shengfei Xu
02f6bc236c arm64: dts: rockchip: rk3588-rk806: add label
Signed-off-by: shengfei Xu <xsf@rock-chips.com>
Change-Id: Ib159b5097dcab66586ee58a17dc7d55ae957d03c
2022-02-17 15:45:20 +08:00
Tao Huang
465c41218f pinctrl: rockchip: build depends on CPU config
When build with rv1126_defconfig:

before:
   text	   data	    bss	    dec	    hex	filename
  18918	  34120	      8	  53046	   cf36	drivers/pinctrl/pinctrl-rockchip.o

after:
   text	   data	    bss	    dec	    hex	filename
  11726	   3028	      8	  14762	   39aa	drivers/pinctrl/pinctrl-rockchip.o

Change-Id: I09e85d6a05f9bdee1033584bd1573d41d69633bc
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2022-02-17 14:43:07 +08:00
Sandy Huang
9ad590f781 drm/rockchip: vop2: update lineflag1 trigger time for dmc
for current dmc policy, lineflag1 no need to advanced 3ms

RK356X:
lineflag0: will be used by DRM internal driver
lineflag1: will be used by external module link NVR userspace and DMC.

RK3588:
lineflag0: will be used by DRM internal driver and DMC
lineflag1: will be used by external module link NVR userspace.

NVR userspace can use crtc prop: LINE_FLAG1 to update lineflag num.

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I8a48aead55b59307823ad829ad5ea205d171b24b
2022-02-17 11:08:05 +08:00
Andy Yan
3aa219c04c drm/rockchip: Remove dirtyfb callback
VOP always continue fetch display data from fb,
so we don't need do dirtyfb here, and drm_atomic_helper_dirtyfb
do much operation which will lag the fps.

Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Change-Id: Ie96eb711723547a2d80fe60c7898109444747030
2022-02-17 11:00:41 +08:00
Addy Ke
ec55e06050 arm64: dts: rockchip: add dts for TB-RK3588X(RK3588 Toybrick board)
Signed-off-by: Addy Ke <addy.ke@rock-chips.com>
Change-Id: I08e580cef0c1671091ee5550d18de6a6417c47f6
2022-02-17 09:30:57 +08:00
Shawn Lin
79e05b26f3 PCI: rockchip: dw: Migrate to use reset array APIs
To simplify the code.

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Change-Id: I0b1ce1023e43995ab0bc6cd18d3669d8428df99a
2022-02-17 09:18:15 +08:00
Lei Chen
04481545d8 phy: rockchip-samsung-hdptx-hdmi: Add some frequency support and fixed slight deviation of some frequencies
HDMI PHY PLL adds 154M and 119M support, while fixing 146.25M
and 85.5M parameters

Signed-off-by: Lei Chen <lei.chen@rock-chips.com>
Change-Id: I12465d6c025737b80761d83687ec4d93d18b1c51
2022-02-16 15:45:43 +08:00
Lei Chen
37c2e4a5d9 drm/bridge: synopsys: dw-hdmi-qp: add more supported frequencies
Signed-off-by: Lei Chen <lei.chen@rock-chips.com>
Change-Id: I12e65c2e32da10d68320dfbef5da2288a41e3aaa
2022-02-16 15:45:03 +08:00
Zhen Chen
c019aa3cbf MALI: bifrost: Fix incorrect dmesg warning for unexpected GPU activities
The warning logs fixed are "GPU activity takes longer than time interval, ...".

This fix is provided as 496f5e3.diff by Zhigang.Yao@arm.com of support_mali.
The original commit message within 496f5e3.diff:
{
From 496f5e37a803266e71cbf7b6eb5871fe2fcd8931 Mon Sep 17 00:00:00 2001
From: Tu Vuong <tu.vuong@arm.com>
Date: Wed, 09 Feb 2022 09:31:20 +0000
Subject: [PATCH] GPUCORE-30123 Fix incorrect dmesg warning for unexpected GPU activities

The DVFS utilisation calculation detects when the GPU has expended more
cycles than expected compared to the actual time passed. This margin was
not sufficient as it didn't take into account the worst-case scenario
where samples are taken TIMER_DEFAULT_VALUE_MS apart.
}

Change-Id: I16bb904fd77006f6ab1e4419e44a9834550e4c07
Signed-off-by: Zhen Chen <chenzhen@rock-chips.com>
2022-02-16 11:37:51 +08:00
Cai YiWei
cad4034955 media: rockchip: isp: add API to get stream information
Change-Id: I709f82411fc7bc9533eacd0d88fd7192cd9c0981
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
2022-02-15 17:25:08 +08:00
Herman Chen
7eb71ee55c video: rockchip: mpp: Fix combo hardware issue
With multi core patch it will be lack of core id at old combo
hardware probe process.

The error log is shown below on device probe:
mpp_vepu2 ff650000.vepu: can not attach device with same id 0

And also kernel crach on mpp library init.

Signed-off-by: Caesar Wang <wxt@rock-chips.com>
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I92ea5fc3575dad9236878235a396d02da7a3fba5
2022-02-15 17:21:00 +08:00
Addy Ke
33af23ddcf arm64: configs: add rk3588_edge.config for edge
make ARCH=arm64 rockchip_linux_defconfig rk3588_edge.config

Signed-off-by: Addy Ke <addy.ke@rock-chips.com>
Change-Id: Id7eb2364c0f65e4d3954eb4c7f66d4bfd8acdfcf
2022-02-15 17:08:35 +08:00
Yu Qiaowei
d7116b7931 video: rockchip: rga3: Fix compile warning about 'make W=1 ...'
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: Idc6656489051ff75abcca19acd362c52d5513226
2022-02-15 17:06:29 +08:00
Algea Cao
ccbe4263a2 drm/rockchip: dw_hdmi: Use HDMI global colorspace property
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I7e645fe4b7f59a527834b810d5c64c3a7cd580d3
2022-02-15 17:00:16 +08:00
Algea Cao
925a72f42b drm/rockchip: dw_hdmi: Unified HDMI properties name to rk standard names
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I80977bd6da6faa9ac4c355da860c9559f7643a55
2022-02-15 16:59:50 +08:00
Algea Cao
0171f55e64 arm64: dts: rockchip: rk3588: Support rk3588 hdmi uboot logo
Add route-hdmi1 node

Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I83fbd70e0b873d26292e0298af560e302a8c9cf7
2022-02-15 16:58:00 +08:00
Algea Cao
4adb1baf91 drm/rockchip: vop2: Don't check mode valid when use hdmiphy-pll
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I23d5d097ff35d818021eaa09dd6af0e9906c6b4d
2022-02-15 16:56:42 +08:00
Algea Cao
e9dc995898 drm/rockchip: dw_hdmi: Support rk3588 kernel logo display
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I2e946ad0e71901229ca201af18566e099d8fa2ed
2022-02-15 16:09:48 +08:00
Algea Cao
6513e0cce3 phy: rockchip-samsung-hdptx-hdmi: Support phy as uboot dclk source
For support kernel logo, don't disable phy when phy probe.

Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I04168e1374104480c1fa611539938f1374967bd7
2022-02-15 15:14:58 +08:00
Algea Cao
ab176f555a drm/rockchip: dw_hdmi: Only clear output interface flag when hdmi disable
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I19bf8a9e8de541b7a9b4f30421b7d9a5d75ae00c
2022-02-15 14:32:28 +08:00
Ai ShaoXiang
7d1001ba5d drm/rockchip: vop2: vcnt event use signal to fill user_data
The userspace transmits private data through request.signal,
vcnt event return it to userspace through vbl.userdata

Change-Id: I8295a3d4fd91430b3b9fac6c5b6b526e1f266f24
Signed-off-by: Ai ShaoXiang <aisx@rock-chips.com>
2022-02-15 14:26:16 +08:00