Commit graph

583344 commits

Author SHA1 Message Date
Linux Build Service Account
737d15972b Merge "firmware_class: Add null check in firmware_direct_write" 2017-02-15 06:11:26 -08:00
Linux Build Service Account
de97496f9b Merge "msm: ipa: use GFP_ATOMIC for DMA memory allocation during SSR" 2017-02-15 06:11:25 -08:00
Linux Build Service Account
326d8d9480 Merge "leds: qpnp-flash-v2: add delay between LMH mitigation and LED strobe" 2017-02-15 06:11:24 -08:00
Linux Build Service Account
afc7d9b398 Merge "soc: qcom: pil: Clear elf memory on validation failure" 2017-02-15 06:11:23 -08:00
Linux Build Service Account
6923ea0a44 Merge "defconfig: msm: enable ATH10k WCN3990 WLAN module for APQ8098" 2017-02-15 06:11:23 -08:00
Linux Build Service Account
0f23b0a7d0 Merge "msm: camera: sensor: Validate destination step position" 2017-02-15 06:11:22 -08:00
Linux Build Service Account
3e0909682d Merge "msm: cpp: Check for validity of processed frame in cpp timeout" 2017-02-15 06:11:21 -08:00
Linux Build Service Account
278c419b79 Merge "msm: camera: isp: Handle page fault in case of overflow" 2017-02-15 06:11:21 -08:00
Linux Build Service Account
bf9fbe2a0d Merge "drm/msm/sde: enable pixel extension and qseed3 along with VIG pipes" 2017-02-15 06:11:19 -08:00
Linux Build Service Account
b376e2fbe6 Merge "msm: vidc: BUG_ON before killing session on timeout" 2017-02-15 06:11:19 -08:00
Linux Build Service Account
22982137e3 Merge "msm: vidc: Check for sanity of size while mapping buffers" 2017-02-15 06:11:18 -08:00
Linux Build Service Account
584a2fcb3f Merge "msm: vidc: Fix crash due to invalid instance access" 2017-02-15 06:11:17 -08:00
Linux Build Service Account
b09d016fa4 Merge "msm: vidc: Fix issue in split mode for UBWC output" 2017-02-15 06:11:16 -08:00
Linux Build Service Account
9d77f1dc26 Merge "msm: vidc: Decide plane count whenever extradata is set" 2017-02-15 06:11:15 -08:00
Linux Build Service Account
6051226fef Merge "ARM: dts: msm: Add GPU properties for SDM630" 2017-02-15 06:11:14 -08:00
Linux Build Service Account
b9fe2c19b4 Merge "defconfig: msm: add fastmap config on sdm660" 2017-02-15 06:11:13 -08:00
Linux Build Service Account
7a779a545a Merge "ARM: dts: msm: Add sdhc2 for sdm630 QRD" 2017-02-15 06:11:11 -08:00
Linux Build Service Account
f328953528 Merge "ARM: dts: msm: enable LRA drive correction for haptics on pmi8998 and pm660" 2017-02-15 06:11:11 -08:00
Linux Build Service Account
6da12d6d62 Merge "ARM: dts: msm: Enable pil_modem for apq8998 mediabox" 2017-02-15 06:11:10 -08:00
Linux Build Service Account
b4f0ed3750 Merge "power: qpnp-fg-gen3: add support to configure batt_therm coefficients" 2017-02-15 06:11:09 -08:00
Linux Build Service Account
c0b489b27e Merge "icnss: Remove unused IPC logging mechanism" 2017-02-15 06:11:08 -08:00
Linux Build Service Account
0a39d9efce Merge "msm: ADSPRPC: Set the device node in the session context" 2017-02-15 06:11:07 -08:00
Linux Build Service Account
8244c0df9c Merge "defconfig: arm64: msm: enable CONFIG_FORCE_ALLOC_FROM_DMA_ZONE" 2017-02-15 06:11:06 -08:00
Linux Build Service Account
942e3aaf81 Merge "net: support __netdev_alloc_skb to always use GFP_DMA" 2017-02-15 06:11:06 -08:00
Linux Build Service Account
bebd369197 Merge "usb: pd: Update uevent parameters during hard reset" 2017-02-15 06:11:05 -08:00
Linux Build Service Account
4ddd471716 Merge "usb: pd: Make select_pdo_store() wait until request goes through" 2017-02-15 06:11:04 -08:00
Linux Build Service Account
d98999459a Merge "ARM: dts: msm: Fix dwc3 device node property name typo on msm8998" 2017-02-15 06:11:03 -08:00
Linux Build Service Account
cafff2d71f Merge "usb: dwc3: Fix LPM NYET Threshold value" 2017-02-15 06:11:02 -08:00
Linux Build Service Account
2c441278bd Merge "ath10k: Return failure if fw ready is not arrived" 2017-02-15 06:11:02 -08:00
Linux Build Service Account
d9717f8c9a Merge "ice: Sent proper storage type for ICE configuration during reset" 2017-02-15 06:11:01 -08:00
Hareesh Gundu
5967ecda8f msm: kgsl: Fix false timeout gpu faults
Sometimes ringbuffer timer is not getting updated due to
race with the preemption. This can cause  dispatcher to
detect false timeout gpu faults. Remove preempt state
check in adreno_dispatch_process_drawqueue(), which will
allow to update ringbuffer timeout value irrespective of
the preemption state.

