Commit graph android_kernel_motorola_sm6375/include/soc
Author SHA1 Message Date
Branden Bonaby
065a08cb14 soc: qcom: Create framework for qcom watchdogs
Separate core watchdog functionality from the qcom watchdog
driver to create a framework for other qcom watchdogs. This
will reduce the duplication of code for future watchdog
drivers and allow them to take advantage of this framework.

Change-Id: I1234af9d92de6841bd09157042a4fbba1745f11b
Signed-off-by: Branden Bonaby <bbonaby@codeaurora.org>
2020-08-18 12:17:42 -07:00
Branden Bonaby
54100ecff9 soc: qcom: Rename msm watchdog to wdt core
In preparation to change the qcom watchdog to a new core
framework that future watchdog drivers will utilize, the name
of the file needs to be changed. Due to the number of changes
needed in the file we need to rename it to reflect its new purpose.

Change-Id: Iac6ad57fbc02866f6716a44d7bb4a62d97e4a810
Signed-off-by: Branden Bonaby <bbonaby@codeaurora.org>
2020-08-18 12:16:00 -07:00
qctecmdr
6e6429db72 Merge "icnss2: Extend thermal mitigation support feature" 2020-08-13 04:49:35 -07:00
qctecmdr
3f51b8647d Merge "icnss2: Add support for Runtime PM" 2020-08-11 15:30:42 -07:00
Naman Padhiar
1ffeb96f43 icnss2: Add support for Runtime PM
Add Runtime Suspend/Resume Callbaks, to enable Runtime PM
on Moselle platform.

Change-Id: Ie906652cca4dd69f9f3e8dbe811eeaf1322b2a1c
Signed-off-by: Naman Padhiar <npadhiar@codeaurora.org>
2020-08-05 17:44:22 +05:30
Naman Padhiar
3f5d3c0819 icnss2: Extend thermal mitigation support feature
Add support to register 'n' number of cooling devices
based on host driver ask and DT entry.

Change-Id: I1dd3ab9d3f9fdd6b6707e107be742565f9569c50
Signed-off-by: Naman Padhiar <npadhiar@codeaurora.org>
2020-07-29 23:20:28 -07:00
Elliot Berman
ad4ce8c7d2 soc: qcom: Add watchdog bite in panic
Add watchdog bite in panic by registering a restart handler. Also add
support for an earlier watchdog bite in the panic handler itself, which
should provide a better context for post-mortem analysis.

Change-Id: Ib6530fa754b78fd26a9f7d5a348b1e7ceb3c1f96
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
2020-07-28 09:37:36 -07:00
Elliot Berman
ca85f9919c power: reset: qcom-dload-mode: Add support for changing dump mode
Beyond full dump download mode, there is also a minidump download mode
and a dump mode which includes full dump and minidump. Add support for
changing dump mode with /sys/kernel/dload/dload_mode sysfs entry and for
toggling whether a download dump mode is used with msm_enable_dump_mode.

Change-Id: I20248df51e8df55c30c0c4f9c46291697cee189b
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
2020-07-28 09:37:34 -07:00
Neeraj Upadhyay
d7b8ff66af soc: qcom: pil: Do not do complete ramdump for minidump elf32
If minidump is configured to be ELF32, avoid using complete
ramdump property, so that only the required segments area is
dumped.

Change-Id: I34fe359204309fda47d0a665ca641cb042d87054
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
Signed-off-by: Mukesh Ojha <mojha@codeaurora.org>
2020-07-25 00:23:57 +05:30
qctecmdr
cad77dd1f6 Merge "uio: msm_sharedmem: shared memory region access is also given to vm-nav" 2020-07-10 13:58:46 -07:00
qctecmdr
7c50cfcbd9 Merge "staging: android: ion: Add support for the audio ML heap" 2020-07-09 06:59:34 -07:00
Sandeep Singh
13f37630bd icnss2: Add snapshot of icnss2 driver
This is a snapshot of the ICNSS2 driver and associated files as of
msm-4.19 commit bba237ba
("icnss2: Add support to send host SMMU IOVA range to firmware").

