Commit Graph

1127819 Commits

Author SHA1 Message Date
qctecmdr
007a38d10e Merge "drivers: soc: qcom: Add snapshot of cpucp communication drivers" 2022-09-28 17:04:05 -07:00
Xubin Bai
272c2c21cd cpufreq: qcom-hw: Add sysfs file for hw clock domain index
Default linear mapping no longer works due to non-linear
policy-to-clk_domain index mapping in new chipsets, add
a new sysfs file hw_clk_domain in sysfs directory policy*
so that test script can capture the correct HW clock
domain index.

Change-Id: Id78df0074e9cb13dd1f748dbab2381a48440e8e9
Signed-off-by: Xubin Bai <quic_xubibai@quicinc.com>
2022-09-27 18:17:11 -07:00
qctecmdr
4166c80b23 Merge "android: abi_gki_aarch64_qcom: Add flush_delayed_fput" 2022-09-27 17:52:11 -07:00
Sai Harshini Nimmala
558622e9b9 sched/walt: Create attribute groups
struct kobj_type does not contain the default_attrs member anymore.
Instead create attribute group using the ATTRIBUTE_GROUPS macro and
assign to kobj_type object.

Change-Id: I5d21c816edb13b5020e064f55c3e495002897d4a
Signed-off-by: Sai Harshini Nimmala <quic_snimmala@quicinc.com>
2022-09-27 16:32:36 -07:00
Stephen Dickey
b0a014fc64 kernel/sched/walt: remove unused walt error type
Remove WALT_NONCRITICAL as it hasn't been useful.

Change-Id: Ia28005c5f980fcb598226b3aae4b21efeac1b526
Signed-off-by: Stephen Dickey <quic_dickey@quicinc.com>
2022-09-27 16:27:20 -07:00
Stephen Dickey
902848221f kernel/sched/walt: test is walt is enabled
Pause will not be invoked through core control until after
walt has been initialized. However, the walt_pause apis are
made available to other vendor modules, and if those modules
attempt to invoke pause prior to walt being initialized, an
invalid reference to walt_drain_thread will be made.

Prevent the walt_pause and walt_resume apis from being used
until after walt has been properly initialized, walt_halt_init
has been called, and walt_drain_thread properly created.

Change-Id: Iadd764ebfb7402529b49de6ef121d23dfcdc5649
Signed-off-by: Stephen Dickey <quic_dickey@quicinc.com>
2022-09-27 16:27:20 -07:00
Sai Harshini Nimmala
1a0cf49aa3 sched/walt: Change update_cpu_capacity tracepoint
Capture the fmax_capacity of the CPU reduced under cpufreq constraints
in the related tracepoint.

Change-Id: I3dc5c54a7a5850b9c5f4df8a40daea593fff023b
Signed-off-by: Sai Harshini Nimmala <quic_snimmala@quicinc.com>
2022-09-27 16:27:19 -07:00
qctecmdr
7622335450 Merge "usb: dwc3-msm: Don't allow dynamic speed change for host mode" 2022-09-27 16:06:07 -07:00
qctecmdr
f6a0cc734a Merge "usb: dwc3: dwc3-msm-core: Re-use usb_role callbacks for mode changes" 2022-09-27 16:06:07 -07:00
qctecmdr
4d36671e16 Merge "kernel/sched/walt: check migration disabled in allowed_ptr_locked" 2022-09-27 16:06:05 -07:00
Elliot Berman
a52db04bfb build.config.msm.gki: Disable GKI_SKIP_IF_VERSION_MATCHES
We're currently using the ABI symbol list from within msm-kernel and is
not version-tracked by ACK. Thus, GKI_SKIP_IF_VERSION_MATCHES may
spuriously pass even if there is a symbol list change. Disable
GKI_SKIP_IF_VERSION_MATCHES for now until we start using symbol list
from ACK.

Change-Id: Ifea662029a193e36c4c6d28bedc167399f4f85ba
Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
2022-09-27 15:13:23 -07:00
Prudhvi Yarlagadda
bc261dbf64 msm: bus: mhi: Add device info structure for sdx75
Add the device information structure for sdx75 along with
its device id, firmware and edl image paths.
Remove the kconfig dependency on the esoc driver.

Change-Id: Iea7b3e82f274804d781bdbc333b36c64784eef33
Signed-off-by: Prudhvi Yarlagadda <quic_pyarlaga@quicinc.com>
2022-09-27 14:27:05 -07:00
Xubin Bai
f3ba3025c9 clk: qcom: debugcc-pineapple: Add a clk_measure node for CPU Gold2
Add one clk_measure node to support CPU Gold2 cluster for
Pineapple.

Change-Id: I2b7d3f4fa249b1496fe6104edcd54b030e2a7e8e
Signed-off-by: Xubin Bai <quic_xubibai@quicinc.com>
2022-09-26 19:40:54 -07:00
Mayank Rana
4977a05f93 usb: dwc3: Enable u1u2 functionality with USB Gen1 speed
Enable u1u2 functionality in USB device mode when USB is operating
in super speed (gen1 speed).