If the preemption completes successfully, preemption logic
updates timer for new_rb. We don’t need to care if it is
not updated for prev_rb. If preemption in-progress timer
will be updated for cur_rb in adreno_dispatch_process_drawqueue().
In both cases we are taking care to update ringbuffer timer.
Hence we don’t need to check preemption state.

CRs-Fixed: 1095344
Change-Id: I0e0ec655e2262c4f499748ce35a8d710ed15b5e3
Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
2017-02-15 19:19:27 +05:30
Uma Mehta
3e64849848 ARM: dts: msm: Add max secure video sessions for sdm660
Limit max secure concurrent instances to 5 due to
system wide limitations like memory, performance etc.

CRs-Fixed: 2005913
Change-Id: I430183633833986d6e70f78c2294f7fc221aa48c
Signed-off-by: Uma Mehta <umamehta@codeaurora.org>
2017-02-15 04:12:15 -08:00
Udaya Bhaskara Reddy Mallavarapu
5f5763f36b defconfig: msm: new flag for mediabox specific demux changes
For Mediabox project demux requires raise video frame events
only for MPEG-2 B frames and H264 non idr frames instead of all
frames. These changes are required for clock recovery & AV sync
for mediabox project.

CR's-Fixed: 2005724
Change-Id: I0c87d98b382c37381b9810b6de23267933e51c20
Signed-off-by: Udaya Bhaskara Reddy Mallavarapu <udaym@codeaurora.org>
2017-02-15 03:45:34 -08:00
Abir Ghosh
e8f2ea8146 soc: qcom: fingerprint: keep QSEE handle in kernel space
Move the QSEE handle from user space to kernel space.
In addition, fix possible overflow, when checking that
the command and response buffers fit in the shared buffer.

CRs-Fixed: 1086530
Change-Id: I21b1866546a2825fe348a260c60e341bbe9600ea
Signed-off-by: Abir Ghosh <abirg@codeaurora.org>
2017-02-15 01:28:06 -08:00
Sahitya Tummala
ce56ee0236 fuse: fix use after free issue in fuse_dev_do_read()
There is a potential race between fuse_dev_do_write()
and request_wait_answer() contexts as shown below:

TASK 1:
__fuse_request_send():
  |--spin_lock(&fiq->waitq.lock);
  |--queue_request();
  |--spin_unlock(&fiq->waitq.lock);
  |--request_wait_answer():
       |--if (test_bit(FR_SENT, &req->flags))
       <gets pre-empted after it is validated true>  TASK 2:
       						     fuse_dev_do_write():
						       |--clears bit FR_SENT,
						       |--request_end():
						          |--sets bit FR_FINISHED
							  |--spin_lock(&fiq->waitq.lock);
							  |--list_del_init(&req->intr_entry);
							  |--spin_unlock(&fiq->waitq.lock);
							  |--fuse_put_request();
       |--queue_interrupt();
       <request gets queued to interrupts list>
            |--wake_up_locked(&fiq->waitq);
       |--wait_event_freezable();
       <as FR_FINISHED is set, it returns and then
       the caller frees this request>

Now, the next fuse_dev_do_read(), see interrupts list is not empty
and then calls fuse_read_interrupt() which tries to access the request
which is already free'd and gets the below crash:

