Commit graph

591409 commits

Author SHA1 Message Date
Ramakrishnan Ganesh
4fb87c366b soc: qcom: sleepstate: Enable/Disable IPCRTR wakelocks
The acquiring of wakelock prevents the system from entering
suspend for high frequency non-wakeup sensor requests. With
the change IPCRTR now does not acquire a wakelock while cpu
is out of suspend. This allows the cpu to enter suspend.
The wakelocks are enabled in the suspend path so that future
wakeup capable sensor events gets handled without issues.
The wakelocks are disabled post resume from suspend.
This change affects only the data on the SLPI edge.

Change-Id: Iae3dafb735bfb0d3000487f2fa2216d68e9a026f
Signed-off-by: Ramakrishnan Ganesh <ramakris@codeaurora.org>
2017-06-22 17:57:53 -07:00
Tatenda Chipeperekwa
0aedc43f0b drm: msm: add support for a custom hotplug event
Add support for a custom hotplug event that is triggered when the
status of the connector has changed. The event string of the
custom event will be in the following format:
	"name=<connector name> status=<connector status>"
For example, when the DisplayPort connector has its status
updated to connected then the event string that is used as part
of the hotplug event will be as follows:
	"name=DP-1 status=connected"
If the connector name is not known or is invalid at the time that
the event is triggered then the name will be reported as "unknown".

Change-Id: I5d6164d1e8e651cb05527733d68fa86fefb9e6ce
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
2017-06-22 17:11:45 -07:00
Linux Build Service Account
db478ca29d Merge "Revert "msm: kgsl: Offload mementry destroy work to separate thread"" 2017-06-22 14:00:22 -07:00
Linux Build Service Account
af39cfe11e Merge "sched: avoid migrating when softint on tgt cpu should be short" 2017-06-22 14:00:20 -07:00
Linux Build Service Account
47f3f67114 Merge "arm64: dma-mapping: fix aliasing issues with non-CMA alloc" 2017-06-22 14:00:19 -07:00
Linux Build Service Account
146cbfce78 Merge "mmc: sdhci-msm: Don't turnoff Vcc during initialization" 2017-06-22 14:00:18 -07:00
Linux Build Service Account
1cbfeeaf0d Merge "power: smb-lib: Add support to detect weak charger" 2017-06-22 14:00:17 -07:00
Linux Build Service Account
01cff86d50 Merge "soc: qcom: glink: Move tx_wakeup_worker to rx tasklet" 2017-06-22 14:00:16 -07:00
Linux Build Service Account
356730a45b Merge "diag: Update msg mask tables for new SSID" 2017-06-22 14:00:14 -07:00
Linux Build Service Account
9419a8a284 Merge "drm/msm: Move memptrs to msm_gpu and reorganize" 2017-06-22 14:00:12 -07:00
Dustin Brown
86922e8007 arm/arm64: Export save_stack_trace_tsk()
The kernel watchdog is a great debugging tool for finding tasks that
consume a disproportionate amount of CPU time in contiguous chunks. One
can imagine building a similar watchdog for arbitrary driver threads
using save_stack_trace_tsk() and print_stack_trace(). However, this is
not viable for dynamically loaded driver modules on ARM platforms
because save_stack_trace_tsk() is not exported for those architectures.
Export save_stack_trace_tsk() for the ARM64 architecture to align with
x86 and support various debugging use cases such as arbitrary driver
thread watchdog timers.

