Commit Graph

1277099 Commits

Author SHA1 Message Date
Algea Cao
c9ee08a32f drm/bridge: synopsys: dw-hdmi-qp: Add property to set quant range
quant_range:
	flags: enum
	enums: default=0 limit=1 full=2

Change-Id: I6a4d30c2c45cf744a47f93162fd0f81bed75bc73
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2025-01-07 10:37:33 +00:00
Sandy Huang
d74f593005 arm64: dts: rockchip: rk3588: add vop aclk_dovi for dolby vision
The dolby core work at 1 pixel rate and the vop work at 2 pixel rate,
so the aclk_vop_doby : aclk_vop = 2 : 1 when enter dolby mode,

Non dovi mode clk tree:
aclk_vop_root            750000000
    aclk_vop             750000000
    aclk_vop_doby        750000000
    aclk_vop_div2_src    375000000

Dovi mode clk tree:
aclk_vop_root            750000000
    aclk_vop_doby        750000000
    aclk_vop_div2_src    375000000
        aclk_vop         375000000

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I649fd6263245a93c67a577262a95d23328880d06
2025-01-07 10:37:33 +00:00
Sandy Huang
16391830d3 drm/rockchip: vop2: add dolby vision supported for rk3588
The dolby vision will be supported by RK3588*-*V* SOCs,
e.g., RK3588S2-DV.

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I1e8cf8f0e2b1521b858704df9a88261cec038ebb
2025-01-07 10:37:33 +00:00
Sandy Huang
6cb13bd18d drm/rockchip: vop2: set DRM_MODE_BLEND_PIXEL_NONE as alpha premutli
DRM_MODE_BLEND_PIXEL_NONE usual be set at ARGB format and pixel alpha
is 0xff, no need to do blend, but vop2 platform at the following
scene, the cluster win1 and win0 do blend first, the blend result
with esmart do blend, we can't direct to close layer_mix0, because
the cluster win0 some area will do blend with esmart, so we keep
layer0 mix alpha be enabled and set as premutli mode.

zpos layer
2    cluster win1[ARGB/BLEND_COVERAGE]  -->|
1    cluster win0[ARGB/BLEND_PIXEL_NONE]-->|cluster mix-->|
0    esmart[ARGB/BLEND_PIXEL_NONE]                     -->|layer0 mix

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I4ae75a9b443ea965527fd656821016acca35afe1
2025-01-07 10:37:33 +00:00
Sandy Huang
6d1b5beb2b drm/rockchip: vop: use DOVI instead of NEXT_HDR
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: Ib3405d2dff684e3ce1d512fccbb8b1a3bef72151
2025-01-07 10:37:33 +00:00
Sandy Huang
52e0f85d38 drm/rockchip: vop: add crtc dolby vision feature
ROCKCHIP_DRM_CRTC_FEATURE_NEXT_HDR will be instead of by
ROCKCHIP_DRM_CRTC_FEATURE_DOVI,

VOP_FEATURE_NEXT_HDR will be instead of by VOP_FEATURE_DOVI.

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: Ifae130599bc1a966ae316de002df3a1a3fec9d5a
2025-01-07 10:37:33 +00:00
Sandy Huang
497e16fefa drm/rockchip: vop2: reset splice_win at vop2_win_disable()
We only need to ignore rk3588/rk3576 esmart pd turn on/off at
vop2_win_disable(), the following splice win reset should
be run.

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I617f73786d93398965f5dcfac32f6fa76ee2e42e
2025-01-07 10:37:33 +00:00
Sandy Huang
ab24b712e1 drm/rockchip: vop2: add support esmart BACKGROUND prop
This may be used by android solid color layer, userspace can set
plane BACKGROUND prop to assigned color, the plane will display
this color and no need to access DDR.

The color value should layout as following:

Enable:
    val = BIT(31) | R << 16 | G << 8 | B;/* R/G/B can be 0 ~ 0xff */

    For example, set a pure red color:
        modetest -w 125:BACKGROUND:2164195328

Disable:
        modetest -w 125:BACKGROUND:0

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: Ie1e077594e385e8ddd244f7c33b6182309a5c134
2025-01-07 10:37:33 +00:00
Wesley Yao
6554f0eb7c iio: dac: rockchip-flexbus-dac: Add write memory barrier
Guarantee the data is written before flexbus starts transmission.

