Commit Graph

1115926 Commits

Author SHA1 Message Date
qctecmdr
85e22bfdf0 Merge "arm64: configs: Enable CRM driver for pineapple_GKI" 2022-09-26 10:13:55 -07:00
qctecmdr
fe57ff9c8b Merge "coresight: funnel: add support for multiple output ports" 2022-09-26 10:13:54 -07:00
qctecmdr
0a48e814f4 Merge "defconfig: pineapple: Enable QDSS configs for pineapple" 2022-09-26 10:13:54 -07:00
qctecmdr
80f3cc0ceb Merge "soc: qcom: llcc: Further update config data for pineapple SoC" 2022-09-23 16:07:49 -07:00
qctecmdr
4ba8b56fbb Merge "soc: qcom: Rollback when failed to register new region" 2022-09-23 16:07:47 -07:00
qctecmdr
8ebce67790 Merge "soc: qcom: Decrease num_regions after remove region" 2022-09-23 16:07:47 -07:00
qctecmdr
136fde660c Merge "soc: qcom: Fix md_get_region failure when using minidump in SVM" 2022-09-23 16:07:45 -07:00
qctecmdr
052f6f4175 Merge "soc: qcom: Block register minidump region with same name" 2022-09-23 16:07:45 -07:00
qctecmdr
f337b0a0ee Merge "gunyah: secure_vm_loader: Don't release the memory when VM load fail" 2022-09-23 16:07:44 -07:00
qctecmdr
7a1b455714 Merge "gunyah: secure_vm_loader: Fix the hyp inject instruction/data abort" 2022-09-23 16:07:44 -07:00
qctecmdr
a2e0221707 Merge "soc: qcom: qcom_stats: Add ioctl support for stats" 2022-09-23 16:07:44 -07:00
qctecmdr
caf3c388c3 Merge "abi_gki_aarch64_qcom: Add msleep_interruptible" 2022-09-23 16:07:42 -07:00
qctecmdr
2cc87b66ce Merge "msm: ipa: add snapshot of IPA USB header file" 2022-09-23 14:30:17 -07:00
qctecmdr
d665060fae Merge "sched/walt: Early Detect Boost Optimizations" 2022-09-23 14:30:15 -07:00
Tao Zhang
9f74beac0a coresight: funnel: add support for multiple output ports
Funnel devices are now capable of supporting multiple-inputs and
multiple-outputs configuration with in built hardware filtering
for TPDM devices. Add software support to this function. Output
ports is selected according to the source of the trace path.

Change-Id: I491293e0b1948f3747d34eb79e7845617ace4244
Signed-off-by: Tingwei Zhang <tingwei@codeaurora.org>
Signed-off-by: Mao Jinlong <jinlmao@codeaurora.org>
Signed-off-by: Tao Zhang <taozha@codeaurora.org>
Signed-off-by: Mao Jinlong <quic_jinlmao@quicinc.com>
2022-09-23 04:32:00 -07:00
Cong Zhang
b6d428f6a8 soc: qcom: Rollback when failed to register new region
Remove region from local minidump table when failed to register new
region with RM call.

Change-Id: I85bbf62e90cd423be7d3475a5f6526062b22c8c9
Signed-off-by: Cong Zhang <quic_congzhan@quicinc.com>
2022-09-22 19:53:38 -07:00
Cong Zhang
032d6b0f4b soc: qcom: Fix md_get_region failure when using minidump in SVM
Find the correct minidump table in md_get_region.

Change-Id: Ib42db09f4ee3b629834cf78795ceb0c26a877bdd
Signed-off-by: Cong Zhang <quic_congzhan@quicinc.com>
2022-09-22 19:53:32 -07:00
Cong Zhang
80389226be soc: qcom: Decrease num_regions after remove region
Decrease num_regions of minidump table after remove region.

Change-Id: I8be2cc2b1f29328fb0e308431893dea1b15cd084
Signed-off-by: Cong Zhang <quic_congzhan@quicinc.com>
2022-09-22 19:53:25 -07:00
Cong Zhang
f7845a840c soc: qcom: Block register minidump region with same name
If user register minidump region with same name, return -EEXIST error
code.