Change-Id: Ie779f948b29652f86950e4d6e5609fe5480b7ffe
Signed-off-by: Sandeep Singh <sandsing@codeaurora.org>
2020-07-08 15:48:47 +05:30
Sridhar Arra
a980ed9830 soc: qcom: secure_buffer: add support for VMID_NAV
Add support for VMID_NAV and shared memory region will be given access to
vm-nav-path also.

Change-Id: I9798e095a1f8bb7a76abcc0ec0949ff26989ad6f
Signed-off-by: Sridhar Arra <sarra@codeaurora.org>
Signed-off-by: Sahitya Tummala <stummala@codeaurora.org>
2020-07-07 14:57:18 +05:30
qctecmdr
848163af61 Merge "pil: Fix minidump collection during SSR" 2020-07-03 22:59:57 -07:00
Isaac J. Manjarres
c7c426ff7c soc: qcom: secure_buffer: Add support for VMID_ADSP_HEAP and VMID_LPASS
Add support for mapping memory to/from VMID_ADSP_HEAP and VMID_LPASS.

Change-Id: Ie479de719cbfbccb726b3284665573806958ac89
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
2020-06-25 23:45:57 -07:00
Raghavendra Rao Ananta
a0a9abc9fc pil: Fix minidump collection during SSR
By default, the ramdump driver expects the virtual address of the
segments to be set in order to collect the dumps. However, the
minidump collection path in the PIL driver doesn't honor this
requirement. Hence, generate a mapping on the physical address
and use that to collect the minidumps.

Change-Id: Icb7b20dc5f31daab6d1f1be5b7046e4c18dea31a
Signed-off-by: Raghavendra Rao Ananta <rananta@codeaurora.org>
2020-06-24 15:11:15 -07:00
Rishabh Bhatnagar
11af58274d drivers: soc: Add devcoredump based ramdump APIs
Introduce elf/non-elf dump APIs using devcoredump. These APIs
can be utilized by kernel clients to dump their memory regions
independently.

Change-Id: If4f5bcc0d4954b6f47a6893668d6a2a857bb0057
Signed-off-by: Rishabh Bhatnagar <rishabhb@codeaurora.org>
2020-06-17 11:39:20 -07:00
qctecmdr
7b7d13e1a5 Merge "drivers: soc: qcom: handle system sleep activities" 2020-06-05 00:39:02 -07:00
Maulik Shah
ffedc6cbb5 cpuidle: lpm-levels: Track and predict next rescheduling ipi
Add changes to track and predict next rescheduling ipi
based on past history. Add a module param to control enabling
it.

Change-Id: Ie495d8906288ee410708693ee15ed51643aefb44
Signed-off-by: Maulik Shah <mkshah@codeaurora.org>
2020-06-03 23:50:44 -07:00
Raghavendra Kakarla
5f6b8a2b36 drivers: irqchip: Add support to make mpm as module
To make the mpm driver as module driver, register the
mpm driver to platform bus driver and create the
both gic and gpio irq domains in its probe function.
Also add the support for mpm pin to gic irq number
translation to send irq info to its parent gic domain.

Also add the select and match function support to gpio
chip domain to differentiate it from gic interrupt domain.

Change-Id: I433f3a5b895d0ca074bae986ad5154892d7a31c4
Signed-off-by: Raghavendra Kakarla <rkakarla@codeaurora.org>
2020-06-02 08:03:23 -07:00
Raghavendra Kakarla
67371f6ddc drivers: irqchip: mpm: Add QTI SoC interrupt controller
Add the mpm as the wakeup capable interrupt controller.

Change-Id: Ibd437ecd4efe4db134a0a026404f9b3170685db5
Signed-off-by: Raghavendra Kakarla <rkakarla@codeaurora.org>
2020-06-02 08:03:11 -07:00
Raghavendra Kakarla
25ca211627 drivers: rpm-smd: Add support to make rpm-smd as module
Add support to make rpm-smd as module driver.

