Commit graph

592699 commits

Author SHA1 Message Date
Rahul Sharma
86bad2f4c7 msm: sensor: Fix to validate the settings size in flash
The size of the settings, copied from userspace, is directly checked
in msm_cci_data_queue with CCI_I2C_MAX_WRITE. This might cause
out of bound access in function msm_cci_data_queue as the max size is
MAX_I2C_REG_SET. Hence adding check on the size in flash driver itself.

Change-Id: Iaf8b62815282386af58d1b111876cc80411385a0
CR fixed: 2062894
Signed-off-by: Rahul Sharma <sharah@codeaurora.org>
Signed-off-by: Andy Sun <bins@codeaurora.org>
2017-07-25 14:49:16 +08:00
Prakash Kamliya
e3e2458d64 msm: kgsl: Fix leak when preemption init fails
For any reason if preemption initialization fails,
we do not free allocated memory for preemption.
Free allocated memory when it fails.

Change-Id: Ie931766f1ec1de7f3a0522054fc1fcb7b9426be6
Signed-off-by: Prakash Kamliya <pkamliya@codeaurora.org>
2017-07-24 23:30:30 -07:00
Guchun Chen
62b1d246c8 msm: sde: release LK's pool when LK exits
LK's pool is reserved for running on its code stack. So once
LK exits, the memory region it stays on should be released
and reused by system.

Change-Id: Iec5af69573eb633de48c931a052bd596f5ed3bda
Signed-off-by: Guchun Chen <guchunc@codeaurora.org>
2017-07-25 13:52:02 +08:00
Guchun Chen
1faafb0d7c ARM: dts: msm: add memory region info for early splash feature
on msm8996

These two memory regions are for the memory nodes which early
animation/static display will visit. Both are needed to be
processed in kernel handoff sequence.

Change-Id: I36a9b3dcc6b905af4bb8383cfbd1555e8e9bd417
Signed-off-by: Guchun Chen <guchunc@codeaurora.org>
2017-07-25 13:47:16 +08:00
Guchun Chen
2170450d8b msm: sde: add early display handoff feature
When enabling animation/static splash in LK, drm/kms driver needs
to involve handoff code to support smooth transition. In display
driver's probe, it will do following items:
1. Check the status in LK for early splash.
2. Add data bus bandwidth voting in function sde_splash_init.
2. Handle SMMU mapping issue to avoid SMMU fault problem.
3. Bypass hardware reset to avoid glitch.

And after user's space is up, when first commit's vblank comes,
it will call functions to:
1. Tell LK to stop static/animation display and to exit.
2. Set early_domain_map_attr to 1 to enable stage 1 translation in
   iommu driver.
3. Check the property of commit.If it's for HDMI, release HDMI
resource. If for DSI, release DSI resource.
4. Recycle the memory to be available to system.
5. Withdraw the bus bandwidth voting.

Change-Id: If425f044e2c40301eed57375a33a26ec1970abd5
Signed-off-by: Guchun Chen <guchunc@codeaurora.org>
2017-07-25 13:39:12 +08:00
Trishansh Bhardwaj
7df26d6be3 msm: camera: Prevent kernel info leak.
Print offset instead of address.

Change-Id: I34c20397398d12b2b2e25fecd3b87ebad6906b62
Signed-off-by: Trishansh Bhardwaj <tbhardwa@codeaurora.org>
2017-07-24 22:32:03 -07:00
Jordan Crouse
3beb8eb467 drm/msm: Turn off hardware clock gating before reading A5XX registers
On A5XX GPU hardware clock gating needs to be turned off before
reading certain GPU registers via AHB. Turn off HWCG before calling
adreno_show() to safely dump all the registers without a system hang.

Change-Id: Ic0dedbad550ab5d414cea7837672e586a7acd370
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-07-24 13:01:14 -06:00
Jordan Crouse
a0c5da88c9 drm/msm: Remember the state of A5XX hardware clock gating
Remember if the A5XX hardware clock gating is currently
enabled or disabled to avoid inadvertently enabling it.

