The CPR driver on MSMCOBALT needs the gpucc_rbcpr_clk clock in
order to probe and register the gfx_vreg regulator which the
graphics clock driver in-turn is dependent on for registering
the gfx3d clocks.
To break this circular dependency, register the non-gfx clocks
first, let the CPR driver probe, and then register the GPU PLLs
and gfx3d clocks. Also, correct the gfx CRC sequence.
CRs-Fixed: 986619
Change-Id: Id16ad7940e96cc9d5a3127551c8a92b05cfbb181
Signed-off-by: Deepak Katragadda <dkatraga@codeaurora.org>
Allow the service-locator module to be set via a module
parameter to for another avenue of customization.
CRs-Fixed: 982026
Change-Id: I300b01cc0f130e797734bfb576f2bfedf1075614
Signed-off-by: David Keitel <dkeitel@codeaurora.org>
Disable the double bit only flag for edac driver.
CRs-Fixed: 1000784
Change-Id: I54d9e9bf1ecfa0d882574dca7ed3bb7cd53b1ef6
Signed-off-by: Runmin Wang <runminw@codeaurora.org>
PBSS (Personal Basic Service Set) is a new BSS type for DMG
networks. It is similar to infrastructure BSS, having an AP-like
entity called PCP (PBSS Control Point), but it has few differences.
For example, stations inside a PBSS can communicate directly, and
the PCP role can be transferred between stations.
This change adds PBSS support, and has 2 main parts:
1. When starting an AP, add an option to start as a PCP instead.
This is implemented by a new PBSS flag which is passed as part of
the cfg80211_ap_settings structure.
2. When connecting to a BSS, add an option to connect to a PCP
instead of an AP. This is again implemented by a new PBSS flag,
added to the cfg80211_connect_params structure.
Change-Id: Ibfcbeb2df9857fecab4d42f0725d70d2a2fa4b98
Signed-off-by: Lior David <qca_liord@qca.qualcomm.com>
Signed-off-by: Maya Erez <qca_merez@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Git-commit: eabb03b4a37cc7945ca62453402c74a0622e5a05
Git-repo: https://github.com/kvalo/ath.git
CRs-Fixed: 982931
Signed-off-by: Maya Erez <merez@codeaurora.org>
Add the required ion cma heaps for msmcobalt.
Update the Device Tree with the concerned configuration.
Change-Id: Ie4bd19b0603e856107151972b626c70f9d04a624
Signed-off-by: Liam Mark <lmark@codeaurora.org>
Update the memory map carveouts to be in sync with
the new msmcobalt memory map.
CRs-Fixed: 981975
Change-Id: I5e960ac0553b195e7a69ef596b5fbdcff2064786
Signed-off-by: Liam Mark <lmark@codeaurora.org>
Add SPS module to device tree. SPS (Smart Peripheral System)
enables the support of all BAMs in the system which provide DMA
functionality to various peripherals.
Change-Id: Ib3f0cd293e7e5d09f119c226acdca64c87ca61bd
Signed-off-by: Yan He <yanhe@codeaurora.org>
Add POWER_RESET_QCOM in the perf defconfig.
CRs-Fixed: 1000759
Change-Id: I67181840c8e889ff31111f4fd419edbf5d8d0810
Signed-off-by: Runmin Wang <runminw@codeaurora.org>
Certain types of fatal synchronous aborts may be triggered by parity
errors in the L1 or L2 caches. Check whether a parity error occurred and
print out the relevant information.
CRs-Fixed: 1000767
Change-Id: I12b0341148f05a3129e8b1aed3ba322277276360
Signed-off-by: Runmin Wang <runminw@codeaurora.org>
This change add major revision related information for both
QUSB PHY for msm8996.
Change-Id: I68ae8d863a6e438a8d11061db2c75072f4a4e012
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
In new platform, few set of QUSB PHY related operational registers'
offset and usage is changed. This change adds QUSB PHY power up
and PLL lock functionality for QUSB PHY having major revision 2.
Change-Id: Id44c91481d4c184a1991768baf13adad2fae9fb3
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
Add Bluetooth device tree for WCN3990 chipset for msm8998.
Change-Id: I45809876336633a496d03e507403944c12f0abb9
Signed-off-by: Sungjun Park <sjpark@codeaurora.org>
To support WCN3990 chipset, add control to configure
regulators and clock.
Change-Id: Ibf0e4a0ebd55adaadb6d26b335c3d0a9edbe8845
Signed-off-by: Sungjun Park <sjpark@codeaurora.org>
Gpio interrupt target needs to be configured to target
cpu subsystem.
CRs-Fixed: 1000634
Change-Id: I539dc604b150f9f23fda09f343cc5e1d25a6ca47
Signed-off-by: Runmin Wang <runminw@codeaurora.org>
PWM devices can be supported on msmcobalt platform. Enable the
driver support for them.
CRs-Fixed: 999988
Change-Id: I96761cd2bf18bce6ef7795b6686c5da72fe11a89
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
This DT bindings documentation snapshot is taken as of msm-3.18
'commit 0b20839e37187 ("Merge "slim-msm: Synchronize SSR callbacks"")'.
CRs-Fixed: 999988
Change-Id: I59681cf42274f70d5f46b869257a838014d8bf61
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
L2 low power modes between silver and gold cluster has inconsistent
names. Rename both L2 dynamic retention mode as 'dynret' and retention
mode as 'ret' to be consistent.
Change-Id: I18f52fa873b332fb6ad644afc565a84bfed154cc
Signed-off-by: Archana Sathyakumar <asathyak@codeaurora.org>
Client closing the device immediately after receiving data leaves
the packet arrival wakeup source in active state and block the system
infinitely from entering into suspend state.
Check the state of wakeup source during close operation and release
if it is active.
CRs-Fixed: 989126
Change-Id: I5ad87614edb1307cffaa798f9b393d816dce012a
Signed-off-by: Arun Kumar Neelakantam <aneela@codeaurora.org>
Use GLINK_OPT_INITIAL_XPORT flag to allow the GLINK core to use
the best transport based on available transports.
CRs-Fixed: 994255
Change-Id: I4a0022954d34d52899d5dd357813c4da90717e2e
Signed-off-by: Arun Kumar Neelakantam <aneela@codeaurora.org>
SMD packet nodes are used by user space clients to communicate with remote
subsystems, replace the SMD packet nodes to GLINK packet nodes to remove
the SMD driver dependence.
CRs-Fixed: 994255
Change-Id: Ic0934d795c2c7c20332358a3da603e093f94d980
Signed-off-by: Arun Kumar Neelakantam <aneela@codeaurora.org>
If the local client of the G-Link channel comes up and waits for the
remote client, then it's states are set accordingly. But if the remote
subsystem is restarted as soon as it boots up, then it's states are
not adjusted accordingly. This causes the G-Link channel states to lose
synchronization once the remote client comes up successfully after the
reset.
Adjust the states of the local client if it is waiting for the remote
client and the remote subsystem is reset as soon as it boots up.
CRs-Fixed: 952834
Change-Id: I5fe327ea61eb2d16591861b1246fdca2ecce2b1c
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@codeaurora.org>
Update actuator specific I2C addr_type and data_type
structures. Use the strucutres defined by sensor.
CRs-Fixed: 982082
Change-Id: I77753fd25d5a4256a4a4cdd74518facd63becf25
Signed-off-by: Rajesh Bondugula <rajeshb@codeaurora.org>
When the polling interval is updated, the delayed workqueue is cancelled
and requeued with the new polling interval. However, the bw_hwmon IRQ can
come at the same time and try to stop and restart the delayed work (in the
IRQ thread). This can cause a race where the work might be queued twice or
canceled twice and cause a crash.
Fix this race condition by suspending and resuming the HW monitor when we
are updating the polling interval. This entirely avoids the race because
suspending the HW monitor also avoid the possibility of the IRQ coming
during the polling interval update.
CRs-Fixed: 954082
Change-Id: Ic7baf2a3da4ed8f8a9023617059e22fd81c3ba45
Signed-off-by: Saravana Kannan <skannan@codeaurora.org>
In case IPA header has a processing context, header offset is undefined.
This change fixes header log print in case of processing context.
Change-Id: I55e895be945a690a707f6015c09578e31c1de693
CRs-Fixed: 993907
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
In order to allow ipa_odu_bridge clients to include only the
dedicated header ipa_odu_bridge.h and also have the symbols
of shared IPA structures and definitions, include ipa.h
from ipa_odu_bridge.h. The clients of ipa_odu_bridge will use
only APIs from ipa_odu_bridge.h.
CRs-fixed: 999935
Change-Id: Ic6da089ebd7878f0d7ceebde7cd8e8549c30182e
Signed-off-by: Amir Levy <alevy@codeaurora.org>
As part of IPA driver refactoring, a separation has been made
between IPA core driver and the IPA clients.
odu_bridge driver has moved to the ipa_clients folder and a
dedicated header file has been created in order to provide
a direct interface between IPA odu_bridge client driver and
other drivers without a direct interaction with the IPA core
driver.
This change moves odu_bridge functions and structure from
ipa.h to the ipa_odu_bridge.h header.
CRs-fixed: 999935
Change-Id: I1b24c4e13daaae3e63c5cacefcbda12b8cfbeeb8
Signed-off-by: Amir Levy <alevy@codeaurora.org>
Add ipc logging ability to odu_bridge driver. Messages will be directed
to ipc logging buffer which can be found in crashdump.
CRs-fixed: 999935
Change-Id: Iadfcf4a88472c54fbfe066fa6304146140b76201
Signed-off-by: Amir Levy <alevy@codeaurora.org>
As part of IPA driver refactoring, a separation has been made
between IPA core driver and the IPA clients.
odu_bridge driver has moved to the ipa_clients folder and a
dedicated header file has been created in order to provide
a direct interface between IPA odu_bridge client driver and
other drivers without a direct interaction with the IPA core
driver.
CRs-Fixed: 999935
Change-Id: Ib5109681c62137d1310539daa816d5229bc08098
Signed-off-by: Amir Levy <alevy@codeaurora.org>
Add ipc logging capability to ipahal sublayer. Messages will be directed
to ipc logging buffers which can be read from debugfs or crash dump.
CRs-Fixed: 999887
Change-Id: I4ef85fc64f465aa0d4901493b80dd676596affcb
Signed-off-by: Ghanim Fodi <gfodi@codeaurora.org>
SMEM_SMEM_STATIC_LOG_IDX is currently unused as its usecase has
been deprecated for a long time. Reallocate the ID to
SMEM_XBL_LOADER_CORE_INFO.
CRs-Fixed: 998028
Change-Id: I5f80603633464e7eea322fde57110e377b72d84c
Signed-off-by: Dhoat Harpal <hdhoat@codeaurora.org>
IPA-driver only suspends the WDI pipe
when rdy_ring_rp value equals to the
value of rdy_comp_ring_wp
Change-Id: I520b7943b85cd61065703c7bf9a5d8efb6302a56
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
wlan will pass the VA to IPA-driver to let
IPA-driver access the values of rdy_ring_rp
and rdy_comp_ring_wp to decive when can
suspend the WDI pipe
Change-Id: I73447c5557d42817ac2214532273e0de638e13d9
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
Add rx_completion_ring and rx_completion_ring_wp
to indicate which pkt descriptor is processed,
also support 64 bits IOVA/PA in ipa-uc.
Change-Id: I4ac096336f5aeb01fbba8241cda987f56edc1232
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
add support for WDI2.0 feature which
wlan HW is 64 bits.
Change-Id: I910ed12f79f58dd1a0b0a58fb1cceb7d79ceaaa4
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
Some of the camera modules need to know the
regulator names to enable based on the use case,
Hence change the regulator API to populate regulator
names as well.
Change-Id: I8205df6ecbeed8eca7ff9a81534edadf51309fe1
Signed-off-by: Lakshmi Narayana Kalavala <lkalaval@codeaurora.org>
Add a new task info flag to represent a task
whose mm struct has been freed. This is used by the
android low memory killer to track tasks whose
mm struct has been freed.
Change-Id: Id72e67e31fb52e07f01fb6e234b102f63b400aa5
Signed-off-by: Abhimanyu Kapur <abhimany@codeaurora.org>
[lmark@codeaurora.org: resolve trivial merge conflicts]
Signed-off-by: Liam Mark <lmark@codeaurora.org>
The memory reclaim code needs to give time to the system to
return the memory from a killed process otherwise the memory
reclaim code could run continuously, in multiple threads,
which could starve both the watchdog thread and the thread
which is responsible for returning the memory from the
killed process.
Change-Id: Ieded4bfe038ca936247fa4b638070e979b02eaa1
CRs-fixed: 447740
Signed-off-by: Liam Mark <lmark@codeaurora.org>
The lowmemorykiller uses the TIF_MEMDIE flag to help ensure it doesn't
kill another task until the memory from the previously killed task has
been returned to the system.
However the lowmemorykiller does not currently look at tasks who do not
have a tasks->mm, but just because a process doesn't have a tasks->mm
does not mean that the task's memory has been fully returned to the
system yet.
In order to prevent the lowmemorykiller from unnecessarily killing
multiple applications in a row the lowmemorykiller has been changed to
ensure that previous killed tasks are no longer in the process list
before attempting to kill another task.
Change-Id: I7d8a8fd39ca5625e6448ed2efebfb621f6e93845
Signed-off-by: Liam Mark <lmark@codeaurora.org>
Wehn adbd is closing eps, it is trying to unregister gadget and UDC.
When VBUS is not present and cotroller is into low power mode.
ffs_func_disable() also invokes controller's PM idle as well. This
results into unclock register access when dwc3_gadget_stop() is
called by unregister_gadget_item(). Fix this issue by resuming
controller from dwc3_gadget_stop().
Change-Id: I469e8609bf23bee97b3f9c612401aaf92bc72a30
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
Limit the Silver and Gold cluster frequency to 300 MHz.
This is necessary to ensure stable operation until
thermal management is enabled.
Change-Id: I965a463ec4808d72ac8fc9d7aa98011ab45c984e
Signed-off-by: Osvaldo Banuelos <osvaldob@codeaurora.org>
Currently, there is an assumption that the Fmax differs
from the minimum frequency. This is not necessarily true
if the Clock CPU device defines a single frequency. Fix
this by only adding a maximum frequency/voltage pair to
the OPP table if the maximum frequency differs from the
minimum supported frequency.
Change-Id: I6224ecb800bcbca821f42abec43bc57ee701ce80
Signed-off-by: Osvaldo Banuelos <osvaldob@codeaurora.org>
Add CCPM/QVIT in WLAN mode and add support fo setting
WLAN mode from command line.
CRs-Fixed: 986484
Change-Id: I5921dc3978bf96221b50148bb2f86b0ffed3b5fb
Signed-off-by: Yuanyuan Liu <yuanliu@codeaurora.org>
Allocate msa memory in icnss_probe before SMMU attached
instead of in qmi indication callback. So that we can get
contiguous DMA address.
CRs-Fixed: 987584
Change-Id: Ifea6c2de94071719ffede0f641f8a47526bc9e03
Signed-off-by: Yuanyuan Liu <yuanliu@codeaurora.org>
Add support of skiping QMI messaging when ICNSS driver is initialized.
So that we can disable QMI communication between WLAN Host and FW when
QMI framework is not supported.
CRs-Fixed: 978953
Change-Id: I7a9a61c8aa11bd5c0f5f2effc487a2225e27011d
Signed-off-by: Yuanyuan Liu <yuanliu@codeaurora.org>
Add device tree information for RTC device in pmic file
for msmcobalt.
Change-Id: I26cc21856e9a26be71af6aa91d50e5af2f9fefc6
Signed-off-by: Mohit Aggarwal <maggarwa@codeaurora.org>