Change-Id: Iddc66bd58ddc1b4c821768c7e368d620ab964322
Signed-off-by: Raghavendra Kakarla <rkakarla@codeaurora.org>
2020-05-20 22:51:42 +05:30
Zhen Kong
b6215698c0 qseecom: process smcinvoke callback request
add operation to deal with smcinvoke callback request

Change-Id: Ia79b380691dbda4298cdf088fe1a09280767ef17
Signed-off-by: Zhen Kong <zkong@codeaurora.org>
2020-05-13 17:39:08 -07:00
qctecmdr
5bd24ffbc4 Merge "soc: qcom: Add RPM SMD Driver" 2020-04-27 18:02:44 -07:00
Raghavendra Kakarla
b12441b932 soc: qcom: Add RPM SMD Driver
This is a snapshot of the RPM-SMD driver functionality as of
'commit 0453f0e705df8b("move rpm-smd initcall to
postcore_initcall_sync")' on msm-4.14 branch.

Change-Id: Ie70bca9c28ae2339b45715f7d82839f39e733832
Signed-off-by: Raghavendra Kakarla <rkakarla@codeaurora.org>
2020-04-26 15:47:13 +05:30
qctecmdr
55aef73ec8 Merge "soc: qcom: pmic_glink: add protection domain restart (PDR) support" 2020-04-25 17:15:23 -07:00
Subbaraman Narayanamurthy
794c02be95 soc: qcom: service-locator: update types in get_service_location()
Currently, get_service_location() expects "char *" for client
name and service name from clients. Update this to "const char *"
as they're not supposed to be changed by service locator. This
also helps clients to pass a "const char *" when it reads
strings from device tree using of_property_read_string_index().

Change-Id: I98d32524151b2486863e7fd51c56bc8f16262808
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
2020-04-22 19:21:30 -07:00
qctecmdr
608f2d38c1 Merge "soc: qcom: Add support for early brought out subsystems" 2020-04-22 12:58:16 -07:00
Prasad Sodagudi
65a9fe67f3 soc: qcom: Refactor subsystem registration process
Restructure subsystem registration process and IRQ registration
step such that, both subsystem restart framework and secure pil
drivers should be able to handle all the asychronous events
coming from subsystem. If both subsystem restart framework
and secure pil drivers are not in proper state to handle
asychronous events from subsystem leading to kernel faults.

Change-Id: Iacda38a9d7d4aeb4549f45533c91791f096c3b1c
Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org>
Signed-off-by: Prakruthi Deepak Heragu <pheragu@codeaurora.org>
2020-04-17 11:41:26 -07:00
Jordan Crouse
706624fee0 includes: Make headers work with KERNEL_HEADER_TEST
Fix up a number of headers to work with KERNEL_HEADER_TEST ahead
of turning it on by default.

Change-Id: Ic0dedbaddba2fa62ec60d93bf3e4ef06ededa4cc
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2020-04-14 16:40:49 -06:00
qctecmdr
9261aacbb1 Merge "mem-buf: Replace *_TRUSTED_UI with *_TRUSTED_VM" 2020-04-08 03:42:49 -07:00
qctecmdr
27986e140b Merge "includes: Fix more headers to work with KERNEL_HEADER_TEST" 2020-04-04 10:08:53 -07:00
Mao Jinlong
7cbd318745 memory_dump: Correct the copyright year
Retain 2019 as the copyright year of memory_dump.h.

Change-Id: I6c9053e64c8ee7a416a2f9af028b288ef577c5d8
Signed-off-by: Mao Jinlong <jinlmao@codeaurora.org>
2020-04-03 18:38:17 +08:00
Jordan Crouse
1155af87e3 includes: Fix more headers to work with KERNEL_HEADER_TEST
Fix other headers to work when KERNEL_HEADER_TEST is enabled by adding
dependencies and advance struct prototypes where appropriate.