Change-Id: Ic0dedbada3734a257ac966c041d06695f3521ad4
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-07-24 13:01:13 -06:00
Jordan Crouse
74910dd6a2 drm/msm: Keep the power on throughout the entire ->show() operation
Enabling and disabling the power at various points in the ->show()
call flow may have detrimental effects. For all targets make sure
power is on before reading any register and leave it on until we are
all done.

Change-Id: Ic0dedbad4d37a11634174105fc3ee6fe3713a143
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-07-24 13:01:13 -06:00
Jordan Crouse
8eac9a50f0 drm/msm: Check value of active_cnt in a5xx power functions
The generic msm_gpu_pm_resume/msm_gpu_pm_suspend functions have
built-in reference counting but the a5xx specific functions
are doing unconditional a5xx specific setup / teardown that
would behave very badly if they were not accompanied by an
actual power up / power down.

Change-Id: Ic0dedbad549c4ea9a5c68b0ca43eb98e0449d54b
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-07-24 13:01:12 -06:00
Prasad Sodagudi
f866a8c956 ARM: dts: msm: Add pinctrl bindings for msm8998
Add pinctrl binding for msm8998 SoC.

Change-Id: I22642c5dc38fcc289912cb327c1d0f95a8cf61e8
Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org>
2017-07-24 11:47:07 -07:00
Yue Ma
10afc332b5 cnss2: Do not deinit MHI right after powerup failure
Immediately deinit MHI after powerup failure will clear all the
MHI context so it won't be able to enter RDDM state to collect
firmware RAM dump. Leave the cleanup to SSR shutdown routine.

Change-Id: Ibbbe3ffe3c471f69dd4fc89d7cfaf57f1f899a92
CRs-fixed: 2059087
Signed-off-by: Yue Ma <yuem@codeaurora.org>
2017-07-24 09:45:36 -07:00
Linux Build Service Account
26bb59b7f4 Merge "power: smb-lib: Move to SW based step-charging" 2017-07-24 07:28:57 -07:00
Linux Build Service Account
95d361d6da Merge "ath10k: Add peer delete resp event processing" 2017-07-24 07:28:56 -07:00
Sunil Khatri
5b1f525950 msm: kgsl: Fix the syncpoint_fence trace
We should have a corresponding syncpoint_fence trace
for every syncpoint_fence_expire trace. In case the
fence is already signaled then make sure to have
syncpoint_fence trace before syncpoint_fence_expire
trace.

Also take an extra refcount for fence which will make
sure that the fence pointer is valid in the trace even
if the fence is signaled.

Change-Id: I2fd8f91c800f89a4a64813a6908eaa0445cf548b
Signed-off-by: Sunil Khatri <sunilkh@codeaurora.org>
2017-07-24 15:36:48 +05:30
Vijay kumar Tumati
54c5eaaaf9 msm: camera: Add support for TOF sensor on msm8998 QVR
Necessary documentation and driver changes for few
custom GPIOs to support depth sensor.

Change-Id: Id545a25b31e29a3f017acc1a65ad00250da72ca6
Signed-off-by: Vijay kumar Tumati <vtumati@codeaurora.org>
2017-07-24 02:42:22 -07:00
Sarada Prasanna Garnayak
d8bfab393a wcnss: fix the potential buffer flow issue in firmware setup
Add the check against negative or invalid firmware size passed
by the userspace thread in firmware setup sysfs write operation.
Update the datatype of the variable which holds the firmware size
passed by userspace thread during firmware setup and WLAN calibration
data update process.

CRs-Fixed: 2072966
Change-Id: I8c84ad0d1b0a5f44a39c9c5b228734b0f693e8dd
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
2017-07-24 00:04:54 -07:00
Jayant Shekhar
773b7b1613 msm: mdss: Fix race condition during mdp dump
In mdp debugfs, pipe, mixer, buffers and ctl information
is dumped. While dumping pipe buffer information using
pipe's buffer list, acquire list lock mutex. This is
done to prevent crash if at the same time buffer is freed
in commit thread.

