* commit 'a887a44ace2a27d86308356a7ea0db00d79f2c44': (3057 commits)
ANDROID: KVM: arm64: Always check state from host_ack_unshare()
FROMLIST: KVM: arm64: Always check the state from hyp_ack_unshare()
UPSTREAM: f2fs: fix fiemap failure issue when page size is 16KB
ANDROID: GKI: Update symbol list for mtk
UPSTREAM: net/sched: stop qdisc_tree_reduce_backlog on TC_H_ROOT
UPSTREAM: net: sched: use RCU read-side critical section in taprio_dump()
UPSTREAM: f2fs: compress: don't redirty sparse cluster during {,de}compress
UPSTREAM: f2fs: compress: don't {,de}compress non-full cluster
UPSTREAM: f2fs: allow f2fs_ioc_{,de}compress_file to be interrupted
UPSTREAM: f2fs: compress: do sanity check on cluster when CONFIG_F2FS_CHECK_FS is on
UPSTREAM: f2fs: support SEEK_DATA and SEEK_HOLE for compression files
ANDROID: add file for recording allowed ABI breaks
ANDROID: GKI: update symbol list for honor
ANDROID: vendor_hooks: add hook to record reboot reason
BACKPORT: FROMGIT: binder: add delivered_freeze to debugfs output
BACKPORT: FROMGIT: binder: fix memleak of proc->delivered_freeze
FROMGIT: binder: allow freeze notification for dead nodes
FROMGIT: binder: fix BINDER_WORK_CLEAR_FREEZE_NOTIFICATION debug logs
ANDROID: GKI: Update symbol list for BCMSTB
ANDROID: psi: Add vendor hooks for PSI tracing
...
Change-Id: I5b8cfb8bec82380db9cdd9fbe3b39708a8f92f98
Conflicts:
arch/arm64/boot/dts/rockchip/rk356x.dtsi
drivers/gpio/gpio-rockchip.c
drivers/gpu/drm/bridge/analogix/analogix_dp_reg.c
drivers/gpu/drm/rockchip/rockchip_drm_vop.c
drivers/gpu/drm/rockchip/rockchip_drm_vop.h
drivers/gpu/drm/rockchip/rockchip_drm_vop2.c
drivers/gpu/drm/rockchip/rockchip_vop_reg.c
drivers/media/i2c/imx335.c
drivers/pci/controller/dwc/pcie-dw-rockchip.c
drivers/spi/spi-rockchip.c
drivers/spi/spidev.c
drivers/usb/dwc3/core.c
drivers/usb/dwc3/gadget.c
drivers/usb/typec/tcpm/tcpm.c
This reverts commit 6732e1af29.
Replaced by commit 4e1813e52f ("exfat: fix memory leak in exfat_load_bitmap()").
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
Change-Id: I323d80bccfc1c1fa021d9b86433a766f7bbebe5b
* commit '75588ef1335c59b72eed76a5b885f23bb9070cd1':
clk: rockchip: rk3506: Use MUXTBL for MCLK_SAI
video: rockchip: mpp: iep2: fix mapping conflict issue
regulator: rk801: Use a better name for bool variable
ARM: dts: rockchip: rk3506-rk801: Add index for switch regulator name
ARM: dts: rockchip: Add RK3562 EVB2 devicetree
clk: RK808: Configure 32k always on through dts
phy: rockchip: samsung dcphy reinit c_option when rx stream on
drm/rockchip: vop2: adjust VOP aclk mode according to line duration
thermal: rockchip: change code table for rk3506
drm/rockchip: vop2: fix null point at non dovi platform
Change-Id: I60f40af00d6d63c8e4c5e74f0abebd6271d98031
Some panel resolution is less than 2560 but pixel clock/fps is
relatively large, In this scene, VOP aclk need enter advance mode to
make sure VOP performance is enough. 4kp60 line duration is roughly
equal to 7500 ns, so we add a condition(linedur_ns < 7500) to enter
VOP aclk advance mode.
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I50e15e8b05cfcf3c92704b8d96287099ce851686
Use flag CLK_MUX_ROUND_CLOSEST to be able to round the divider
to the closest one instead than roundup.
e.g. clk_set_rate 6150144 (6144000 * 1.001)
Before:
clk_get_rate - 6144000
After:
clk_get_rate - 6150145
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Ic3d1ed3f4de0abf0c7e4c1027a68c2d2cb681029
This property is used to report the supported color format for each
resolution to userspace.
Change-Id: Ib2e8c712d7590b1cff77d03eb789bc49c18d6e74
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
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
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
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
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
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
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
Guarantee the data is written before flexbus starts transmission.
Change-Id: I24e7e1b9e7f0fcd57b9269746251a05801007f3e
Signed-off-by: Wesley Yao <wesley.yao@rock-chips.com>
Guarantee flexbus has completed transmission before reading.
Change-Id: I38d600a9feb1c0e586e70ec8cb581f803cf7902d
Signed-off-by: Wesley Yao <wesley.yao@rock-chips.com>
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>
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>
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)
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)
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)
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)
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