Expose a new TrustedCameraDriver interface to camera kernel
for lane protection and configuring camera h/w ports.
Change-Id: Ieeb6e3a4817e2db968f3ec812f03eb54f9b7c4c3
Signed-off-by: Rohit Soneta <quic_rsoneta@quicinc.com>
Add APIs and support for additional field "oem variant"
introduced in socinfo v17.
Change-Id: Ic60d9749fe6efac82b702fe6cb67aec1fb4f9a47
Signed-off-by: Naman Jain <quic_namajain@quicinc.com>
Signed-off-by: Kamati Srinivas <quic_kamasrin@quicinc.com>
Change auto generated headers related to smcinvoke as per the kernel
coding and naming conventions.
Change-Id: I9fdc24db15e0472264245b957ac3e80b43e98558
Signed-off-by: Papanaboyina Bala Narayana <quic_papanabo@quicinc.com>
Add kernel API to provide subset core and part information.
Also export the information via sysfs entries.
Change-Id: I92b12d2c1248d78790381edf5cf270cbc72bbbf4
Signed-off-by: Naini Singh <quic_nainsing@quicinc.com>
When the QTEE is busy with a high concurrency, the objects and shared
memory bridge will not be released and deleted in time, this will lead
to memory leakage issues in the QTEE. To avoid the memory leakage in case
of EBUSY, we add 2 exclusive worker threads to postprocess the object
release and shmbridge deletion separately.
When there is a large shambridge memory which is not deleted in time,
the shambridge in QTEE might be out of memory.We met this issue in the
TVM TUI unit test. To avoid being out of shambridge memory, we should
postpone the deletion of shambridge created by smcinvoke itself.
Change-Id: I620f27cc129255abbe0c3b33c9999dd2a252dd42
Signed-off-by: Divisha Bisht <quic_divibish@quicinc.com>
Pass fw build id as part of soc info to wlan host driver.
Change-Id: I6a8bced678ada0f88e744b5fd3f2ed58fa4173ef
Signed-off-by: Sandeep Singh <quic_sandsing@quicinc.com>
'name' passed to the qcom_va_md_register() api should be
const char * type. while at it, Fix this at other places too.
Change-Id: Ibbe260b240989e35dbe9250c1db345f86b9ae410
Signed-off-by: Mukesh Ojha <quic_mojha@quicinc.com>
Move header files to /soc/qcom so that any kernel client
could use that and add Auto-generated header files.
export method for get client env so that kernel client
can use the api to get root env object.
Change-Id: Iec6492144602cf09892be5912079056a5970ee85
Signed-off-by: Nitin LNU <quic_nlakra@quicinc.com>
Add API for unregistering a notifier block from va-minidump driver.
Change-Id: Iab7ee5e65affdb2bd90dd8eda5f6cbd8beb70f08
Signed-off-by: Naman Jain <quic_namajain@quicinc.com>
There was a requirement from client drivers to create ramdump
device with a given name so that they control the name of the elf.
This change adds the support to create/destroy ramdump device.
Change-Id: I411cc92a1b41d44e8b6fef95d383613280dae0c2
Signed-off-by: Mukesh Ojha <quic_mojha@quicinc.com>
Some platforms require PMIC GPIO control to trigger the
PON/POFF sequence of the WLAN chip.
Change-Id: I24023694ecb5579bc84cd897a99596fd57fa5eee
CRs-Fixed: 3209939
Signed-off-by: nakul kachhwaha <quic_nkachhwa@quicinc.com>
Signed-off-by: Madhvapathi Sriram <quic_msriram@quicinc.com>
Added scmi transaction for working of gPLAF
algorithm on firmware. Added write method as part
of PnC algo on firmware to share data.
Added few sysfs node to notify about start/stop
of game and other data.
Change-Id: I9fc16237b7d5e16a72eaed45fca7abd68f891ccc
Signed-off-by: Varun Garg <quic_gargv@quicinc.com>
ICNSS2 supports both Adrastea and Moselle. ICNSS2 platform
driver should reject wlan driver registration for device
id which is not detected during icnss2 probe.
Change-Id: I3e4ebe48a5364cb92091a4e007ba4952838c2f3c
Signed-off-by: Sandeep Singh <quic_sandsing@quicinc.com>
Only print irq number is not human readable, so add
irq name and its irq_chip also to be printed at the
same time.
Change-Id: I467b6f37cccbc5a6fba8f1672ce1ca76f39348d7
Signed-off-by: Huang Yiwei <quic_hyiwei@quicinc.com>
This change provides below functionality:
1. In debugfs, ddr residency can be read; calculate duration
percentage of ddr mode and ddr freq separately.
2. Provides 3 APIs to sync ddr freq, get ddr residency and
get the count of supported ddr freq.
Change-Id: Icda97eb4de193209a9da09786dff1227ab5fb91e
Signed-off-by: Minghao Zhang <quic_minghao@quicinc.com>
This change provides two APIs to check system and subsystem
has entered sleep or not. These can be used to know after
kernel resume which subsystem may have blocked AOSD/CXSD/DDR
sleep.
Change-Id: I19d56c1415116ff82b206b931092ed123e8d4a69
Signed-off-by: Minghao Zhang <quic_minghao@quicinc.com>
Configure cpucp by sending scmi messages about pmu maps and tunables.
This function is invoked once the underlying scmi layer is setup.
Change-Id: I58d9eafd4df262afd7f0ef5edb91fe2b8471563e
Signed-off-by: Rishabh Bhatnagar <rishabhb@codeaurora.org>
The qcom_elf_dump() API currently only supported elf32 dumps, but
the kernel is compiled as CONFIG_BIT64=y. This results in the
addresses in the elf header being truncated. This change adds
support to specify the class of the elf file to be generated.
Change-Id: I1b72a828df0b45978891ed6ba6261273200500b0
Signed-off-by: Siddharth Gupta <sidgup@codeaurora.org>
Various subsystem vote for DDR bandwidth while running use-case.
This change adds API support to know bandwidth vote information of such
subsystem on ddr.
Change-Id: I8dc9d6fccb234d10ec868b348b3c34cf84bfb231
Signed-off-by: Tushar Nimkar <tnimkar@codeaurora.org>
This change provides sysfs interface for clients to dynamically
enable/disable their entries in final va-minidump collection.
Change-Id: Ida03e96520e51ee6b61e53fd9a67e9b5b5b4e1ed
Signed-off-by: Mukesh Ojha <mojha@codeaurora.org>
Add the ability to support different DDR frequency tables
for different DRAM types in qcom dcvs. This includes adding
an API for clients to retrieve the correct DT child node
that contains a "qcom,ddr-type" property with a DDR type
that matches the current hardware. Use this API in memlat
to support multiple cpufreq-memfreq tables for different
DDR types.
Change-Id: I6ce5cf9b483785ae2dbe1f28cf0979dee3432333
Signed-off-by: Amir Vajid <avajid@codeaurora.org>
Add ICNSS_SMMU_FAULT enum to be used from Host driver.
Change-Id: Ia10a103a0e24aceffe1d691ed9545f7aa59024c5
Signed-off-by: Naman Padhiar <npadhiar@codeaurora.org>
Add changes to support syscall to return fuse
configuration on the device. Also rename
function to improve redability.
Change-Id: Idec01fec75a5dd6a86ad6dc319d18129c4ec2740
Signed-off-by: Monika Singh <monising@codeaurora.org>
Add PMU vendor protocol to share HLOS PMU configuration with
cpucp. Configuration includes the hardware counter ids for all
cpucp events and is shared when pmu scmi driver probes.
Isolating this protocol from memlat removes dependency
on memlat.
Change-Id: I17fefccdb5f041bd75dd3744ccbfca9504fde0c5
Signed-off-by: Rishabh Bhatnagar <rishabhb@codeaurora.org>
Add capability to read AMUs if support exists for the chipset.
AMU ids are read from device tree and they correspond to the enum
of supported AMU counters.
Change-Id: I15516f370de891cc9d871e13330e8ff2fcef9f26
Signed-off-by: Rishabh Bhatnagar <rishabhb@codeaurora.org>
Add support for clients to register a callback, which can be used
to write parsed output in payload offset of ELF section.
Change-Id: I4629409bddf6cc062b8b7ca6f25399881834f483
Signed-off-by: Prateek Sood <prsood@codeaurora.org>
Signed-off-by: Mukesh Ojha <mojha@codeaurora.org>
Implement driver for VA based minidump. This driver helps
in registering dynamic data structures from vendor modules
with minidump. This driver works on VA, which would be
contiguous even if physical pages are scattered.
Each client can register area with contiguous VA as a
section for ELF. This driver creates ELF in panic
notifier, combining all the section registered by client
drivers.
Change-Id: I78e5527714143dc65d2aeb3ec070da552d63e603
Signed-off-by: Prateek Sood <prsood@codeaurora.org>
Co-developed-by: Mukesh Ojha <mojha@codeaurora.org>
Signed-off-by: Mukesh Ojha <mojha@codeaurora.org>
Update ICNSS2 driver and related files as of msm-5.4 commit
0611102d4e900a7553201992c97a9bc9bfaa00c5.
Change-Id: Iffbc320773b4116dc938b0310948616579d8c301
Signed-off-by: Naman Padhiar <npadhiar@codeaurora.org>
The user watchdog was waiting the hardware watchdog bite by
stop petting it. But in the cpu suspend scenarios, the auto petting
by hardware prevent the expected watchdog bite. So add a new user pet
timer to explicitly trigger the watchdog bite by software when the user
watchdog petting is not happenned before timeout.
Change-Id: I71b1139192baa960ae00f7a27c630aedaf5a3ffa
Signed-off-by: Maria Yu <aiquny@codeaurora.org>
The events managed by pmu_lib are dynamically allocated by
clients via qcom_pmu_create/delete. This offers runtime
flexibility but requires additional synchronization with
pmu event reads and runs the risk of one client configuring
all pmu events. Instead, define the events in device tree
and provide an API for checking if a particular event is
supported in pmu_lib.
Change-Id: Ia9aad96e5f0e5900e7f863be97c79839da766f5c
Signed-off-by: Amir Vajid <avajid@codeaurora.org>
Remove SLUB_DEBUG and PAGE_OWNER config guarded code in
minidump for now as some of the defination of function
is not implemented yet. And we can always bring back
this code once the change is available and functional.
Change-Id: Iad931e507437a1afe7341493182495bdc078899a
Signed-off-by: Mukesh Ojha <mojha@codeaurora.org>
Implementing IPI irq stats using nr_ipi and ipi_desc.
This helps in getting per cpu and total IPI count at
watchdog pet, watchdog bark and panic.
Change-Id: Ie6bba0273a232533d2d165d168fc14b102d431f8
Signed-off-by: Prateek Sood <prsood@codeaurora.org>
Register and dump ftrace buffer on kernel panic, to minidump
table. The dumps are collected in parsed format.
Change-Id: Ia53d5475f2b2eff5045b1b0f91f3b423d3f97c94
Signed-off-by: Prateek Sood <prsood@codeaurora.org>
Signed-off-by: Mukesh Ojha <mojha@codeaurora.org>
Include of.h in soc/qcom/of_common.h so that of_common.h can be included
exclusively without needing linux/of.h.
Change-Id: I949086d2b844fc99fd49bc0550e768e9b8c818ba
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
In order to reset include/linux/of.h to upstream, move downstream
of_fdt_get_ddrtype to include/soc/qcom/of_common.h. This new header file
is included in include/linux/of.h to allow out-of-tree drivers to switch
without rudely breaking their build.
Change-Id: I9da71f4112b2874460d09c5767dc4eec398fb1d9
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
This reverts commit d71acda6dc.
This is being reverted because sdxlemur uses percpu interrupts
in its watchdog. This change also adds back in fields used by
this code and fixes issues introduced by new code.
Change-Id: Ic5ddbebd6c6f4b4c5d157a86a3ecd827e1b5376f
Signed-off-by: Melody Olvera <molvera@codeaurora.org>
To give sufficient time to die notifier to complete
their work, add a watchdog die notifier, to reset the
watchdog. Also, increase priority of watchdog panic
notifier and make minidump oops notifiers run after
watchdog oops notifiers.
Change-Id: Ifc53cc5c3b1ecc1554a971b9f2334319cad62bfd
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
Add a stub for msm_perf_events_update if the module is not enabled.
Change-Id: Ic0dedbadc640012295d2131f63a5eb43b19a6873
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
Port msm_performance from 5.4 to 5.10.The following commits
were included as a part of this change.
b712bdb msm: kgsl: Including drawobj flag for msm-perf api
206e048 soc: qcom: msm_perf: enable msm_perf driver on default config
9d8197e drivers: soc: qcom: msm_performance: plh interface support
1df107b msm-perf: Added threshold check for perf_event
0ef671a msm-perf: Removed game active status node
35dd020 soc: qcom: msm_perf: Allow freq updates regardless of policy
9cb001d msm-perf: Fixed kzalloc for perf_event
27bee16 msm-perf: Extended support for perf notification
ee81f18 msm-perf: Added support for Perf data collection.
Change-Id: If74c9a649f2ead7ca8167e4047bcb40401e70ca8
Signed-off-by: Kishore Sri venkata Ganesh Bolisetty <bsrivenk@codeaurora.org>