Change-Id: I24e7e1b9e7f0fcd57b9269746251a05801007f3e
Signed-off-by: Wesley Yao <wesley.yao@rock-chips.com>
2025-01-07 10:00:28 +00:00
Wesley Yao
655499e285 iio: adc: rockchip-flexbus-adc: Add read memory barrier
Guarantee flexbus has completed transmission before reading.

Change-Id: I38d600a9feb1c0e586e70ec8cb581f803cf7902d
Signed-off-by: Wesley Yao <wesley.yao@rock-chips.com>
2025-01-07 09:59:53 +00:00
Zefa Chen
072c7b2223 media: i2c: sc450ai fixes error of clk disable twice
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: I87fab4101a598a99f20b936a851794049be1e269
2025-01-07 11:18:55 +08:00
Zefa Chen
d5e5e440af media: i2c: sc450ai fixes error of compile
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: I7a458a0eecafc22df828727e2cd370e61860aa5b
2025-01-07 11:04:52 +08:00
Damon Ding
f73b02ad8c pwm: rockchip: Unify the process of requesting irq for PWM v1-v4
The irq for PWM v1-v3 used to be exclusively associated with oneshot
mode, but capture mode also needs interrupt, which does not depend on
CONFIG_PWM_ROCKCHIP_ONESHOT.

Change-Id: Iaf0e01ec7c5d02d2d379776cba41841d59c46d20
Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
2025-01-06 10:59:26 +00:00
Shawn Lin
87813ce9aa PCI: dw: rockchip: Remove unused PORT_LOGIC_LTSSM_L2
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Change-Id: I382233f963533d93ad582888afe728841515a18b
2025-01-03 16:22:31 +08:00
Hongjin Li
a5d7c37e04 video: rockchip: mpp: mpp_common: Declare function as static in header
Change-Id: Ia5ad136e286d0cfcfe9d3f66db16110eff15d631
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
2025-01-02 19:09:47 +08:00
Damon Ding
15218ae4e6 drm/rockchip: tve: set the &rockchip_tve.tv_format in &drm_encoder_helper_funcs.mode_set()
Although the previous patch helps to avoid display flashing during
the uboot/kernel logo switching, it forgot to set the
&rockchip_tve.tv_format in &drm_encoder_helper_funcs.mode_set()
which is needed in later &drm_encoder_helper_funcs.enable() process.