Change-Id: Ic0dedbad6804e5dca75b33b3d0ae9e3b89a51669
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2020-04-02 17:40:57 -06:00
Isaac J. Manjarres
61f3d66986 soc: qcom: secure_buffer: Remove support for VMID_TRUSTED_UI
The VMID for the trusted VM is not known up-front. Thus, there
is no point in exposing VMID_TRUSTED_UI, so remove it. Callers of
hyp assign must use the resource manager APIs to deduce the VMID,
and pass it to the hyp assign call.

Change-Id: I93e2812abffd99bb5b42b7fccead91becc5015fd
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
2020-04-02 09:53:41 -07:00
qctecmdr
672df0d169 Merge "defconfig: Enable mem_dump driver on gki build for lahaina" 2020-03-28 07:28:11 -07:00
Mao Jinlong
a4f0a38f21 soc: memory_dump: Add moudle support for mem_dump driver
Add support to build the memory dump driver as moudle on gki build.

Change-Id: I8cf227d0b0044b935bbf224d1191ec84fa497509
Signed-off-by: Mao Jinlong <jinlmao@codeaurora.org>
2020-03-27 14:56:22 +08:00
Lina Iyer
7522c692ed soc: qcom: rpmh: remove serialization of TCS commands
Requests sent to RPMH can be sent as fire-n-forget or response required,
with the latter ensuring the command has been completed by the hardware
accelerator. Commands in a request with tcs_cmd::wait set, would ensure
that those select commands are sent as response required, even though
the actual TCS request may be fire-n-forget.

Also, commands with .wait flag were also guaranteed to be complete
before the following command in the TCS is sent. This means that the
next command of the same request blocked until the current request is
completed. This could mean waiting for a voltage to settle or series of
NOCs be configured before the next command is sent. But drivers using
this feature have never cared about the serialization aspect. By not
enforcing the serialization we can allow the hardware to run in parallel
improving the performance.

Let's clarify the usage of this member in the tcs_cmd structure to mean
only completion and not serialization. This should also improve the
performance of bus requests where changes could happen in parallel.
Also, CPU resume from deep idle may see benefits from certain wake
requests.

Change-Id: I341b9887a53a569a9d5947ed884fc1bf60e7604f
Signed-off-by: Lina Iyer <ilina@codeaurora.org>
2020-03-06 13:29:55 -07:00
Isaac J. Manjarres
ff1cd8f58d soc: qcom: secure_buffer: Add support for the Trusted UI(TUI) VMID
Add support for assigning memory to the TUI VMID.

Change-Id: Idbd8e144d7251335ba1db5bfdad7fa94394da7e5
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
2020-02-11 13:35:44 -08:00
Jordan Crouse
c7f16608d4 include: Fixup headers to pass KERNEL_HEADER_TEST
Fix up a bunch of headers so that they pass KERNEL_HEADER_TEST to ensure
that they are self-contained.

