Commit graph

591569 commits

Author SHA1 Message Date
Fenglin Wu
c8d3578f8b pwm: pwm-qpnp: Ignore changing period setting if it's not requested
It's not necessary to reprogram PWM period setting if only
changing PWM duty cycle.

Change-Id: I366e17a5e2f18c09ab0850d00ec08a35e0f1cb9f
Signed-off-by: Fenglin Wu <fenglinw@codeaurora.org>
2017-07-07 15:59:38 +08:00
Linux Build Service Account
a25d728775 Merge "ARM: dts: msm: Add l2pc-cpu-mask to avoid L2PC on masked CPUs for msm8998" 2017-07-03 07:58:21 -07:00
Linux Build Service Account
bb52d80acc Merge "mmc: core: Remove unused variable" 2017-07-03 07:58:03 -07:00
Linux Build Service Account
2357b8b580 Merge "power: qcom: smb-lib: handle dynamic Rp change" 2017-07-03 07:58:02 -07:00
Linux Build Service Account
e3b04f4163 Merge "ARM: dts: msm: Add remote debugger device configuration for sdm660" 2017-07-03 07:58:01 -07:00
Linux Build Service Account
fe57f5f904 Merge "osq_lock: fix osq_lock queue corruption" 2017-07-03 07:58:00 -07:00
Linux Build Service Account
1b28f2e8fb Merge "msm: sde: Cache capture fence descriptor" 2017-07-03 07:57:59 -07:00
Linux Build Service Account
31b7a46caa Merge "msm: mdss: unmap buffers before starting Secure Display session" 2017-07-03 07:57:59 -07:00
Linux Build Service Account
99033c40bb Merge "msm: sde: fix unaligned access problem" 2017-07-03 07:57:58 -07:00
Linux Build Service Account
81d10d5081 Merge "fbdev: msm: Add check for ioctl calls" 2017-07-03 07:57:57 -07:00
Linux Build Service Account
74b5a0f867 Merge "Merge branch 'android-4.4@77ddb50' (v4.4.74) into 'msm-4.4'" 2017-07-03 07:57:56 -07:00
Linux Build Service Account
5fde2fc9b6 Merge "ARM: dts: msm: Disable IPA in APQ 8098" 2017-07-03 07:57:55 -07:00
Linux Build Service Account
30ae1652c5 Merge "ipv4: Drop packets if checksum is invalidated" 2017-07-03 07:57:55 -07:00
Linux Build Service Account
6944c59d4b Merge "usb: bam: Remove inactivity_timer sysfs attribute" 2017-07-03 07:57:54 -07:00
Linux Build Service Account
56b42b0237 Merge "msm: actuator: Add protection condition for move focus" 2017-07-03 07:57:53 -07:00
Linux Build Service Account
1eb22ad1f5 Merge "USB: f_audio_source: Remove pm_qos request under non atomic context" 2017-07-03 07:57:52 -07:00
Linux Build Service Account
2d1616b97e Merge "msm: camera: isp: Avoid reading stale ping pong status" 2017-07-03 07:57:52 -07:00
Linux Build Service Account
09bf411c31 Merge "osq_lock: avoid live-lock issue for RT task" 2017-07-03 07:57:51 -07:00
Linux Build Service Account
e82415666d Merge "cpu-hotplug: Keep atleast 1 online and un-isolated CPU" 2017-07-03 07:57:50 -07:00
Linux Build Service Account
37541eb4b8 Merge "spi: spi_qsd: serve set_cs call only for valid device status" 2017-07-03 07:57:49 -07:00
Linux Build Service Account
ae189fd38c Merge "ath10k: Populate ACS survey results" 2017-07-03 07:57:48 -07:00
Linux Build Service Account
d219ff30f8 Merge "cgroup: Fix potential race between cgroup_exit and migrate path" 2017-07-03 07:57:48 -07:00
Gaurav Sonwani
f4800c9668 ARM: dts: msm: Add l2pc-cpu-mask to avoid L2PC on masked CPUs for msm8998
This is required to add a PM QOS request to disallow L2PC on masked CPUS.
It improves queue to submit time for first set of GPU commands
which results in GPU wake up.