Change-Id: I14056274b68c3ed395ee3673312606ded68afcd6
Signed-off-by: Mayank Rana <quic_mrana@quicinc.com>
2022-09-26 16:21:27 -07:00
Mayank Rana
85ca34183b usb: dwc3: SW WA for USB CV9(TD 9.23) compliance test failure
eUSB2 repeater is unable to block KJKJ pulse during ESE1. This is
resulting into eUSB2 PHY and repeater going out of sync and next
link up in high speed fails. Fix this issue by performing soft
reset of eUSB2 PHY.

Change-Id: I9913fe4cab03b344dea0525f7a72282cd743a915
Signed-off-by: Mayank Rana <quic_mrana@quicinc.com>
2022-09-26 16:21:27 -07:00
qctecmdr
7b69ee398d Merge "kernel/sched/walt: validate runqueue entries" 2022-09-26 10:13:55 -07:00
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
Patrick Daly
8145bbae35 mem-buf: Add accessor for mem_buf_desc sgl list
Allow clients to see what IPA address a mem_buf object is
mapped to.

Change-Id: Ib3d47cb78bf7b1b217950e1e59b8d542abb3a331
Signed-off-by: Patrick Daly <quic_pdaly@quicinc.com>
2022-09-25 11:45:23 -07:00
Patrick Daly
2ac7e03c0b dma-heaps: Fix compiler warning with function stubs
Fixes:
error: unused function 'qcom_carveout_heap_create'.

Change-Id: I1525a3455b045c2e527847b26bfa7df5b6cf19dc
Signed-off-by: Patrick Daly <quic_pdaly@quicinc.com>
2022-09-25 11:45:23 -07:00
Patrick Daly
02ad0f4aca mem-buf: Add flush_delayed_fput() calls to recv kthread
When a kernel thread calls dma_buf_put() to release the last reference
to a dma-buf, fput_many() defers calling the release callback to a
workqueue. This means that if the same kernel thread later calls
dma_heap_buffer_alloc(), it has no guarantee that the memory from the
prior free is available, leading to random failures. As a short-term
workaround, call flush_delayed_fput() to ensure the free completes
synchronously.

Change-Id: Ia2ab97ca9d1adfb99cd20a316d412bf931f7b3f0
Signed-off-by: Patrick Daly <quic_pdaly@quicinc.com>
2022-09-25 11:45:22 -07:00
Chris Goldsworthy
2f83e4db8c android: abi_gki_aarch64_qcom: Add flush_delayed_fput
Add flushed_delayed_fput for usage by mem-buf.

Change-Id: I16b06de8b4b87f8e4d391229c6b13181c7be9bd9
Signed-off-by: Chris Goldsworthy <quic_cgoldswo@quicinc.com>
2022-09-25 11:45:21 -07:00
Patrick Daly
8c70fc6160 mem-buf: Define MEM_BUF_ALLOC_RELINQUISH_RESP message type
When below sequence is run back-to-back, -ENOMEM is occasionally returned
by MEM_BUF_IOC_REMOTE_ALLOC.

ioctl(MEM_BUF_IOC_REMOTE_ALLOC, args)
fd = args.fd
close(fd)

This occurs because the message sent from TUIVM to PVM as part of the
file release callback is asynchonous. Resolve this by adding a new
message type which indicates when PVM has completed the free operation.

Additionally, define a separate obj_id instead of reusing the transaction
id for this purpose.

Change-Id: Iea458ec80cd14bd08848192371d0bb71cdc5de60
Signed-off-by: Patrick Daly <quic_pdaly@quicinc.com>
2022-09-25 11:45:21 -07:00
Patrick Daly
63bddcd463 mem-buf-msgq: Reduce buffer free complexity
Reuse the same buffer for each message in mem_buf_msgq_recv_fn()
instead of allocating a new one for each message, and freeing it
in a dozen different locations depending on what type of message it
is.

If a consumer of the message needs to defer its work to a workqueue,
it must allocate a new copy of the message.

Change-Id: Ia5583bc7dc9937211f25624f7a679d34fe8fb521
Signed-off-by: Patrick Daly <quic_pdaly@quicinc.com>
2022-09-25 11:45:20 -07:00
Patrick Daly
0f6efbf911 mem-buf: Add infrastructure for requesting specific IPA address
gh_rm_mem_accept allows a VM to request memory to be mapped to a specific
IPA address. Modify function parameters to allow for future use of this
feature.

Change-Id: I6ad586886563e769549e4966369da48c27ca0a5c
Signed-off-by: Patrick Daly <quic_pdaly@quicinc.com>
2022-09-25 11:45:19 -07:00
Patrick Daly
5a01357c0f mem-buf: Update message format to include trans_type
Allow a guest VM to choose whether the memory it requests is obtained
via the lend, share or donate hypervisor call.