Change-Id: Ic0dedbad91f70263452c9a809333fe93c8ee2266
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2020-01-15 09:01:08 -07:00
Elliot Berman
8151afb75d power: reset: Add snapshot of msm-poweroff
Add snapshot of msm-poweroff driver as of commit <a0e0de0156d6> ("Merge
"diag: Donot open mhi channels on usb connect"").

Change-Id: I584b7d6187394610e084e955bf1503d5c68f560d
[eberman@codeaurora.org: migrate SCM calls, support driver as a module
with probe and restart handler]
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
2020-01-06 11:45:23 -08:00
Elliot Berman
6f016c2e4a soc: qcom: Add snapshot of minidump
Add snapshot of minidump as of commit <f94ba33e3b90> ("Merge "usb:
dwc3-msm: Fix GDSC collapse in host mode bus suspend"").

Change-Id: Ie322154aefa3b5d482549188096dc613bde1badf
[eberman@codeaurora.org: minidump Kconfig to tristate]
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
2019-12-18 16:31:45 -08:00
Tingwei Zhang
6ffa5f7053 coresight: Add snapshot of jtagv8 driver
Add snapshot for jtagv8 driver from msm-4.19
commit c953c9b6eb1f ("include/linux: add notifier for fps change").
Make necessary change to adopt scm framework change.

Change-Id: I289846a1bcb3c0dd11514db69e0088198f7d1cb1
Signed-off-by: Tingwei Zhang <tingwei@codeaurora.org>
2019-12-18 11:12:44 +08:00
Murali Nalajala
a659e706aa socinfo: add socinfo driver
Add socinfo driver to expose various SoC information to the clients.
This information is useful to various clients in kernel and userspace
to know about the SoC information.

Change-Id: If8b025f19a8eb5bf736d1c88c180654d724bb45f
Signed-off-by: Murali Nalajala <mnalajal@codeaurora.org>
2019-12-16 20:05:59 -08:00
Tony Truong
48468550eb soc: qcom: subsys_notif: Add early SSR notifications for PCIe DRV
PCIe DRV needs to recover the link as soon as possible before
the device on the other side of the link times out. Allow PCIe
DRV to register for early SSR notifications to have a chance of
making the recovery latency.

Change-Id: I75ce59075efcebc7c4457d300f7558b837d725a0
Signed-off-by: Tony Truong <truong@codeaurora.org>
2019-12-11 17:57:51 -08:00
Siddharth Gupta
b4f766a33e firmware: qcom_scm: Move qseecom specific workarounds
Move qseecom specific workarounds to the main file. This allows
access to the scm device struct.

Change-Id: I08bb227e88a7ba21bce0d3e7911819b07815c83f
Signed-off-by: Siddharth Gupta <sidgup@codeaurora.org>
2019-12-10 13:14:19 -08:00
qctecmdr
a2457c5ecd Merge "soc: qcom: ssr: Export find_subsys_device function" 2019-12-07 00:59:41 -08:00
Raghavendra Rao Ananta
25bee27f17 soc: qcom: ssr: Export find_subsys_device function
Export the find_subsys() SSR API for the clients to get the
subsystem device descriptor for a particular subsystem.

Change-Id: I8aa2e7b8c44c3682c1dbf7e5fca75680c469690f
Signed-off-by: Raghavendra Rao Ananta <rananta@codeaurora.org>
2019-12-05 18:12:39 -08:00
Saravana Kannan
74a06b81ab PM / devfreq: icc: Add suspend/resume APIs
Absence of traffic is guaranteed when the device sitting behind a devbw
device is suspended. In such cases, it is a waste of power to make non-zero
bandwidth votes or to scale the devbw device. So, provide APIs to
suspend/resume the devbw device as needed.

Change-Id: Id58072aec7a9710eb917f248d9b9bd08d3a1ec6a
Signed-off-by: Saravana Kannan <skannan@codeaurora.org>
[avajid@codeaurora.org: renamed devbw to icc and made minor styling change]
Signed-off-by: Amir Vajid <avajid@codeaurora.org>
2019-12-04 12:04:25 -08:00
Saravana Kannan
40f77da0e2 msm: devfreq_icc: Add devfreq driver for device bandwidth voting
This driver registers itself as a devfreq device that allows devfreq
governors to make IB/AB bandwidth votes. This driver allows the governors
to be agnostic of the bandwidth voting APIs, the number of master ports or
slave ports, the actual port numbers, the system topology, the available
frequencies, etc.

Change-Id: If055ddd580afd41f9668b111e6c09a047488b2e0
Signed-off-by: Saravana Kannan <skannan@codeaurora.org>
[avajid@codeaurora.org: moved to icc framework, renamed to devfreq_icc and made minor styling changes]
Signed-off-by: Amir Vajid <avajid@codeaurora.org>
2019-12-04 12:04:22 -08:00