Change-Id: I612a7a4f77fdd80d3b677b2b2b4e4d1221c3395f
Signed-off-by: Cong Zhang <quic_congzhan@quicinc.com>
2022-09-22 19:53:09 -07:00
Mao Jinlong
e1ed2a9b89 defconfig: pineapple: Enable QDSS configs for pineapple
Enable QDSS configs to support STM/TPDM/Remote ETM/CTI functions.

Change-Id: I297b0820794849d3dc27af30b646780f4370d1d7
Signed-off-by: Mao Jinlong <quic_jinlmao@quicinc.com>
2022-09-22 19:29:32 -07:00
Tao Zhang
edcceebfd9 coresight: Add the coresight qmi head file
Add the coresight qmi head file since the remote etm need it
support.

Change-Id: I282abfab76be5149dca2496bb9583951f760f17e
Signed-off-by: Tao Zhang <quic_taozha@quicinc.com>
Signed-off-by: Mao Jinlong <quic_jinlmao@quicinc.com>
2022-09-22 19:29:16 -07:00
Guru Das Srinagesh
d9c33d9e5a abi_gki_aarch64_qcom: Add msleep_interruptible
Add msleep_interruptible to list of symbols.

Change-Id: I348f22cca19c1086c04068ba1ea539b18705d84b
Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com>
2022-09-22 17:43:51 -07:00
Maulik Shah
321af67c34 soc: qcom: qcom_stats: Add ioctl support for stats
Add ioctl support by which userspace can know the various stats.

Change-Id: I916232f7eeb0efd7ca5a8d99afff547fdb9ad594
Signed-off-by: Maulik Shah <quic_mkshah@quicinc.com>
2022-09-23 00:13:53 +05:30
Maulik Shah
4213c4b3b4 arm64: configs: Enable CRM driver for pineapple_GKI
Enable CRM driver.

Change-Id: I87ed4674b63f54cd35b8940a94113083e835b2ae
Signed-off-by: Maulik Shah <quic_mkshah@quicinc.com>
2022-09-22 22:30:52 +05:30
Maulik Shah
b5797d6b33 soc: qcom: Add CESTA Resource Manager driver
Add CESTA Resource Manager (CRM) driver.

Change-Id: I82c905fbb2838cae72337677cf076f245b2f3865
Signed-off-by: Maulik Shah <quic_mkshah@quicinc.com>
2022-09-22 22:30:44 +05:30
Shaleen Agrawal
1d077fe1d4 sched/walt: Early Detect Boost Optimizations
Currently, if an ED task is detected on a cluster, the entire cluster's
frequency is raised to fmax. However, since ED tasks are only classified
under boosted scenarios anyways, this degree of boost may not be
necessary. This patch introduces a tunable, sched_ed_boost, which can be
used to boost the highest load on the cluster with an ED task by x%, x
being the set tunable.

Change-Id: I90ce6e7435b89ed27d307a164fdd7b8f6c8f5c9e
Signed-off-by: Shaleen Agrawal <quic_shalagra@quicinc.com>
2022-09-21 15:36:22 -07:00
Abhijeet Dharmapurikar
f1b09a77f5 sched/walt: move predictive freq to wakeup enqueue
This will update the freq as soon the rqlock is dropped and also avoids
us from acquiring a rq lock as enqueue is called with rq lock held.

Change-Id: I24b91309b753f61a38d1eb8e26af451544fa3f52
Signed-off-by: Abhijeet Dharmapurikar <quic_adharmap@quicinc.com>
2022-09-21 15:36:21 -07:00
Abhijeet Dharmapurikar
90ec01ea12 walt_cfs: MVP: rearrange priorities
Update to prefer low_latency and pipeline as having higher priority than
others.

Change-Id: Ib5ba973d483cf923f886a906a158907335ccab9b
Signed-off-by: Abhijeet Dharmapurikar <quic_adharmap@quicinc.com>
2022-09-21 15:36:20 -07:00
Abhijeet Dharmapurikar
f970f604f2 sched/walt: use sched_idle_enough to skip packing
When sysctl_sched_idle_enough is not set, the current code still finds a
pakcing cpu only to reject it later. Fix this i.e. don't even bother
finding a packing cpu when idle_enough is zero.

Change-Id: I5cdce5e06072eee75593aa1e36953a2946e20efa
Signed-off-by: Abhijeet Dharmapurikar <quic_adharmap@quicinc.com>
2022-09-21 15:36:07 -07:00
Guru Das Srinagesh
05dea7050c soc: qcom: llcc: Further update config data for pineapple SoC
Update system cache hardware settings for pineapple SoC.