Change-Id: I61e9d2afc4703a786fa6dcaf82fe46c0ed250045
CRs-Fixed: 2061326
Signed-off-by: Dustin Brown <dustinb@codeaurora.org>
2017-06-22 12:40:54 -07:00
Linux Build Service Account
17ca958bf3 Merge "icnss: fix the memory and kernel info leak due to the race condition" 2017-06-22 07:40:35 -07:00
Linux Build Service Account
fb2390c8b1 Merge "msm: kgsl: convert some workqueues to use kthreads." 2017-06-22 07:40:34 -07:00
Linux Build Service Account
e26d095a21 Merge "power: smb-lib: Rearrange BOOST_BACK voting logic" 2017-06-22 07:40:33 -07:00
Linux Build Service Account
4f317411a4 Merge "msm: vidc: Recompute extradata address of buffers with ref 2" 2017-06-22 07:40:31 -07:00
Linux Build Service Account
d9cc5d555c Merge "msm: vidc: Renaming the AU-Delimiter params/extens" 2017-06-22 07:40:30 -07:00
Linux Build Service Account
c515c98cc0 Merge "msm: camera: validate num_streams in stream_cfg_cmd before using it" 2017-06-22 07:40:29 -07:00
Linux Build Service Account
86d96e09c2 Merge "ARM: dts: msm: Update sensor device node for SDM660 QRD" 2017-06-22 07:40:28 -07:00
Linux Build Service Account
4bdee99442 Merge "ath10k: Increase peer delete response wait to 500msec" 2017-06-22 07:40:27 -07:00
Linux Build Service Account
0ae9c77a8c Merge "msm📷 correct stats query out of boundary" 2017-06-22 07:40:26 -07:00
Linux Build Service Account
d519bfb9c1 Merge "clk: qcom: osm: Initialize ACD when the cluster is online" 2017-06-22 07:40:25 -07:00
Linux Build Service Account
f8499f2b5e Merge "ais: refine some code style issues" 2017-06-22 07:40:24 -07:00
Linux Build Service Account
3b2de2e798 Merge "ARM: dts: msm: override initial pwrlevel for MSM8996ProAU" 2017-06-22 07:40:23 -07:00
Linux Build Service Account
4dcf7a50c5 Merge "Merge branch 'android-4.4@6fc0573' into branch 'msm-4.4'" 2017-06-22 07:40:22 -07:00
Linux Build Service Account
a367cb43e4 Merge "wil6210: protect against invalid length of tx management frame" 2017-06-22 07:40:21 -07:00
Linux Build Service Account
b944e8d1e6 Merge "msm: camera: Add error check for cmd in IOCTL." 2017-06-22 07:40:20 -07:00
Linux Build Service Account
7c14b62c88 Merge "drivers: soc: qcom: rpm_stats: Add mutex lock for shared data" 2017-06-22 07:40:19 -07:00
Linux Build Service Account
77a019931a Merge "msm: camera: fix untrusted pointer for power down setting" 2017-06-22 07:40:18 -07:00
Linux Build Service Account
46e4ca524d Merge "msm: ipa3: fix compatibility with ipa_nat driver" 2017-06-22 07:40:17 -07:00
Linux Build Service Account
1184e3d0c4 Merge "msm: sps: Fix race condition in SPS debugfs APIs" 2017-06-22 07:40:16 -07:00
Linux Build Service Account
dcb27d45f0 Merge "msm: camera: fix untrusted pointer for power down setting" 2017-06-22 07:40:15 -07:00
Linux Build Service Account
870d3e21b3 Merge "msm: camera: Use mutex lock to avoid race condition" 2017-06-22 07:40:15 -07:00
Vinayak Menon
1c6a9c9721 arm64: dma-mapping: fix aliasing issues with non-CMA alloc
Cache flush and clearing of logical mapping is done right now
only when the allocation is from CMA, for allocation requests
with DMA_ATTR_STRONGLY_ORDERED or DMA_ATTR_NO_KERNEL_MAPPING
set. Extend this to non-CMA allocations too, to avoid cache
aliasing issues.

Change-Id: I133d34d79665ee7159fe384121e933d7768748c2
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
2017-06-22 16:51:33 +05:30
Liangliang Lu
5ccb8c59b5 ARM: dts: msm: Update USB PHY0 parameters for SDA660/630 HDK platform
Update USB PHY0 parameters for SDA660/630 HDK platform.

Change-Id: I2780afcd99e1bb22f4dd6dc977382d379afb1393
Signed-off-by: Liangliang Lu <luliang@codeaurora.org>
2017-06-22 17:35:23 +08:00
Hareesh Gundu
f304b0a865 ARM: dts: msm: Defer regulator disable for msm8998 GPU SMMU
IOMMU driver takes vote on regulator for every unmap, attach or
detach call and removes it once done.

This is an overhead if GPU is in power collapse mode and huge
number of unmap calls are pending from a given context. It would
end up in turning ON/OFF the regulator those many times.

