Merge made by the 'ours' strategy.
* commit '8ed148210d8d1d793f79093dbbbdcc87c2479179':
drm/rockchip: lvds: register sub dev at rockchip lvds driver
Change-Id: Iedeb7bed05315b5c9c6472c166706cf41209f9c3
At lvds to other display output type product, the connector maybe
register at third party drivers, the sub dev register often be forgot,
so we add sub dev register at rockchip lvds driver.
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: If075041df8ddb1b269c903d092a6263160eff1db
At lvds to other display output type product, the connector maybe
register at third party drivers, the sub dev register often be forgot, so we add
sub dev register at rockchip lvds driver.
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: If075041df8ddb1b269c903d092a6263160eff1db
At rgb to other display output type product, the connector maybe register at
third party drivers, the sub dev register often be forgot, so we add sub
dev register at rockchip rgb driver.
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I3baa051712ac30b63dffa9658df470c12bcb91dc
The vepu biu clk depends on vi biu clk, add vi gate mask for pd vepu.
The rga biu clk depends on vo biu clk, add vo gate mask for pd rga.
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
Change-Id: Ieaa62a053369e570eb0a11d132fa472c6bd246f4
If rtc 32k used as time for deep sleep, the rtc suspend
func bypass do nothing.
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
Change-Id: I020182bd06ee68da387a141eb55a86f6bb3a0c5b
The purpose is to eliminate direct references to add_mm_counter().
add_mm_counter() makes use of mm_trace_rss_stat().
While, Android 14.0 GKI prohibits driver modules from referencing mm_trace_rss_stat().
The implementation of kbasep_add_mm_counter() here is derived from bifrost DDK g21.
Change-Id: I619e4ecb164e87dcab8f101bae179f316d57360c
Signed-off-by: Zhen Chen <chenzhen@rock-chips.com>
Merge made by the 'ours' strategy.
* commit '5ffae8fffc291148e0b2472aaaa8ef7eb4959cba': (29 commits)
FROMGIT: PM / devfreq: Synchronize devfreq_monitor_[start/stop]
UPSTREAM: dm verity: don't perform FEC for failed readahead IO
UPSTREAM: netfilter: nft_set_pipapo: skip inactive elements during set walk
UPSTREAM: ipv4: igmp: fix refcnt uaf issue when receiving igmp query packet
UPSTREAM: x86/sev: Check for user-space IOIO pointing to kernel space
UPSTREAM: x86/sev: Check IOBM for IOIO exceptions from user-space
UPSTREAM: nvmet-tcp: Fix a possible UAF in queue intialization setup
FROMLIST: binder: fix memory leaks of spam and pending work
ANDROID: Snapshot Mainline's version of checkpatch.pl
ANDROID: scsi: ufs: vendor check response and recovery addition
ANDROID: scsi: ufs: add perf heuristic design
ANDROID: ABI: Update symbol list for Mediatek
ANDROID: Add vendor hook for ufs perf heuristic and error recovery
UPSTREAM: io_uring/fdinfo: lock SQ thread while retrieving thread cpu/pid
UPSTREAM: ufs: core: wlun send SSU timeout recovery
ANDROID: GKI: db845c: Update symbols list and ABI on rpmsg_register_device_override
ANDROID: fix up rpmsg_device ABI break
ANDROID: fix up platform_device ABI break
UPSTREAM: rpmsg: Fix possible refcount leak in rpmsg_register_device_override()
UPSTREAM: rpmsg: glink: Release driver_override
...
Change-Id: I6a5428ef1851cf6ecd279791f92aed786ee96b38
* commit '3d9e7100637001159451fc7421209106987fe1d0':
mtd: spinand: Winbond: Support new device W25N01JWZEIG
media: i2c: sc4336 adapt sleep_wakeup
media: rockchip: vicap fixes the probability of stream data loss after tool nodes capture raw data
Change-Id: I9541ed8bacbd39618a7395ed5240b344adceabf0
In most rockchip display interface driver, only one connector
attach to a encoder. it can be sured which econder is used
by the connector name.
For DP MST, a DP MST connector will attach to many DP MST
encoders, and more than one DP MST connector can attach
to a DP MST encoder. A DP MST encoder's possible crtc can
also more than one. So in this case, which DP MST encoder
is used can't be get by the crct name or connector name.
A encoder name is necessary for DP MST encoder.
Change-Id: I57026b25d63cde8f72a6e34dc56e073559659821
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
The old method to description color space and range is borrowing V4L2
defined, It's difficult to understand, so we change to DRM defined
property.
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I7eacc60dfda912b9becae1ce026cdb82eebef7f8
https://source.android.com/docs/security/bulletin/2024-01-01
* tag 'ASB-2024-01-05_12-5.10': (29 commits)
FROMGIT: PM / devfreq: Synchronize devfreq_monitor_[start/stop]
UPSTREAM: dm verity: don't perform FEC for failed readahead IO
UPSTREAM: netfilter: nft_set_pipapo: skip inactive elements during set walk
UPSTREAM: ipv4: igmp: fix refcnt uaf issue when receiving igmp query packet
UPSTREAM: x86/sev: Check for user-space IOIO pointing to kernel space
UPSTREAM: x86/sev: Check IOBM for IOIO exceptions from user-space
UPSTREAM: nvmet-tcp: Fix a possible UAF in queue intialization setup
FROMLIST: binder: fix memory leaks of spam and pending work
ANDROID: Snapshot Mainline's version of checkpatch.pl
ANDROID: scsi: ufs: vendor check response and recovery addition
ANDROID: scsi: ufs: add perf heuristic design
ANDROID: ABI: Update symbol list for Mediatek
ANDROID: Add vendor hook for ufs perf heuristic and error recovery
UPSTREAM: io_uring/fdinfo: lock SQ thread while retrieving thread cpu/pid
UPSTREAM: ufs: core: wlun send SSU timeout recovery
ANDROID: GKI: db845c: Update symbols list and ABI on rpmsg_register_device_override
ANDROID: fix up rpmsg_device ABI break
ANDROID: fix up platform_device ABI break
UPSTREAM: rpmsg: Fix possible refcount leak in rpmsg_register_device_override()
UPSTREAM: rpmsg: glink: Release driver_override
...
Change-Id: I758558dcd135c3ed787c59b0a62a909c66016d80
fix commit ea5b7f59a7 ("media: rockchip: isp: frame start to check and config next buf")
Change-Id: I166a5030ea4e9b666f7a0ceb6f2c4379e077bb36
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
* commit 'ef84fb2dc967e18e44e13c42e2ea3e85d8d7f2a0':
UPSTREAM: sched/fair: Use all little CPUs for CPU-bound workloads
drm/rockchip: vop2: remove ARGB2101010 support from VOP2
drm/rockchip: vop2: hdisplay must roundup 2/4 when calc pre_scan_dly
media: rockchip: vicap get_channel_info add param of field to cover value from get_fmt
media: i2c: rk628: add hdmirxphy debugfs
media: rockchip: vicap increase wake up cnt for rv1126/rk3568 monitor mode
media: i2c: maxim: remote: record the status of the serializer
misc: rk628: Fix `warning: `rk628_pin_iomux_groups` defined but not used`
misc: rk628: Fix the NULL in .suspend/.resume helper when working on hdmi tx mode.
arm64: dts: rockchip: add pd_perihp support for rk3399 usb2
Change-Id: I74e34fdd098bb791609848cb634c204bc2b501cb
Running N CPU-bound tasks on an N CPUs platform:
- with asymmetric CPU capacity
- not being a DynamIq system (i.e. having a PKG level sched domain
without the SD_SHARE_PKG_RESOURCES flag set)
.. might result in a task placement where two tasks run on a big CPU
and none on a little CPU. This placement could be more optimal by
using all CPUs.
Testing platform:
Juno-r2:
- 2 big CPUs (1-2), maximum capacity of 1024
- 4 little CPUs (0,3-5), maximum capacity of 383
Testing workload ([1]):
Spawn 6 CPU-bound tasks. During the first 100ms (step 1), each tasks
is affine to a CPU, except for:
- one little CPU which is left idle.
- one big CPU which has 2 tasks affine.
After the 100ms (step 2), remove the cpumask affinity.
Behavior before the patch:
During step 2, the load balancer running from the idle CPU tags sched
domains as:
- little CPUs: 'group_has_spare'. Cf. group_has_capacity() and
group_is_overloaded(), 3 CPU-bound tasks run on a 4 CPUs
sched-domain, and the idle CPU provides enough spare capacity
regarding the imbalance_pct
- big CPUs: 'group_overloaded'. Indeed, 3 tasks run on a 2 CPUs
sched-domain, so the following path is used:
group_is_overloaded()
\-if (sgs->sum_nr_running <= sgs->group_weight) return true;
The following path which would change the migration type to
'migrate_task' is not taken:
calculate_imbalance()
\-if (env->idle != CPU_NOT_IDLE && env->imbalance == 0)
as the local group has some spare capacity, so the imbalance
is not 0.
The migration type requested is 'migrate_util' and the busiest
runqueue is the big CPU's runqueue having 2 tasks (each having a
utilization of 512). The idle little CPU cannot pull one of these
task as its capacity is too small for the task. The following path
is used:
detach_tasks()
\-case migrate_util:
\-if (util > env->imbalance) goto next;
After the patch:
As the number of failed balancing attempts grows (with
'nr_balance_failed'), progressively make it easier to migrate
a big task to the idling little CPU. A similar mechanism is
used for the 'migrate_load' migration type.
Improvement:
Running the testing workload [1] with the step 2 representing
a ~10s load for a big CPU:
Before patch: ~19.3s
After patch: ~18s (-6.7%)
Similar issue reported at:
https://lore.kernel.org/lkml/20230716014125.139577-1-qyousef@layalina.io/
Suggested-by: Vincent Guittot <vincent.guittot@linaro.org>
Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Reviewed-by: Vincent Guittot <vincent.guittot@linaro.org>
Reviewed-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
Acked-by: Qais Yousef <qyousef@layalina.io>
Link: https://lore.kernel.org/r/20231206090043.634697-1-pierre.gondois@arm.com
(cherry picked from commit 3af7524b14198f5159a86692d57a9f28ec9375ce)
Change-Id: Ibfd3ed5fc36ed067d1223603aac336dae11b4ce0
Signed-off-by: Liang Chen <cl@rock-chips.com>
At RK3568 and RK3588 platform, cluster only can support AFBC XRGB2101010 and
not support ARGB2101010.
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: If0695793ea102fdd10be2bcffd6bd428149da646