Change-Id: I2a829749a11f879df548837c0cfcaa027d967b1f
Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com>
2022-09-21 14:29:20 -07:00
qctecmdr
db78883a87 Merge "arm64: defconfig: Enable SLIMBUS configs on Pineapple" 2022-09-21 06:35:27 -07:00
Chandana Kishori Chiluveru
1229ef03d3 arm64: defconfig: Enable SLIMBUS configs on Pineapple
Enable Slimbus drivers as module in defconfig on Pineapple.

Change-Id: I1acf9e75a283e0094bdc74d9c5593896980ebe05
Signed-off-by: Chandana Kishori Chiluveru <quic_cchiluve@quicinc.com>
2022-09-21 11:51:52 +05:30
qctecmdr
6d0045aaf5 Merge "sched/walt: fix busy time accounting for tasks moving between groups" 2022-09-20 21:50:30 -07:00
qctecmdr
de01039390 Merge "cpufreq: qcom-hw: clear thermal pressure when thermal condition exits" 2022-09-20 20:16:16 -07:00
qctecmdr
2c82740419 Merge "defconfig: pineapple-gki: Enable PDR notif. timeouts" 2022-09-20 20:16:15 -07:00
qctecmdr
5de0993608 Merge "soc: qcom: Minidump support for VMs" 2022-09-20 18:20:18 -07:00
qctecmdr
59eb204df3 Merge "soc: qcom: pdr: Add logging after indack is sent" 2022-09-20 18:20:18 -07:00
Shaleen Agrawal
37f5cf75ef sched/walt: Ensure crash only on initialized task
In the event where a task is being dequeued from a CPU other than the
CPU WALT has recorded as the previous enqueue cpu, a crash is induced.
However, it could be the case during WALT initialization that due to a
race where task is in the middle of being forked, an attempt is made to
dequeue a task where the prev_on_cpu_rq member is not properly
initialized.

Change-Id: I3a52da5d6cc5ae5b71800d0f8097e6debb3b7187
Signed-off-by: Shaleen Agrawal <quic_shalagra@quicinc.com>
2022-09-20 12:19:58 -07:00
Stephen Dickey
9698b4fcb0 sched/walt: Improve the scheduler
This change is for general scheduler improvement.

Change-Id: Ifa74c7c827ed5a5a8b23fcb9d6de2325dfeb788f
Signed-off-by: Stephen Dickey <dickey@codeaurora.org>
Signed-off-by: Shaleen Agrawal <quic_shalagra@quicinc.com>
2022-09-20 12:19:58 -07:00
Shaleen Agrawal
3400232478 sched/walt: Update cpu capacity during window rollover
Ensure that all thermal pressure gets accounted in capacity_orig
within the window rollover period.

Change-Id: I3858c21aff31ff517f5e521df765b119bf5d3244
Signed-off-by: Shaleen Agrawal <quic_shalagra@quicinc.com>
2022-09-20 12:19:57 -07:00
Abhijeet Dharmapurikar
fe61e5329a sched/walt_lb: pull task based on their utilizations
Currently the code simply pulls the last task in the rq. Instead make it
visit at least 5 tasks in the RQ and find a suitable util task to pull.

Change-Id: Ied5fa689ec94296f8655232cef5a3301f0cbc813
Signed-off-by: Abhijeet Dharmapurikar <quic_adharmap@quicinc.com>
Signed-off-by: Sai Harshini Nimmala <quic_snimmala@quicinc.com>
2022-09-20 12:19:56 -07:00
Abhijeet Dharmapurikar
a112baf5fb sched/walt: help farthest cluster under rotation
When rotation is enabled, the system is under heavy load, allow farthest
cluster to help each other.

Change-Id: Idd402fa120baa47e8506d7dc2439765dd6d5bcc9
Signed-off-by: Abhijeet Dharmapurikar <quic_adharmap@quicinc.com>
2022-09-20 12:19:56 -07:00
Ashay Jaiswal
48c24c7316 sched: walt: update newidle balancing
There is a case where when big cluster(Gold/Prime) is entering idle it
fails to pull task from lower cluster if lower cluster is only having a
single big task in it's runqueue.
The reason for failure is, walt skips newidle balance for above condition
if "idle_cpu" check fails for destination core and for newidle balance
destination core is entering idle (not yet idle) thus "idle_cpu" returns
false. Fix this by skipping "idle_cpu" check for new idle balancing.