To optimize this, do a deferred regulator disable about 80ms so that
all subsequent requests to regulator enable will be just refcounted.

Change-Id: I07709f5a0ce55298a5fe46ffd95bb8bc472e7069
Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
2017-06-22 14:55:25 +05:30
Hareesh Gundu
e98fd46014 Revert "msm: kgsl: Offload mementry destroy work to separate thread"
This reverts commit 281fcb5e18.

To address the issue with the OOMkiller causing to kill the
foreground application.

Change-Id: Ie4c078d706fdf1c13ad45840f72b414ddc37c1d0
Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
Signed-off-by: Venkateswara Rao Tadikonda <vtadik@codeaurora.org>
2017-06-22 14:29:10 +05:30
Siddartha Mohanadoss
cb0e0c2a5e thermal: qpnp-adc-tm: Fix shutdown path for ADC_TM
Update ADC_TM shutdown path for VADC HC peripheral.

Change-Id: I3d524c6189402e39bf1911288ab4691f5df84066
Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
2017-06-22 14:17:24 +05:30
Sarada Prasanna Garnayak
470cbd2aea icnss: fix the memory and kernel info leak due to the race condition
The icnss register read/write debugfs entry can be  accessed by
multiple user space thread. Memory allocation and deallocation
in the register read/write file operation leads to potential memory
leak during concurrency access of debugfs device file.

Add protection to avoid the memory leak and kernel information
leak due to the race condition in the register read/write ops.

CRs-Fixed: 2012572
Change-Id: I22c6af9a396c0df4e68f75702fc68a5dff5af032
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
2017-06-22 00:35:59 -07:00
Tim Murray
7412403004 msm: kgsl: convert some workqueues to use kthreads.
adreno_dispatch_work and _kgsl_event_worker are both low-latency
low-runtime functions that are in the critical path of GPU
rendering. Moving them out of workqueues and into a dedicated FIFO
kthread avoids significant jitter.

bug 30342017

Git-commit: 1a7a93bd33f48a369de29f6f2b56251127bf6ab4
Git-repo: https://android.googlesource.com/kernel/msm

Change-Id: I83562f488c34c2ab001c8ea79e7f09b633c658bd
Signed-off-by: Tim Murray <timmurray@google.com>
Signed-off-by: Abhilash Kumar <krabhi@codeaurora.org>
2017-06-21 22:56:18 -07:00
Veerabhadrarao Badiganti
7ffd15f63d mmc: sdhci-msm: Don't turnoff Vcc during initialization
As per emmc specification, device should be notified either with
power-off or sleep notification before turning off the Vcc.
Failing to do so might affect the device longevity.

In mmc driver initialization phase even before device probing
gets completed, Vcc is getting turned off without these notifications.
Since it can't send commands at this stage, So just ensure that Vcc
is not turned off till initialization gets completed.

Change-Id: I0bbf0077357d66c888147be40a0c5d312b9ce063
Signed-off-by: Veerabhadrarao Badiganti <vbadigan@codeaurora.org>
2017-06-22 10:55:19 +05:30
Fenglin Wu
dd1a56d034 power: qpnp-smb2: Unset ONLINE for UNKNOWN USB charger type
Currently, USB power_supply POWER_SUPPLY_PROP_ONLINE property will be
set if the charger type is POWER_SUPPLY_TYPE_UNKNOWN which is not
expected. Unset ONLINE for UNKNOWN USB charger type.

CRs-Fixed: 2065139
Change-Id: Ibc40ee62b2d95c319a7fe34b17813c2b57518f67
Signed-off-by: Fenglin Wu <fenglinw@codeaurora.org>
2017-06-22 12:41:58 +08:00
Ray Zhang
2178b8d80d drm/msm: add PLL_ENABLE property to support clock recovery
PLL_ENABLE property is used to enable or disable the PLL
update function. With this property PLL update function
only works when PLL_ENABLE is set, and all changes done
to hardware will be discarded once PLL_ENABLE is cleared.

CRs-Fixed: 2042852
Change-Id: Ia321918382b8622101cff566049284810833f63e
Signed-off-by: Ray Zhang <rayz@codeaurora.org>
2017-06-22 09:08:28 +08:00
Chris Lew
f6c2b18d1b soc: qcom: glink: Move tx_wakeup_worker to rx tasklet
Do tx wakeup worker functionality in rx worker tasklet instead
of scheduling the work to be done in worker context to improve
performance.