Change-Id: If7e0925ec76065158188671f1d11a0de5e9900aa
Signed-off-by: Gaurav Sonwani <gsonwani@codeaurora.org>
2017-07-03 02:26:39 -07:00
Vijay Viswanath
c77576994e mmc: core: Remove unused variable
Removed a local variable in mmc_start_req() which was used to store the
error encountered while starting a new data request. If an error is
encountered while starting a new request, the error
information is stored in the mrq. The error information stored in the
mrq is during error handling. So removing the unused variable.

Change-Id: Ifeedc91433230d5156d286bd332a85fb221188ac
Signed-off-by: Vijay Viswanath <vviswana@codeaurora.org>
2017-07-03 02:10:42 -07:00
Prateek Sood
ba6bd90a30 osq_lock: fix osq_lock queue corruption
Fix ordering of link creation between node->prev and prev->next in
osq_lock(). A case in which the status of optimistic spin queue is
CPU6->CPU2 in which CPU6 has acquired the lock. At this point if CPU0
comes in to acquire osq_lock, it will update the tail count. After tail
count update if CPU2 starts to unqueue itself from optimistic spin queue,
it will find updated tail count with CPU0 and update CPU2 node->next to
NULL in osq_wait_next(). If reordering of following stores happen then
prev->next where prev being CPU2 would be updated to point to CPU0 node:
	node->prev = prev;
	WRITE_ONCE(prev->next, node);

At this point if next instruction
	WRITE_ONCE(next->prev, prev);

in CPU2 path is committed before the update of CPU0 node->prev = prev then
CPU0 node->prev will point to CPU6 node. At this point if CPU0 path's
node->prev = prev is committed resulting in change of CPU0 prev back to
CPU2 node. CPU2 node->next is NULL currently, so if CPU0 gets into unqueue
path of osq_lock it will keep spinning in infinite loop as condition
prev->next == node will never be true.

Change-Id: I48d847096daf3c228de90ae1cd2a6415b7bde65a
Signed-off-by: Prateek Sood <prsood@codeaurora.org>
2017-07-02 21:22:04 -07:00
Linux Build Service Account
bc399a65c4 Merge "msm: kgsl: Limit the frequency of logging on memory allocation failure" 2017-07-02 16:11:43 -07:00
Linux Build Service Account
b0bcf92508 Merge "msm: kgsl: Directly return page size of the supported pool" 2017-07-02 16:11:40 -07:00
Ashay Jaiswal
57f064ca9b power: qcom: smb-lib: handle dynamic Rp change
The legacy detection workaround change restricts DCP to 1.5A draw,
regardless of legacy/non-legacy type. This was to prevent a legacy
(non-compliant) cable, incorrectly detected as non-legacy cable from
drawing more than 1.5A.

The issue with legacy bit is that hardware could end up reporting
non-legacy for a legacy cable (not the other way round). We want to
ensure that for non-compliant legacy cable SDP/CDP current limits
are honoured and that for a Rp = 10k legacy cable VBUS shouldn't go
higher than 5V.

This cap of 1.5A on DCP is not necessary. Moreover AICL will limit the
current if needed.

To realize this force the Rp based current whenever DCP or float
is seen via the LEGACY_UNKNOWN_VOTER. LEGACY_UNKNOWN_VOTER is not
removed unless a confirmed hvdcp or pd is seen.

Change-Id: I89505e9db4f045aaf71ab0ee534de783ea4d2df3
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2017-07-01 06:16:32 +05:30
Deepak Kumar
d9eb3ce9a8 msm: kgsl: Limit the frequency of logging on memory allocation failure
Excessive logging due to several successive memory allocation failure
may cause a watchdog bite. Hence, this change adds ratelimit to logging
on memory allocation failure.