Fixes: e3b31a037d ("drm/rockchip: tve: add .loader_protect() support for tve")
Change-Id: Ib4e81f0c9ab64c1c2db9bd19209a6f108cae70e9
Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
2024-12-31 18:11:40 +08:00
Daniel Scally
030cb99b13 UPSTREAM: usb: gadget: uvc: Correct documentation formatting
The documentation table added in a36afe7804 ("usb: gadget: uvc: Add
new enable_interrupt_ep attribute") was incorrect, resulting in a new
warning when compiling the documentation.

Correct the formatting to resolve the warning.

Fixes: a36afe7804 ("usb: gadget: uvc: Add new enable_interrupt_ep attribute")
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Daniel Scally <dan.scally@ideasonboard.com>
Link: https://lore.kernel.org/r/20230206151131.863960-1-dan.scally@ideasonboard.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit 41070a7027)
Change-Id: I0aa0b5bc6585f22271f84c3feb8b52b975a5dc59
2024-12-30 11:29:21 +00:00
Daniel Scally
2033b1cec5 BACKPORT: usb: gadget: uvc: Disable interrupt endpoint by default
The f_uvc code includes an interrupt endpoint against the VideoControl
interface. According to section 2.4.2 of the UVC specification however
this endpoint is optional in at least some cases:

"This endpoint is optional, but may be mandatory under certain
conditions"

The conditions enumerated are whether...

1. The device supports hardware triggers
2. The device implements any AutoUpdate controls
3. The device implements any Asynchronous controls

As all of those things are implementation dependent, this endpoint
might be unnecessary for some users. Further to that it is unusable
in the current implementation as there is no mechanism within the
UVC gadget driver that allows data to be sent over that endpoint.
Disable the interrupt endpoint by default, but check whether the
user has asked for it to be enabled in configfs and continue to
generate it if so.

Change-Id: If7389f94d406d0c6f79229afbe9b63bee80ca74e
Signed-off-by: Daniel Scally <dan.scally@ideasonboard.com>
Link: https://lore.kernel.org/r/20230130105045.120886-4-dan.scally@ideasonboard.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit 130c4dcbe8)
2024-12-30 11:29:21 +00:00
Daniel Scally
4adb1f5af5 UPSTREAM: usb: gadget: uvc: Add new enable_interrupt_ep attribute
Add a new attribute to the default control config group that allows
users to specify whether they want to enable the optional interrupt
endpoint for the VideoControl interface.

Change-Id: Ia5490d50bf2298572e8527a7879daa6b6dff2173
Signed-off-by: Daniel Scally <dan.scally@ideasonboard.com>
Link: https://lore.kernel.org/r/20230130105045.120886-3-dan.scally@ideasonboard.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit a36afe7804)
2024-12-30 11:29:21 +00:00
Daniel Scally
e3e2d315d4 BACKPORT: usb: gadget: uvc: Rename uvc_control_ep
The f_uvc code defines an endpoint named "uvc_control_ep" but it
is configured with a non-zero endpoint address and has its
bmAttributes flagged as USB_ENDPOINT_XFER_INT - this cannot be the
VideoControl interface's control endpoint, as the default endpoint
0 is used for that purpose. This is instead the optional interrupt
endpoint that can be contained by a VideoControl interface. There
is also a Class-specific VC Interrupt Endpoint Descriptor and a
SuperSpeed companion descriptor that are also for the VC interface's
interrupt endpoint but are named as though they are for the control
endpoint.

Rename the variables to make that clear.

Change-Id: Iee00e91954dcd67fbec867e067c7e528bfb2c217
Signed-off-by: Daniel Scally <dan.scally@ideasonboard.com>
Link: https://lore.kernel.org/r/20230130105045.120886-2-dan.scally@ideasonboard.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit 3078212caf)
2024-12-30 11:29:21 +00:00
cww
0c8f2934ce ARM: rv1106_defconfig: Enable CONFIG_ROCKCHIP_MPP_OSAL
Signed-off-by: cww <cww@rock-chips.com>
Change-Id: Ia577a53deee86d688ad7283cfd2e36c2a17e821a
2024-12-30 11:28:41 +00:00
Weiwen Chen
7e4e4b574b video: rockchip: mpp_osal: ROCKCHIP_MPP_OSAL remove chip id
Signed-off-by: Weiwen Chen <cww@rock-chips.com>
Change-Id: I45176834553654cadcd026ab73ea9c0695bd7c01
2024-12-30 11:28:41 +00:00
Tao Huang
56ee595148 input: touchscreen: gsl_point_id: Add gsl_point_id.h
drivers/input/touchscreen/gsl_point_id.c:2187:6: warning: no previous prototype for 'gsl_ReportPressure' [-Wmissing-prototypes]
drivers/input/touchscreen/gsl_point_id.c:2209:6: warning: no previous prototype for 'gsl_TouchNear' [-Wmissing-prototypes]
drivers/input/touchscreen/gsl_point_id.c:2317:6: warning: no previous prototype for 'gsl_DataInit' [-Wmissing-prototypes]
drivers/input/touchscreen/gsl_point_id.c:2595:14: warning: no previous prototype for 'gsl_version_id' [-Wmissing-prototypes]
drivers/input/touchscreen/gsl_point_id.c:2601:14: warning: no previous prototype for 'gsl_mask_tiaoping' [-Wmissing-prototypes]
drivers/input/touchscreen/gsl_point_id.c:2647:6: warning: no previous prototype for 'gsl_alg_id_main' [-Wmissing-prototypes]
drivers/input/touchscreen/gsl_point_id.c:2697:5: warning: no previous prototype for 'gsl_obtain_gesture' [-Wmissing-prototypes]
drivers/input/touchscreen/gsl_point_id.c:3001:6: warning: no previous prototype for 'gsl_GestureExtern' [-Wmissing-prototypes]
drivers/input/touchscreen/gsl_point_id.c:3076:14: warning: no previous prototype for 'gsl_GestureBuffer' [-Wmissing-prototypes]
drivers/input/touchscreen/gsl_point_id.c:549:5: warning: no previous prototype for 'abs' [-Wmissing-prototypes]

Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I85aba64c02e93734df77e806b96f264bf91e244b
2024-12-30 19:11:07 +08:00
Sandy Huang
de1cef0912 drm/rockchip: drv: add more info about iommu_reserve_map
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I7d6120e1c2a78c4b51d69dc0e6c65b021519b9d3
2024-12-30 07:38:57 +00:00
Tao Huang
cc61a7f0e7 Input: gt1x - Fix -Wmissing-prototypes warnings
drivers/input/touchscreen/gt1x/gt1x_tools.c:104:6: warning: no previous prototype for gt1x_deinit_tool_node’ [-Wmissing-prototypes]
drivers/input/touchscreen/gt1x/gt1x_tools.c:79:5: warning: no previous prototype for gt1x_init_tool_node’ [-Wmissing-prototypes]
drivers/input/touchscreen/gt1x/gt1x_update.c:199:5: warning: no previous prototype for gt1x_i2c_write_with_readback’ [-Wmissing-prototypes]
drivers/input/touchscreen/gt1x/gt1x_update.c:218:5: warning: no previous prototype for getUint’ [-Wmissing-prototypes]
drivers/input/touchscreen/gt1x/gt1x_update.c:750:5: warning: no previous prototype for __gt1x_hold_ss51_dsp_20’ [-Wmissing-prototypes]

Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: Ic689a12dd469e7a4a6f306cbbad065903cf90891
2024-12-30 06:30:54 +00:00
Jon Lin
05d9d625eb mtd: spi-nor: Make spi_nor_wait_till_ready_with_msleep() static
drivers/mtd/spi-nor/core.c:736:5: warning: no previous prototype for ‘spi_nor_wait_till_ready_with_msleep’ [-Wmissing-prototypes]

Fixes a7b3870670 ("mtd: spi-nor: core: Change to use msleep for erase ops")
Change-Id: If2add4f5614f5337b5bd872db8a1b5149b7c4221
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
2024-12-30 06:28:48 +00:00
Algea Cao
12e823b0e3 drm/bridge: synopsys: dw_hdmi: Send GCP when set/clear avmute
HDMI avmute is sent via GCP. If HDMI want to use
the avmute function, GCP must be sent.

Change-Id: Id844ea93c5296e1a5cf200f9ccf7bd2effd13e82
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
2024-12-27 10:02:25 +00:00
Chaoyi Chen
54ecd2a75a arm64: dts: rockchip: Set fp9931 pmic vcom config for rk3576-ebook-v10
Set to the minimum value of the vcom voltage to make the regulator
happy.

Change-Id: I32d7c52eda3ee7c40047d2dd7630f3d9303323e7
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
2024-12-27 10:01:26 +00:00
Yu Qiaowei
6d22dbc340 video: rockchip: rga3: modify act_w/h check for YUV
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I73fc45e262ca94890252db5fc42fdee5315b7dd1
2024-12-27 10:00:59 +00:00
Yu Qiaowei
bedb2038ea video: rockchip: rga3: add rotation limit check for RGA3
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: Iccc980a17df593d34dda468a2ea6db659deadbcd
2024-12-27 10:00:59 +00:00
Zefa Chen
b7d7acb5c8 media: rockchip: vicap fixes error of group sync
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: I6b178ceab2b9a0d6cb102a0ea6db795916afad3c
2024-12-27 09:59:52 +00:00
Zefa Chen
ad93efc38d media: rockchip: vicap fixes error of one_frame_mode to multi_frame_mode in online
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Ic11607496063702ef0edf84b923454d4a615db47
2024-12-27 09:59:52 +00:00
Zefa Chen
743867868c media: rockchip: vicap used CONFIG_CPU_XXXX to reduce code size
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Id0768fe2c7ce3ee5157cc6505eabe1e41e38d789
2024-12-27 09:59:52 +00:00
Zefa Chen
834a1beaf3 media: rockchip: vicap fixes error of sof when work on dual online mode
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Ie22c1a8cf88c473843144911d50382b9df0efaee
2024-12-27 09:59:52 +00:00
Zefa Chen
9f3e502ead media: rockchip: vicap fixes error of group sync state to isp
error state may lead to reduce fps with offline camera when used dual camera

Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Ie45039ac7ff7ab65d02acde7aad0b6789f793738
2024-12-27 09:59:52 +00:00
Zefa Chen
53626f9b25 media: rockchip: vicap support to streaming sensor together when dev resume and sensor work in group mode
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: I3f194f96e2a527e58e46ea026a81ca05d98231d1
2024-12-27 09:59:52 +00:00
Zefa Chen
0c17ee906f media: rockchip: vicap stop detect group sync state when app to stop stream
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: I1daf8c055a87aeb11df24eb7a177a98f0dd3c990
2024-12-27 09:59:52 +00:00
Zefa Chen
bdc34a65c0 media: rockchip: vicap fixes error process of online_one_frame mode
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Ib98ee16e0a0fce2ae71450a701b53be1f0138c60
2024-12-27 09:59:52 +00:00
Zefa Chen
d3de0c6b1e media: rockchip: vicap clean toisp buf struct after free buf
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: I75a9b88a92e4e13fc8282f8b8d1950ed13729a5b
2024-12-27 09:59:52 +00:00
Zefa Chen
694e7d4a4a media: rockchip: vicap fixes error of sof
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: I53a3be954195fa96da584e4915f98db12fb419c5
2024-12-27 09:59:52 +00:00
Zefa Chen
c22475b0ab media: rockchip: vicap fixes error cnt of lack_buf_cnt in rkcif_assign_new_buffer_init
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: I002ccf0b2483e6ccc38221437b0d65ef7136de16
2024-12-27 09:59:52 +00:00
Zefa Chen
5e780d00fa media: rockchip: vicap fixes group sync logic with half_online mode
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Ic0567b12bb922749d0107b81d80bec0f14fd8c57
2024-12-27 09:59:52 +00:00
Zefa Chen
6f772e5bec media: rockchip: vicap skip wait for stop, when work in online mode and toisp is off
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: I30e822b6aea7d455765ae798f86322d4ee395d92
2024-12-27 09:59:52 +00:00
Zheng zhiqi
1a1ba04866 arm64: dts: rockchip: rk3576-vehicle-evb-v20.dts: modified spidev buffer max limit
bootargs += "spidev.bufsiz=131072"
modified spidev buffer max limit

Change-Id: I159fe56da65b8bcbb2ae88d485c6485937667985
Signed-off-by: Zheng zhiqi <looper.zheng@rock-chips.com>
2024-12-27 07:58:45 +00:00
Zheng zhiqi
9866c4b539 arm64: dts: rockchip: rk3588-vehicle-evb-v23.dts: modified spidev buffer max limit
bootargs += "spidev.bufsiz=131072"
modified spidev buffer max limit

Change-Id: I7391198a7c92630ac5f0febfac17aa55d6eab739
Signed-off-by: Zheng zhiqi <looper.zheng@rock-chips.com>
2024-12-27 11:45:01 +08:00
Ye Zhang
2fb24cd7a7 gpio: rockchip: Support multiple interrupts for a single GPIO
Signed-off-by: Ye Zhang <ye.zhang@rock-chips.com>
Change-Id: I1c0add3698b0443938833d33b85ea87de3ad21f2
2024-12-26 19:23:15 +08:00
Ye Zhang
8d1876afd2 ARM: dts: rockchip: rk3502: update interrupts for GPIO
Signed-off-by: Ye Zhang <ye.zhang@rock-chips.com>
Change-Id: I3984166caadad5724eab9580af417f41af3c2ed0
2024-12-26 19:23:15 +08:00
Ye Zhang
29c2fd4508 include: dt-bindings: Add RK_PIN_TO_BIT def for Rockchip pinctrl
Signed-off-by: Ye Zhang <ye.zhang@rock-chips.com>
Change-Id: I1ecfecba09a3f5f096b972364929fc607a107c43
2024-12-26 19:23:15 +08:00
Sandy Huang
c20c144648 drm/rockchip: vop2: fix rk3576 esmart lb mode define error
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I96aeb0b5a3a3b200a1cc7053c17106ce97cd9e43
2024-12-26 19:04:07 +08:00
Jianlong Wang
918f498b85 arm64: dts: rockchip: rk3328: update usbbrd3 core node
[    3.899868] rockchip-inno-dwc3 usbdrd: failed to find dwc3 core node

Fixes: 655d0987f9 ("arm64: dts: rockchip: rk3328: update to kernel6.1")
Change-Id: I1866a9bd897b3da93afb3b5f8e2279992555353d
Signed-off-by: Jianlong Wang <jianlong.wang@rock-chips.com>
2024-12-26 18:56:00 +08:00