[11432.401266] Unable to handle kernel paging request at virtual address
6b6b6b6b6b6b6b6b
...
[11432.456168] PC is at __list_del_entry+0x6c/0xc4
[11432.463573] LR is at fuse_dev_do_read+0x1ac/0x474
...
[11432.679999] __list_del_entry+0x6c/0xc4
[11432.687794] fuse_dev_do_read+0x1ac/0x474
[11432.693180] fuse_dev_read+0x6c/0x78
[11432.699082] __vfs_read+0xc0/0xe8
[11432.704459] vfs_read+0x90/0x108

As FR_FINISHED bit is set before deleting the intr_entry with input
queue lock in request completion path, do the testing of this flag and
queueing atomically with the same lock in queue_interrupt().

Change-Id: I84232771cf09a809806568144441fd356b87d46c
Signed-off-by: Sahitya Tummala <stummala@codeaurora.org>
2017-02-15 14:30:35 +05:30
Vikash Garodia
f29f324d06 ARM: dts: msm: Update bus bandwidth for msm8998
During certain usecases like UHD 10 bit playback,
the bus bandwidth required for Venus is more than
the bandwidth currently voted by video driver.
Though the bandwidth is calculated properly, it
gets clamped to an upper range.
Fix the upper range to accommodate bandwidth for
all Venus usecases.

Change-Id: Ic9dd3d0cb0bde89a7f6e42b3197c22fbb5192fab
CRs-Fixed: 2004597
Signed-off-by: Vikash Garodia <vgarodia@codeaurora.org>
2017-02-15 14:25:49 +05:30
Tirupathi Reddy
cf855b2c65 ARM: dts: msm: Config sdm660 CPR controllers to use default step_quot
There is a chance for a CPR controller to use the run-time calibrated
step_quot of lower modes for higher modes. This can sometimes lead
to closed-loop voltage getting stuck at open-loop voltage. To avoid
this, configure APC0/1 and GFX CPR controllers in sdm660 to first use
the default step_quot and then later switch to the run-time calibrated
step_quot.

CRs-Fixed: 2003482
Change-Id: Ic355a3a533ab65d9e2b28c67b7fca7df1dd49d48
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
2017-02-15 14:05:17 +05:30
Ankit Sharma
98d408f654 leds: qpnp-flash: Fix possible race condition in debugfs
There is a possible race condition when debugfs files are concurrently
accessed by multiple threads. Fix this.

CRs-Fixed: 1109420, 1109326
Change-Id: I19e9107079ac8d039b12a37ae612727f824552d4
Signed-off-by: Ankit Sharma <ansharma@codeaurora.org>
2017-02-15 13:58:42 +05:30
Hamad Kadmany
c6f596e758 ARM: dts: msm: Enable wil6210 device for 8998 qrd-vr
wil6210 is required for 11ad card that is present
in qrd-qvr. Hence update the device node status
to reflect this.

Change-Id: I43eb45fcb00449fd7b714c6407d9aa8cc9c518a9
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
2017-02-15 09:26:26 +02:00
Meng Wang
3b3648733e ARM: dts: msm: correct headset detection for msm8998 HDK
On msm8998 HDK device, NC(normal close) jack pin is used for
headset left detection. Set to 0 to correct it.

CRs-Fixed: 2007005
Change-Id: I9244b913ebc1b05428408193113a80be4477cddd
Signed-off-by: Meng Wang <mwang@codeaurora.org>
2017-02-15 14:49:49 +08:00
Ankit Sharma
de7eaac512 power: qpnp-fg: Fix possible race condition in FG debugfs
There is a possible race condition when FG debugfs files are concurrently
accessed by multiple threads. Fix this.

CRs-Fixed: 1105481
Change-Id: I154e7f3cdd8d51cf67ef1dfd9d78f423f183cb64
Signed-off-by: Ankit Sharma <ansharma@codeaurora.org>
2017-02-15 11:36:56 +05:30
Santosh Mardi
6862793081 ARM: dts: msm: add support of devfreq and cpufreq on SDM630
Add support for devfreq and cpufreq nodes on SDM630 target
which are needed to scale cpu and DDR frequency.

Change-Id: Ic1051e712a3a6578eb6448538e15be9acb85dc89
Signed-off-by: Santosh Mardi <gsantosh@codeaurora.org>
2017-02-15 11:22:32 +05:30
Pavankumar Kondeti
ab05391aa6 sched: don't assume higher capacity means higher power in tick migration
When an upmigrate ineligible task running on the maximum capacity CPU,
we check if it can be migrated to a lower capacity CPU in tick path.
Add a power cost based check there to prevent the task migration
from a power efficient CPU.