Change-Id: Id973bd8a67fbfcd9d47bec9a0894b697412f2c90
Signed-off-by: Ashay Jaiswal <quic_ashayj@quicinc.com>
Signed-off-by: Sai Harshini Nimmala <quic_snimmala@quicinc.com>
2022-09-20 12:19:55 -07:00
Sai Harshini Nimmala
ff2d763574 sched/walt: Handle -ve cpu capacity
There are instances where rt and irq load exceeds thermally limited
capacity and results in a very high cpu_capacity.

Fix it by comparing it against 0.

Change-Id: Ice6e71cd8b5e0635ec1d79c7338a964cef70271d
Signed-off-by: Sai Harshini Nimmala <quic_snimmala@quicinc.com>
2022-09-20 12:19:55 -07:00
Blagovest Kolenichev
ec30ed6a75 sched: walt: fix build issue
With latest Android Kernel update, below errors are seen

kernel_platform/msm-kernel/include/../drivers/android/binder_internal.h:111:1: error: declaration specifier missing, defaulting to 'int' [-Werror]
kernel_platform/msm-kernel/include/../drivers/android/binder_internal.h:111:23: error: a parameter list without types is only allowed in a function definition
kernel_platform/msm-kernel/include/../drivers/android/binder_internal.h:114:1: error: declaration specifier missing, defaulting to 'int' [-Werror]
kernel_platform/msm-kernel/include/../drivers/android/binder_internal.h:114:23: error: a parameter list without types is only allowed in a function definition
kernel_platform/msm-kernel/include/../drivers/android/binder_internal.h:117:1: error: declaration specifier missing, defaulting to 'int' [-Werror]
kernel_platform/msm-kernel/include/../drivers/android/binder_internal.h:117:23: error: a parameter list without types is only allowed in a function definition
kernel_platform/msm-kernel/include/../drivers/android/binder_internal.h:120:1: error: declaration specifier missing, defaulting to 'int' [-Werror]
kernel_platform/msm-kernel/include/../drivers/android/binder_internal.h:120:23: error: a parameter list without types is only allowed in a function definition

Fix these build issues by including right header file.

Change-Id: I4ff2f484b05ebae9b9929b4d2c3b7b1e717769b4
Signed-off-by: Blagovest Kolenichev <quic_c_bkolen@quicinc.com>
2022-09-20 12:19:54 -07:00
Abhijeet Dharmapurikar
8c2844c025 sched/walt: fix busy time accounting for tasks moving between groups
Currently the code subtracts busy time when a task is being migrated.
IOW migrate_busy_time_subtraction is called in set_task_cpu hook.

And the code adds busy time in an after-migration enqueue IOW
enqueue_after_migration is seen set in enqueue hook.

Both the above operations happen under the prev_cpu and next cpu rq
lock respt.

Now a task could exit or enter group after the migration and before
the enqueue i.e. transfer_busy_time could be called when
enqueue_after_migration is set. This could lead to -ve load bugs as
we have  only subtracted the load and not added it.

To address this, complete the addition step in
transfer_busy_time() itself,  prior to moving the busy time,
if a task is found to be migrating.

Change-Id: Ifa7a2b017763392431dfa5407ec9dbde76d90019
Signed-off-by: Abhijeet Dharmapurikar <quic_adharmap@quicinc.com>
2022-09-20 12:19:53 -07:00
qctecmdr
2c7855a1a8 Merge "ARM: config: msm: Enabling config for GENI based serial drivers" 2022-09-20 05:45:43 -07:00
qctecmdr
6356615785 Merge "soc: qcom: smem: Add inline function when SMEM is not enabled" 2022-09-20 02:26:33 -07:00
Anil Veshala Veshala
9dc6a7af57 ARM: config: msm: Enabling config for GENI based serial drivers
Enable compilation for GENI based peripheral protocols like i2c, i3c,
spi, uart, gsi.

Change-Id: Ic3ac6596ba912135f56f3583442cd92714978269
Signed-off-by: Anil Veshala Veshala <quic_aveshala@quicinc.com>
2022-09-19 22:57:52 -07:00
qctecmdr
067e89239a Merge "usb: phy: Turn on PHY clks with phy_init() when EUD is enabled" 2022-09-19 17:42:35 -07:00