CRs-Fixed: 2050701
Change-Id: Iba620e7e264805ed02a35603da1fb6c985de7d43
Signed-off-by: Chris Lew <clew@codeaurora.org>
2017-06-21 16:33:01 -07:00
Andrew Chant
e99dd0785e input: synaptics_dsx: validate bounds of intr_reg_num
Validate the intr_reg_num value returned by touchscreen
to ensure no out of bounds access can occur.

Bug: 35472278
Change-Id: I22f5b67815fe7d448b5ed847e4e3d65af63bed84
Signed-off-by: Andrew Chant <achant@google.com>
Git-repo: https://android.googlesource.com/kernel/msm
Git-commit: 271baca849983ef309e82a4e5953027790f36154
Signed-off-by: Dennis Cagle <dcagle@codeaurora.org>
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2017-06-22 00:05:23 +05:30
Ashay Jaiswal
7a071fadb1 power: smb-lib: Add support to detect weak charger
A weak charger might trigger switcher_power_ok interrupt storm
which gets incorrectly detected as a boost_back condition and
input gets suspended. Add a logic to distinguish a weak charger
and the boost_back condition by first reducing the ICL current
to a lower value (500mA by default) on detecting a
switcher_power_ok storm. If the switcher_ok storm disappears
then its indeed a weak charger and if the storm continues its
possibly a boost_back condition.

Change-Id: I46b406e403aa16a502e6da149b180545848fc906
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
2017-06-21 19:22:08 +05:30
Anirudh Ghayal
f11fd649ff power: smb-lib: Rearrange BOOST_BACK voting logic
The BOOST_BACK USB-ICL voter needs to be removed in the
following conditions -

1. VBUS falling path during PD hard-reset
2. typeC removal
3. False boost-back detected

For (1) and (2) - remove the boost_back vote in the usbin_handler
and typec_removal path. For (3) add a worker which removes the
boost_back vote after the boost-back condition is detected. The
delay is sufficient to recover from both a valid and an incorrectly
detected boost-back condition.

CRs-Fixed: 2051908
Change-Id: I9d1d04f392bb6040b0565510ff7d1032bb036de2
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2017-06-21 18:36:11 +05:30
Rakesh Pillai
826a25286a ath10k: Add interface combinations for wcn3990
Interface combinations were not present for wnc3990.
Add interface combinations for wcn3990.

CRs-Fixed: 2063866
Change-Id: I20a4db54c87c91a154ca63125a06ff78958b12cd
Signed-off-by: Rakesh Pillai <pillair@codeaurora.org>
2017-06-21 04:34:57 -07:00
Naresh Malladi
260a1b12fb ARM: dts: msm: Update temperature threshold limits for EA for 8998/660/630
Current limits are causing frequent wakeups at lower temperature.
Update higher and lower limits such that msm-core energy-aware driver
will not get too many notifications to avoid unnecessary wakeups.

Change-Id: I608aad0616d2f4e98c9d06ac1ccead9b3444817a
Signed-off-by: Naresh Malladi <namall@codeaurora.org>
2017-06-21 14:54:35 +05:30
Terence Ho
e53f2adc3f msm: camera: validate num_streams in stream_cfg_cmd before using it
stream_cfg_cmd->num_streams is from userspace,
need to check it against MSM_ISP_STATS_MAX before using it.

CRs-Fixed: 2029867
Change-Id: I02a71b983947981806470454654d712bcc732077
Signed-off-by: Terence Ho <terenceh@codeaurora.org>
2017-06-21 17:12:27 +08:00
Rakesh Pillai
2f74c5032f ath10k: Increase peer delete response wait to 500msec
Peer creation in firmware fails if last peer deletion is still
in progress. Need to wait for peer delete response from firmware
after deleting peer from host driver.

Increase the peer delete response wait time to 500msec.

CRs-Fixed: 2063832
Change-Id: I1c1c2500ae7f8ff1448f6b726d30dbbe3334957c
Signed-off-by: Rakesh Pillai <pillair@codeaurora.org>
2017-06-21 01:39:28 -07:00