Change-Id: I291c62d7dbf169d5123faba5f5246ad44a7a40dd
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
2017-02-15 08:48:17 +05:30
Pavankumar Kondeti
b1c40e1868 sched: optimize cpumask operations during task placement
Compute the CPU search mask once by taking task affinity,
cpu_active_mask and cpu_isolated_mask into account and cache
it in cpu_selection_env. This prevents doing the same cpumask
operations multiple times.

Change-Id: I78f35c59e6ee9437b3a522ac7ad856c0251f81ec
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
2017-02-15 08:21:29 +05:30
Udaya Bhaskara Reddy Mallavarapu
999ccca3bc ARM: dts: msm: Enable LPASS timestamps in TSPP driver for APQ8998
Set the TSPP configuration to enable LPASS time stamps in TSIF HW.
The TSIF adds LPASS timestamps to Transport Stream packets instead
of TSIF internal clock timestamps. This change is required for clock
recovery & AV sync for mediabox project based on LE platform.

CR's-Fixed: 2005724
Change-Id: I43f0e8c2593b12e65e603f23a6c1acb663ef439e
Signed-off-by: Udaya Bhaskara Reddy Mallavarapu <udaym@codeaurora.org>
Signed-off-by: Arun Menon <avmenon@codeaurora.org>
2017-02-14 16:44:17 -08:00
Udaya Bhaskara Reddy Mallavarapu
79db7c3476 media: platform: msm: Add demux support for mediabox
Add audio stream buffer interface to write the Audio demux data
to audio decoder buffers. Add support in TSIF driver to append
LPASS subsystem time stamps to Transport Stream packets in TSIF HW.
This is required for AV sync & clock recovery handling
for mediabox project based on LE platform.

CR's-Fixed: 2005724
Change-Id: I39d2544e958c31ff1abdd2ad77412a87bc2a189b
Signed-off-by: Udaya Bhaskara Reddy Mallavarapu <udaym@codeaurora.org>
Signed-off-by: Arun Menon <avmenon@codeaurora.org>
2017-02-14 16:44:11 -08:00
Harry Yang
367d29c80e qcom: smb-lib: expose fcc value change in batt psy
Add CONSTANT_CHARGE_CURRENT_MAX, to set and get fcc.

CRs-Fixed: 2004173
Change-Id: I3dfed0ca7b2a477e1c106955fa112ba5206e3fa4
Signed-off-by: Harry Yang <harryy@codeaurora.org>
2017-02-14 16:24:11 -08:00
Vidyakumar Athota
2bbbac2c16 ASoC: qdsp6v2: send afe calibration in acdb id mismatch cases
AFE calibration data block is sent to DSP only if ACDB ID matches with
ACDB ID that is updated from routing driver. For hostless FE DAIs, ACDB
IDs are not updated in routing driver, which results in failure while
sending AFE calibration block to DSP. Fix this issue by sending default
AFE calibration data in acdb ID mismatch cases.

Change-Id: Icaa399f9251e69ce456e4d560101cb842efcd230
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2017-02-14 16:02:41 -08:00
Zhen Kong
3f3f20e347 qseecom: add new SCM ID to register listener when smcinvoke is supported
Add new SCM ID to register listener when smcinvoke is supported. Then
TZ, depending on how the listener has been registered, will either
behave in the old way (i.e. rsp[1]=QSEE_LISTENER_ID), or the new way
(rsp[1]=app_id) when smcinvoke is supported. And qseecom will first
to register listener with new SCM ID, if failed, then fallback to
use old ID.

Change-Id: Ia27055db6ec8f26705669ee913919b29461121ca
Signed-off-by: Zhen Kong <zkong@codeaurora.org>
2017-02-14 15:32:19 -08:00
Prashanth Bhatta
0270440dc2 defconfig: msmcortex: Disable CONFIG_ICNSS_DEBUG
Disable CONFIG_ICNSS_DEBUG now that solution is stable.

CRs-fixed: 2006760
Change-Id: Ic2cd7a02f3486ab81739e8b2fe2259087e3539d6
Signed-off-by: Prashanth Bhatta <bhattap@codeaurora.org>
2017-02-14 13:35:20 -08:00