Change-Id: I8e5d78918a32c48ef7fa587f3dc63cbd1f065d5f
Signed-off-by: Deepak Kumar <dkumar@codeaurora.org>
2017-06-30 20:39:29 +05:30
Prateek Sood
6933043199 osq_lock: avoid live-lock issue for RT task
Live Lock  due to task spinning while unqueue of CPU osq_node
from optimistic_spin_queue. Task T1 had decremented mutex count to
acquire the lock on CPU0. Before setting owner it got preempted. On
CPU1 task T2 acquired osq_lock and started spinning on owner of mutex
with preemption disabled. CPU1 runq has one task, so need_resched will
not be set. On CPU0 task T3 tried to acquire osq_lock to spin on the
same mutex. At this time following scenario causes soft lockup:

After preemption of task T1, RT task T3 tried to acquire the same
mutex. It will start spinning on the osq_lock until the lock is available
or need_resched is set. For RT task, need_resched will not be set. Task T3
will not be able to bail out of the infinite loop.

Change-Id: Ifd7506047119a22e14b15459ac6b04b410ba1c84
Signed-off-by: Prateek Sood <prsood@codeaurora.org>
2017-06-30 02:06:25 -07:00
Tejaswi Tanikella
41ffaeef9a ipv4: Drop packets if checksum is invalidated
Conntrack, if enabled, verifies complete checksum on all tcp
packets. If a packet is corrupted, it sets ip_summed field
to CHECKSUM_COMPLETE and checksum valid field to false.
With these changes such packet will be dropped.

Packets that are corrupted can go into userspace even when
the checksum is wrong. The io_vec library pushes the data into
pipe before checking the checksum. If the checksum is wrong,
the copied data is not reverted. Users observe corrupted data
in the application memory due to such corrupted packets.
This fix is to plug one such hole.
This change might be redundant on kernels after v4.9.

Change-Id: Iffface598d0fa2b25fb9c20c7aa6443aab9d8aea
Signed-off-by: Tejaswi Tanikella <tejaswit@codeaurora.org>
2017-06-30 13:28:14 +05:30
Pengfei Liu
ca0c16ad01 msm: actuator: Add protection condition for move focus
Neighbour index of step table possibly have same position,
so i2c operation reported invalid size parameters.
we add protection condition to return success value.

Change-Id: I7dab8f44a99c7c3c7d6996c8decb8bcd09c246c9
Signed-off-by: penliu <pengfeiliu@codeaurora.org>
2017-06-30 00:43:59 -07:00
Arumuga Durai A
0a28ea9cf0 usb: bam: Remove inactivity_timer sysfs attribute
Sysfs attribute "inactivity_timer" not being used anymore so remove that
entry from sysfs.

CRs-Fixed: 2048725
Change-Id: I30d2d4a3cb9899b7975a6395eab90337fc006488
Signed-off-by: Arumuga Durai A <cadurai@codeaurora.org>
2017-06-30 12:31:01 +05:30
Linux Build Service Account
c1a5075d60 Merge "ARM: dts: msm: Add non-removable ufs property for SDM630" 2017-06-29 11:34:49 -07:00
Linux Build Service Account
e06e098ca3 Merge "msm: mdss: Allow post-processing clean-up for primary display" 2017-06-29 11:34:48 -07:00
Linux Build Service Account
b1db0d66cf Merge "msm: mdss: Correct PP register programming deferring" 2017-06-29 11:34:47 -07:00
Linux Build Service Account
40f83efeab Merge "scsi: ufs: Unblock UFS while ICE HW configuration" 2017-06-29 11:34:46 -07:00
Lokesh Kumar Aakulu
40cfe338ba msm: camera: isp: Avoid reading stale ping pong status
When write masters are reloaded pingpong status regi-
-ster will not be reset. Instead, it would be holding
a stale data, until new axi_done irq is interrupted.
So, place a check to validate the pingpong register
value based on the reloaded status of write masters.