Change-Id: Ibd26cc1484fb08ae7d0852f405100f6bbfa707de
Signed-off-by: Jayant Shekhar <jshekhar@codeaurora.org>
2017-07-24 11:14:43 +05:30
Arun KS
51a7468ba0 esoc: Fix irq unbalance wake disable warning
Power management irq wakeup mode is by default disabled.
Calling irq_set_irq_wake() on a disabled irq causes warning.
Remove irq_set_irq_wake() function from mdm_enable/disable_irqs
functions and set it once in probe.

Change-Id: Ib7f49ae101e6dc04790649d408c1722df8da8bd2
Signed-off-by: Arun KS <arunks@codeaurora.org>
2017-07-23 21:39:04 -07:00
Linux Build Service Account
cffa5f76da Merge "msm: isp: fix the invalid type conversion" 2017-07-23 17:32:52 -07:00
Linux Build Service Account
72d01fe5e6 Merge "ARM: dts: msm: Add support for TOF sensor on msm8998 QVR" 2017-07-23 17:32:51 -07:00
Linux Build Service Account
9023a992a8 Merge "diag: Synchronize msg mask read and write on a peripheral" 2017-07-23 10:48:40 -07:00
Linux Build Service Account
1698b3b828 Merge "diag: Process glink buffers in workqueue context" 2017-07-23 10:48:39 -07:00
Anirudh Ghayal
cb900325e7 power: smb-lib: Move to SW based step-charging
Remove the HW SOC-based step-charging logic and enable
SW based step-charging.

The SW based step-charging uses the periodic WD bark
IRQ to notify the battery properties. The bark-time
can be changes using the property 'qcom,wd-bark-time-secs'

'qcom,step-charging-enable' enables the feature.

Change-Id: Ib162f3eb3f98a4e7f144bedc8c8cea40fbf6137a
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2017-07-23 23:02:48 +05:30
Lior David
f85109b59d wil6210: send uevent when creating sysfs files
Send a KOBJ_CHANGE uevent when creating the wil6210 sysfs directory.
This is mainly needed so selinux policy rules will be applied when
the wil6210 module is dynamically loaded.

Change-Id: I4220c551b8792d419db7a380b16f3c87204be22a
Signed-off-by: Lior David <liord@codeaurora.org>
2017-07-23 19:34:23 +03:00
Linux Build Service Account
859d453ac5 Merge "power: qcom-step-chg: Add a new file for step-charging" 2017-07-22 20:09:41 -07:00
Siddartha Shaik
e29ec858f7 ASoC: msm: mixer control queue handling in sink stream
Move mixer control queue handling to be part of
playback stream in DSP transcode loopback driver.