Change-Id: I7e1f25ea0f9b0ec99d4a7afd79f206f9a2b67d85
Signed-off-by: Patrick Daly <quic_pdaly@quicinc.com>
2022-09-25 11:45:19 -07:00
Patrick Daly
010e2b03f3 mem-buf: Remove logic for detecting donate support
Support to donate memory is always present on compatible hypervisor
builds.

Change-Id: Ic7a4c03716277e379014bb31e58358cffb85409c
Signed-off-by: Patrick Daly <quic_pdaly@quicinc.com>
2022-09-25 11:45:18 -07:00
Patrick Daly
a0663e611c mem-buf: Rename gh_rm_trans_type to trans_type
Rename variables to increase readability.

Change-Id: Iec504384e31b76e06c0f30686bb1b332ac85cce5
Signed-off-by: Patrick Daly <quic_pdaly@quicinc.com>
2022-09-25 11:45:17 -07:00
Chris Goldsworthy
c4036c4aa7 defconfig: pineapple: Enable configs for mem-buf CPU use cases
Enable CONFIG_QCOM_MEM_BUF_MSGQ, CONFIG_QCOM_MEM_BUF_GH and
CONFIG_QCOM_MEM_BUF_DEV_GH to allow mem-buf CPU use cases to be
exercised.

Change-Id: I15bbb098c1ba28924f73b203718203f4dbd6c2bd
Signed-off-by: Chris Goldsworthy <quic_cgoldswo@quicinc.com>
2022-09-25 11:45:17 -07:00
Chris Goldsworthy
5c3224adf4 mem-buf: Allow selective usage of *memory_subsection functions
add_memory_subsection() and remove_memory_subsection() are only needed
on the TVM and OEM VMs. These are downstream functions as well. Thus,
selectively allow them to be enabled so that we only compile them on
downstream kernels.

Change-Id: I8416cd8eb8db74cf8a3cfbc8e3d7ea2fff112353
Signed-off-by: Chris Goldsworthy <quic_cgoldswo@quicinc.com>
2022-09-25 11:45:11 -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
Amir Vajid
f59e8ca5a0 drivers: soc: qcom: Add snapshot of cpucp communication drivers
Add snapshot of cpucp mailbox and logging drivers from msm-5.15
commit 250869d2bdc2192 ("sched: improve the scheduler")'.

Change-Id: Ibe7497e4c27b0d031b6f7857f0a24ff0035e85fa
Signed-off-by: Amir Vajid <quic_avajid@quicinc.com>
2022-09-23 13:13:03 -07:00
Amir Vajid
0076ed22a3 drivers: firmware: arm_scmi: Add snapshot of dcvs scmi drivers
Add dcvs scmi drivers. This snapshot is taken as of msm-5.15
commit 250869d2bdc2192 ("sched: improve the scheduler").

Change-Id: Id8408e23a11c60de4ac7fa7e3205f907af68ea08
Signed-off-by: Amir Vajid <quic_avajid@quicinc.com>
2022-09-23 13:13:03 -07:00
Amir Vajid
edb19769c0 drivers: soc: dcvs: Add snapshot of dcvs drivers
Add snapshot of dcvs drivers from msm-5.15 commit
250869d2bdc2192 ("sched: improve the scheduler")'.

Change-Id: I3c38cb8d90deaa140f29f8bbdbad2e1e5989eb31
Signed-off-by: Amir Vajid <quic_avajid@quicinc.com>
2022-09-23 13:13:02 -07:00
Pavankumar Kondeti
e29db3c587 usb: dwc3: dwc3-msm-core: Re-use usb_role callbacks for mode changes
We have a legacy sysfs interface to change the USB operating mode. Since
usb_role callbacks are available for user space and UCSI, there is
really no need for mode sysfs interface. For the sake of not breaking
any existing use cases, keep the mode interface but re-use the usb_role
callbacks. The usb-role-switch is an optional property, so refactor
the role switch ops so that they can be called even when this property
is not available but mode sysfs interface can be made available. Note that
there is no visible change to the user space.

Change-Id: I3f8b03b420429375af8d29d7b2339b490980dee0
Signed-off-by: Pavankumar Kondeti <quic_pkondeti@quicinc.com>
2022-09-23 12:46:45 -07:00
Pavankumar Kondeti
ca9fb9573e usb: dwc3: dwc3-msm-core: Bail out early when there is no change in role
If the same role as the current role is requested, bail out early.

Change-Id: I42dc3f6759800926a4a98254a2ff30f932394704
Signed-off-by: Pavankumar Kondeti <quic_pkondeti@quicinc.com>
2022-09-23 12:45:01 -07:00
Pavankumar Kondeti
92a1df0fef usb: dwc3: dwc3-msm-core: Reject incompatible role/mode request
If USB controller is configured to work in a specific mode, reject
any compatible role/mode request. For example, if device mode is
only allowed, switching to host mode/role is not allowed. The current
code allows this and it results in accessing invalid dwc host structures.

Change-Id: I5e4d905c8240ad228f48b40fe36298029d8770e1
Signed-off-by: Pavankumar Kondeti <quic_pkondeti@quicinc.com>
2022-09-23 12:42:42 -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