Change-Id: Id14b886154f8a8ef8d5c05338023d8172d6925d0
Signed-off-by: Lokesh Kumar Aakulu <lkumar@codeaurora.org>
2017-06-29 19:27:27 +05:30
Harsh Sahu
b32ded99df msm: sde: fix unaligned access problem
debug offset comes from the user and can hold any value which can
cause unaligned access. This change fixes the unaligned access
problem on debug offset by properly aligning it.

Change-Id: Ie4de9a12433f6ffd568c6c86928b71a5537b0dff
Signed-off-by: Harsh Sahu <hsahu@codeaurora.org>
2017-06-29 05:10:47 -07:00
Pavankumar Kondeti
76aa496f89 cpu-hotplug: Keep atleast 1 online and un-isolated CPU
The PM_QOS_CPU_DMA_LATENCY vote attached to an IRQ is discarded,
if it is affined to an isolated CPU. So we need atleast 1 CPU
in online and un-isolate state. The scheduler rejects isolating
a CPU if it is the only online and un-isolated CPU in the system.
Add the same check for CPU hotplug.

Change-Id: I5bdfe6e3bb0352ed3ae5a2de90097b73d248f3fc
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
2017-06-29 16:27:33 +05:30
Linux Build Service Account
ed7868840b Merge "msm: camera: Use mutex lock to avoid race condition" 2017-06-29 03:32:33 -07:00
Linux Build Service Account
586584b2b2 Merge "soc: qcom: glink: Move get reference to valid location" 2017-06-29 03:32:32 -07:00
Linux Build Service Account
7ce539a628 Merge "soc: qcom: glink: Remove magic number logic" 2017-06-29 03:32:32 -07:00
Mohammed Javid
aa8d03f7bc ARM: dts: msm: Disable IPA in APQ 8098
IPA needs to be kept disabled in APQ 8098 platform.

Change-Id: If340d72d1dc18f2861635528ea1a37a4d81421bd
Signed-off-by: Mohammed Javid <mjavid@codeaurora.org>
2017-06-29 15:51:49 +05:30
Mukesh Kumar Savaliya
61b9e193aa spi: spi_qsd: serve set_cs call only for valid device status
when set_cs() is called by framework, first check the device suspend
status and if not suspended then proceed for register access. Let system
suspend call SPI runtime suspend but make sure set_cs doesn't race with
it by holding the mutex.

Change-Id: Id6d05ac37227bf3358438eeedf279ddd1c9aab8b
Signed-off-by: Mukesh Kumar Savaliya <msavaliy@codeaurora.org>
2017-06-29 15:50:38 +05:30
Ashutosh Kumar
09002ed79c ath10k: Populate ACS survey results
ACS fails as channel details are null in survey info.
Add the missing fields in survey_info structure and
populate the channel details in survey results.

CRs-Fixed: 2027495
Change-Id: I1ca933ded4ca039845203ccd51d77cf7cef1c000
Signed-off-by: Ashutosh Kumar <askuma@codeaurora.org>
2017-06-29 02:31:57 -07:00
Sayali Lokhande
d74ea38a01 ARM: dts: msm: Add non-removable ufs property for SDM630
Defines the non-removable property for UFS device node.
This basically lets the driver know that UFS is the
boot device.

Change-Id: I1c8aa298af4afc7e42d0c8a3690f7d3360e37647
Signed-off-by: Sayali Lokhande <sayalil@codeaurora.org>
2017-06-29 09:08:09 +05:30
Linux Build Service Account
41f7afc189 Merge "drm/msm/sde: add kernel traces to measure enable/disable/kickoff times" 2017-06-28 20:09:04 -07:00
Linux Build Service Account
f244955097 Merge "ARM: dts: msm: update rmtfs shared memory address for SDM660/630" 2017-06-28 20:09:03 -07:00
Linux Build Service Account
17fbca8726 Merge "defconfig: msm: enable remote debugger driver" 2017-06-28 20:09:02 -07:00