CRs-Fixed: 2076617
Change-Id: Ia8067237f80d509f969cf454f5afa08aaa6b0e52
Signed-off-by: Siddartha Shaik <sshaik@codeaurora.org>
2017-07-22 11:39:34 -07:00
Linux Build Service Account
2617410496 Merge "ANDROID: android-verity: mark dev as rw for linear target" 2017-07-22 04:08:04 -07:00
Linux Build Service Account
e85a3cbb06 Merge "crypto: ice: Remove redundant checks" 2017-07-22 04:08:02 -07:00
Linux Build Service Account
2b487d2603 Merge "ath10k: wait for peer delete resp after every peer delete" 2017-07-21 20:15:27 -07:00
Linux Build Service Account
61f5287f13 Merge "ath10k: skip vdev down command before vdev restart for wcn3990" 2017-07-21 20:15:26 -07:00
Linux Build Service Account
2c1e981c40 Merge "msm: thermal: fix return value check for scm_is_secure_device() API" 2017-07-21 20:15:25 -07:00
Linux Build Service Account
b7cd152c17 Merge "mmc: sdhci: Enable CDR for cmdq mode" 2017-07-21 20:15:24 -07:00
Linux Build Service Account
7d24b9b417 Merge "ARM: dts: msm: Add remote debugger device configuration for cdsp" 2017-07-21 20:15:23 -07:00
Linux Build Service Account
afcd879a6c Merge "diag: Add NULL pointer checks" 2017-07-21 20:15:22 -07:00
Linux Build Service Account
1ee0540f23 Merge "coresight-remote-etm: Removes lock in remote_etm_rcv_msg()" 2017-07-21 20:15:21 -07:00
Linux Build Service Account
e6ef63a8a8 Merge "msm: ais: sensor: actuator: add conditional check for ioctl" 2017-07-21 20:15:20 -07:00
Linux Build Service Account
150e8fab68 Merge "msm: ADSPRPC: Add exec permission for hyp_assign_phys" 2017-07-21 20:15:19 -07:00
Yuanyuan Liu
2e16671480 icnss: Consolidate logging message
Currently the code makes liberal use of macros that print a log message
(with pr_err or pr_debug) and then passes the same string on to the
IPC logging mechanism. The problem is that it doesn't actually end up
being the same string in the binary. Using pr_err or one of its friends
appends the KERN_* code to the front of the string with the pre-processor
and the IPC logger just uses the passed in string. Every string used by
the macros ends up appearing twice in the binary, once with KERN_*
prepended and the other not.

This change fix this duplication issue by appending KERN_* to the front
of the IPC logger.

Change-Id: Ibfdf9edf6e243d13cacf1a45838a88e287a684be
Signed-off-by: Yuanyuan Liu <yuanliu@codeaurora.org>
2017-07-21 15:06:46 -07:00
Linux Build Service Account
44f9f08a04 Merge "ARM: dts: msm: Update bootargs with LPM disabled for msm8996pro" 2017-07-21 11:08:30 -07:00
Linux Build Service Account
f1f963ba1f Merge "ARM: dts: msm: Add support for MSM8996pro UFS based board" 2017-07-21 11:08:29 -07:00
Linux Build Service Account
86fe8aca46 Merge "power: smb-lib: Restart charging from soft JEITA" 2017-07-21 11:08:28 -07:00
Linux Build Service Account
6d6eae7214 Merge "net/packet: fix overflow in check for tp_reserve" 2017-07-21 11:08:26 -07:00
Linux Build Service Account
5b779ed898 Merge "msm: camera: Proper use of snprintf to avoid information leak" 2017-07-21 11:08:25 -07:00
Linux Build Service Account
be95399835 Merge "diag: mhi: Fix error handling for DCI channel failure" 2017-07-21 11:08:23 -07:00
Linux Build Service Account
e3ec219ea1 Merge "cnss2: Deinit MHI before device power on during SSR" 2017-07-21 11:08:22 -07:00
Linux Build Service Account
2221afb10d Merge "USB: f_accessory: Check for length before updating accessory string" 2017-07-21 11:08:21 -07:00
Linux Build Service Account
5d3a6dd49d Merge "drm/msm: add support for HDR playback control sequence" 2017-07-21 11:08:21 -07:00
Clarence Ip
7477f5db6e drm/msm/sde: disable vblank ref power on crtc disable
Update vblank reference counts via the exposed sde_crtc_vblank
function, rather than attempting to zero it on the side during
CRTC disable operations. This allows the power voting to be
updated correctly based on the vblank reference count value.

CRs-Fixed: 2037677
Change-Id: I7026a1b239503a2b1d97ad7bb61fbc0a4a38d7ea
Signed-off-by: Clarence Ip <cip@codeaurora.org>
2017-07-21 11:26:54 -04:00
Clarence Ip
e67107812d drm/msm/sde: output black frame during resume operation
This patch provides a module parameter to control whether each
plane outputs the previously configured content or a black frame
during the resume operation. The default is set to output a
black frame.

CRs-Fixed: 2019307
Change-Id: I48c1a8edfa1e85252a070bda51228ef67dea041c
Signed-off-by: Clarence Ip <cip@codeaurora.org>
2017-07-21 11:26:47 -04:00