Commit graph

578753 commits

Author SHA1 Message Date
Avaneesh Kumar Dwivedi
e012f96804 soc: qcom: Reduce halt acknowledgment timeout for mss axi port
Reduce halt ack timeout to 25 ms from 100 ms to reduce delay in
mss shutdown path.

Change-Id: I935e35d5d848e564aad5987b1652546046f0927d
Signed-off-by: Avaneesh Kumar Dwivedi <akdwived@codeaurora.org>
2016-12-05 13:10:15 +05:30
Taniya Das
b18cb5f787 clk: qcom: Add RCG support for DP pixel source
Add a new RCG clock ops specific for the DP pixel clock source.

Change-Id: I2ec5ddcfd47af8362f76d76d153e30d4e2f45370
Signed-off-by: Taniya Das <tdas@codeaurora.org>
2016-12-05 12:38:49 +05:30
Anirudh Ghayal
1d79e3181d regulator: msm_gfx_ldo: Fix the CX voting logic
Vote on the CX rail only if the gfx_ldo regulator
is enabled.

CRs-Fixed: 1078568
Change-Id: Ice3a527b9952c0fdee813d8ad152d4c1deea7ecd
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2016-12-05 11:17:02 +05:30
Anirudh Ghayal
5ed520588f regulator: msm_gfx_ldo: Fix invalid memory accesses
A few gfx_ldo memory read/write calls use an invalid ldo
base address leading to other corruptions in the system.
Fix this by using the correct LDO base address.

CRs-Fixed: 1078353
Change-Id: I034d473e86b3fe7164d1c9ddad326c9dd77a188f
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2016-12-05 11:17:01 +05:30
Anirudh Ghayal
d1c74c81df regulator: msm_gfx_ldo: Enable CPR sensors in LDO bypass mode
Enable the configuration which keeps the CPR sensors active
when LDO is in auto-bypass mode. The sensors only stay
bypassed when LDO is regulating.

CRs-Fixed: 1027469
Change-Id: I6b8c2a3fd8fe22a64b6d24c458a7c60641195e45
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2016-12-05 11:17:01 +05:30
Anirudh Ghayal
9115687acf regulator: msm_gfx_ldo: Add a property to adjust the open-loop voltage
Add a DT property to adjust the open-loop voltage for the LDO
corners, this will be useful for voltage adjustments after
LDO characterization.

While at it, update the LDO MIN_VOLTAGE value for 8953.

CRs-Fixed: 1010052
Change-Id: I7479ebbf0ac7253eb355246d36f15a91ce96cd9a
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2016-12-05 11:17:00 +05:30
Anirudh Ghayal
8b81a06f7a regulator: msm_gfx_ldo: Update the fusing scheme for GFX LDO
Change the LDO_EN bit definition for GFX LDO on MSM8953 and
remove the LDO bypass fusing logic as it is not supported.

While at it, add the debugfs node to disable ldo_mode.
Disable LDO mode: echo 1 > /d/msm_gfx_ldo/ldo_mode_disable
Enable  LDO mode: echo 0 > /d/msm_gfx_ldo/ldo_mode_disable

CRs-Fixed: 989270
Change-Id: Ibc7aa921380e89da4963571408b89bc417dec245
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2016-12-05 11:17:00 +05:30
Tirupathi Reddy
9c0520ed33 regulator: Remove internal code name of msmtitanium for msm8953
Remove all reference to internal code name msmtitanium
and replace them with msm8953, as there is an official
announcement for msm8953 SoC.

Change-Id: If99bbf20756a524c5a3bd7ba49366c29e158289e
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
2016-12-05 11:16:51 +05:30
Anirudh Ghayal
21e26cc26d ARM: dts: msm: Enable PWM, Haptics and Flash for PM2FALCON
Enable the PWMs mapped to the RGB module and specify
the lpg-lut-size.

While at it, enable the haptics and flash node.

Change-Id: I83cf7882d1abb96c343973894c2a7ab3f932dfb1
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2016-12-05 10:44:31 +05:30
Maulik Shah
3c0f19e80b mpm-of: Support multiple mpm pin mapping to same gic interrupt
Currently one gic interrupt is mapped to one mpm pin.
Support multiple mpm pins to get enabled with single irq
with client drivers using enable_irq_wake API.

Change-Id: Iea575079c24ed0986b74fb6e86c7b8100474f19e
Signed-off-by: Maulik Shah <mkshah@codeaurora.org>
2016-12-05 10:39:45 +05:30
Amey Telawane
bb0b4d0351 coresight: fix 32-bit compilation issues
Compilation issues were observed on 32-bit as header files
were not present. Add support to resolve the issue.

Change-Id: I8071405a888cd2b23a068ca5b9c3a7808d13821a
CRs-fixed: 1089405
Signed-off-by: Amey Telawane <ameyt@codeaurora.org>
2016-12-05 08:58:05 +05:30
Linux Build Service Account
5142c18bae Merge "msm: vidc: Align release buffers with V4L2 states" 2016-12-04 05:55:31 -08:00
Linux Build Service Account
7e4605dbeb Merge "msm: vidc: Add debug info inside queue headers" 2016-12-04 05:55:30 -08:00
Linux Build Service Account
90779a7e5d Merge "ARM: dts: msm: Set max non secure region to 0xE0000000 on msm8998" 2016-12-03 17:18:07 -08:00
Linux Build Service Account
5d923c5be1 Merge "msm: vidc: avoid repeated calls to handle_sys_error" 2016-12-03 17:18:06 -08:00
Linux Build Service Account
2f22b36e92 Merge "msm: vidc: fix lock issue in msm_comm_get_mbs_per_sec()" 2016-12-03 17:18:05 -08:00
Linux Build Service Account
09525159a6 Merge "qcom-charger: smb2: add support of PMFALCON" 2016-12-03 09:59:53 -08:00
Linux Build Service Account
45a42ee01e Merge "ARM: dts: msm: fix slave-id of charger and FG on PMFALCON" 2016-12-03 09:59:52 -08:00
Taniya Das
a14e4b541b clk: qcom: Add additional delay while enabling votable clocks
During the GDSC enable sequence, the GDS_HW_CTRL forces some
clocks to be on to trigger the handshake to unhalt the SMMU
and NOC. Once the handshake completes, the controller asserts
the PWR_ON status and disables the clocks.
If the clock driver tries enabling the SMMU ahb/axi clocks
immediately, there is a possibility that these clocks might
still not have gone through their disable sequence; especially
if the AXI/AHB rates are very low. If this happens, the clock
driver falsely assumes that the clocks are on and returns. Any
SMMU accesses/traffic at this point might lead to a failure since
the clock could turn off.

Change-Id: I544ca82e20e1c026d0ff1881c96edd33bf362b7d
Signed-off-by: Taniya Das <tdas@codeaurora.org>
2016-12-03 05:53:57 -08:00
Linux Build Service Account
25f0ed75e0 Merge "icnss: Add support of setting MAC address from platform driver" 2016-12-03 02:17:52 -08:00
Linux Build Service Account
c8cee748e5 Merge "ARM: dts: msm: Change camera mount angle for msm8998 QRD device" 2016-12-03 02:17:51 -08:00
Linux Build Service Account
8c6beb5a26 Promotion of kernel.lnx.4.4-161202.
CRs      Change ID                                   Subject
--------------------------------------------------------------------------------------------------------------
1094097   Iad76a7e317dd9caf846dbe870baee63a8c5ce6c1   usb: gadget: f_rmnet: Add support for configfs
1050304   I768b3390fbe4728be285424d0ce27981e1a5d6cb   msm: mdss: dp: set crypto clock rate
1093028   Ic534c518116c18e98bd4e421365831400ef967f4   ARM: dts: msm: change ufs regulators for msmfalcon inter
1092638   I22df2ab1210d0ec7da1ac394e6c61beaa52eb712   ARM: dts: msm: Add sdhc2 support for msmfalcon interpose
1094107   I7d463e4e14c896be33ffb3be418b9f91f49107c5   misc: qcom: qdsp6v2: modify amr decoder driver
1074469 1094107   Ia187948fab9840447b1f5b1ede4e9a1ece0b85c5   audio: add G711 audio encoding support
1096038   Ib763bf5f58155fe2c6001357aa939d8098d2ff14   ARM: dts: msm: Add sdhc2 regulator for QRD msmfalcon int
1072067   I8e84577b5aff5e932632c4612a88808615d764ae   ASoc: msm: qdsp6v2: Add TX app type support in compress
1072067   I1c46befc223285495b3c0650e6c3eaae81f58771   ASoc: msm: qdsp6v2: Add timestamp support for compress c
1087543   I3e2fffdddfb7822a4eb3e142738363f1e80522d8   SoC: msm: q6dspv2: add null check for payload
1060631   I814c4b219c0c3b91c4e1280b09c2b819d864f787   msm: camera2: cpp: Added secure buffer [un]mapping
1050304   Ib551b1fe8641203b66a31e745d5091641b4d0ae2   msm: mdss: dp: hdcp 2.2: add support for interrupt handl
1086187   I32aa42ceef069241e00e734dc4d84f5d5277bda4   ASoC: wcd934x: enable lineout path in codec
1093889   Ib60d079a4d8685e781624bb1403b2a3060e31d27   mm: Inform KASAN when allocating pages during isolation
1022395   I6bef9f2c033f78ad0959954acc5d7627e8a92139   mmc: core: check if CQE is already disabled before halt/
1094769   Ifc32ab4ead63c382ae390358ed86f7cc5b6eb2dc   sched: pre-allocate colocation groups
1083787 1084152   I734f53162055373126f9a11038b8cbfc75ae7a5e   ASoC: soc-dapm: Invalidate DAPM path during dapm additio
1081032                                               Input: synaptics: check input, prevent sysfs races
1091186   Ic2df5ba83d1e7166aadc954aa137ec65ffa79133   ARM: dts: msm: Remove clocks associated with GDSC for MS
1022395   I90d17cbc73783b88bbafbdf7048c8a26eb8434bc   mmc: block: send CMD13 when a response error detected in
1096606   I5f7393f3f486a884bfa881a93c01623c3cd2664d   clk: msm: Remove overrides from clock header files for c
1088824   Ifaa4b5387d4285ddce16d8e745aa0500c64c568b   msm: camera: fix bound check of offset to avoid overread
1090500   I1d7ecc6a3d4c48d0de9645043d5e5bfdfa1d1f5f   ASoC: audio-ext-clk: add new audio ext clock
1074469 1094107   I5296de4f525adec549c8d51fbf7fc76120b3b4f5   misc: qcom: qdsp6v2: add G711 decoder driver
1096336   I405cb68749f63f6f779e4f3c2b47065b02ec07de   ARM: dts: msm: Update ascent battery profile for GEN3 FG
1050304   I0afc56e0177ceccf76b717a483584f7ad5055fe1   msm: mdss: hdcp_1x: update hdcp state on link integrity
1091194   I78261addaa84d1239b92e1528e77bbfcaa09105f   ASoC: msm8998: Update supported sample rates for USB bac
1094107   I496a975e427f68d7bb5cc2789bfc9bb949658233   ASoC: msm: qdsp6v2: support encode of g711 format
1091999   Ia8495790b031ae69dd8d9f36cdd2408de9aed29b   msm: camera: jpegdma: Check for compat config
1096408   I4afcf7d5b22395eeda2e77131bd45592abaeb561   uapi/media: add additional ubwc compressed formats
1074037   I29cf58d7069d758239c2f5712e70e94be20a42d3   defconfig: msm: Disable CRYPTO_DEV_QCE config flag for m
1081525   I61956a4038f80f55d9507be87d7f7ee278ccf45e   msm: mdss: avoid scheduling pp work during continuous up
1093687   Ic0dedbadca5b4cc4ce567afad48a33078b549439   msm: kgsl: Reserve a context ID slot but don't populate
1081525   Ic97744a81198ff303f9c87e1cf7c2468b4356a25   mdss: move to a kthread for vsync_retire_work_handler
1074469 1094107   Iab3a45c43b38b4e004c9c297fb84dfe9e6f3e2be   msm: Add msm_audio_g711_dec header file to Kbuild
1050304   Ib77756c942abfbdd6e1522a3238d5d8499496fc9   msm: hdcp: add response timeout and new messages for sin
1074469 1094107   Ie90fd68e24e7e793aaac64290e3c1e41682d6d5a   ASoC: msm: qdsp6v2: support decode of g711 clips
1094107   I40a0e5b7635e8585b9fc4cb01cfdb213418619c5   msm: Add msm_audio_g711 header file to Kbuild
1094946   I1db579626d96302e07fef1a755fb39944d3eaca8   msm: mdss: restore pipe src/dst rect after multiple PU R
1094653   I578dc96da96f7c10be51eac1f8b3c190e45dcfcf   msm ipa3: fix blocking faulty IOCTLs
1092188   I872f18235b0b1685dfdee3de99827d031077a012   msm: mdss: add support to set mdp clock rate before enab
1022395   Ic529aae53fdecd6b9ecbb17ba13147964dce55dc   mmc: sdhci: Handle legacy commands sent in CQ error case
1022395   I944ab4060e779c7f41a945532e6a65c30797d40f   mmc: cmdq_hci: enable legacy interrupts when CQ is disab
1094097   I5b763acfb28c2f1832874af786704835314fa9c7   usb: gadget: Add RMNET support using IPA over BAM2BAM
1086873   I8bd2eb93393766bf9c301766e525354770577e0a   net: rmnet_data: Handle leaked packets when adding MAP f
1096656   I8cb59e1475376167c7a8a60c54df0939597f5083   msm: kgsl: Check MMU type for memory and pagetable opera
1084188   I41410f1e4916fadc8d1dc5c08f088e0fe71405e1   msm: camera: Print kernel pointer using correct specifie
1050304   I9b120b88f92be517d1734697625038b28b32feb1   msm: mdss: hdcp_1x: remove obsolete code
1085889   I12be44ac272fc5079230feb6ae24c68ccde99cf2   ASoC: msm: qdsp6v2: Fix an incorrect string comparison l
1074469 1094107   Ia5fddfce1f2eebaa08aad0f53cab9c0993b37695   misc: qcom: qdsp6v2: register ioctl calls for g711mlaw d

Change-Id: Iaec5bb3c4a0a4d3779866d8fa697d4b704b2c84a
CRs-Fixed: 1086873, 1084188, 1060631, 1094097, 1088824, 1074469, 1074037, 1092188, 1081525, 1050304, 1096408, 1096656, 1091186, 1084152, 1093889, 1096038, 1096336, 1081032, 1092638, 1022395, 1094653, 1072067, 1096606, 1091999, 1094107, 1083787, 1087543, 1094769, 1085889, 1094946, 1093028, 1086187, 1090500, 1093687, 1091194
2016-12-02 18:43:51 -07:00
Ram Chandrasekar
c975089fd5 thermal-core: Use rcu for accessing sensor list
Sensor temperature read function traverses the
sensor list every time without using any lock. If the
list is undergoing mutation when it is traversed, it may
result in memory violation. For example, the new element
could have added to the list before updating the
next pointer due to out of order execution. This could result
in either NULL pointer dereference or unassigned memory access
violation. Using a lock every time when temperature
is read may mutually exclude it from list mutation, but it impacts
the performance. Sensor addition is an infrequent operation
when compared to sensor temperature read. So adding a lock
to protect against this infrequent operation will add overhead
and deter performance. Use of list_for_each_entry_safe() function
for traversing, won't help. Because this function can help
only if the traversal loop removes the current element, that
is pointed by this iteration.

Use RCU when traversing and updating the list to avoid locks.
RCU ensures list traversal safe addition or deletion happens
and doesn't block the frequent read operation. Replace the
list_for_each_entry_safe() function with rcu safe list
traversal function list_for_each_entry_rcu(), wherever it is
applicable.

Change-Id: I4c05fefa6906ecad408dfd4407b60bc051366f8c
Signed-off-by: Ram Chandrasekar <rkumbako@codeaurora.org>
2016-12-02 15:42:46 -07:00
Subbaraman Narayanamurthy
1da3212330 input: qpnp-power-on: Cleanup the qpnp-power-on driver
Fix the following in qpnp-power-on driver:
- Use GENMASK for bit mask
- Remove unused module parameter
- Use nested comments properly wherever applicable
- Fix conditional block formatting and typos
- Use const qualifier for of_device_id table

Change-Id: Ib9dd9be6cafad4c7aec1c88d9828ef1ebbe2a1c3
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
2016-12-02 12:45:00 -08:00
Subhash Jadavani
a0b2898fbc scsi: ufs: fix shutdown race condition
New requests coming after/in parallel to shutdown are being
returned with DID_ERROR, but this causes the request to be
requeued and retried. These requests are getting pulled by
the shutdown context since the PON request is inserted at
the head of the queue and the queue is run for processing.

The queuecommand in ufs driver allows requests in the context
of shutdown as PON has to be sent to the device, but this
retried regular request also ends up getting submitted after
PON which fails and causes issues in err handling.

Fix this by not relying on the context but looking for the
target lun of the request. Allow only requests directed
towards well known device lun (where PON will be sent) and
block all other requests. Also make sure we mark the
shutdown processing first before taking the write lock so
that we can appropriately fail the regular request.

Change-Id: Iaa442e8e92310ea0761c27af8fda57ffcadadb3d
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
Signed-off-by: Venkat Gopalakrishnan <venkatg@codeaurora.org>
2016-12-02 11:45:12 -08:00
Liam Mark
bc13d86d3d arm: dma-mapping: handle IOVA address zero
The IOVA allocator used by these calls supports IOVA address
zero so properly handle IOVA address zero.

Change-Id: I012452d4cf3534dfb79e6deb15b7ff74f5e3bb40
Signed-off-by: Liam Mark <lmark@codeaurora.org>
2016-12-02 11:09:30 -08:00
Nicholas Troast
b796e99ce6 ARM: dts: msm: refactor smb138x device to its own dtsi
The smb138x device has been duplicated across many board level files.
Refactor the smb138x device to a separate dtsi file so it can be
included in any board level files.

Change-Id: I9520595f2a40e197ad2227a8391bed79412b19f8
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2016-12-02 09:24:31 -08:00
Linux Build Service Account
4d0d50caa2 Merge "ARM: dts: msm: change ufs regulators for msmfalcon interposer QRD" 2016-12-02 09:02:32 -08:00
Linux Build Service Account
e107ec1742 Merge "ARM: dts: msm: Add sdhc2 regulator for QRD msmfalcon interposer" 2016-12-02 09:02:31 -08:00
Linux Build Service Account
63baba9f2b Merge "defconfig: msm: Disable CRYPTO_DEV_QCE config flag for msmfalcon" 2016-12-02 09:02:30 -08:00
Linux Build Service Account
337e994ce3 Merge "msm: kgsl: Reserve a context ID slot but don't populate immediately" 2016-12-02 09:02:28 -08:00
Linux Build Service Account
79ef4a7206 Merge "ASoC: msm: qdsp6v2: Fix an incorrect string comparison logic" 2016-12-02 09:02:27 -08:00
Linux Build Service Account
eb564015ba Merge "ASoC: msm8998: Update supported sample rates for USB backend." 2016-12-02 09:02:26 -08:00
Linux Build Service Account
89b2746b6f Merge "SoC: msm: q6dspv2: add null check for payload" 2016-12-02 09:02:24 -08:00
Linux Build Service Account
4016e041b2 Merge "ASoC: wcd934x: enable lineout path in codec" 2016-12-02 09:02:23 -08:00
Linux Build Service Account
a12941769a Merge "ASoC: soc-dapm: Invalidate DAPM path during dapm addition of routes" 2016-12-02 09:02:21 -08:00
Linux Build Service Account
4595a01ac7 Merge "misc: qcom: qdsp6v2: register ioctl calls for g711mlaw driver" 2016-12-02 09:02:16 -08:00
Linux Build Service Account
1042c91dfb Merge "ASoC: audio-ext-clk: add new audio ext clock" 2016-12-02 09:02:15 -08:00
Linux Build Service Account
b6d09323f0 Merge "ARM: dts: msm: Update ascent battery profile for GEN3 FG" 2016-12-02 09:02:14 -08:00
Linux Build Service Account
55d5ccc3e7 Merge "ARM: dts: msm: Add sdhc2 support for msmfalcon interposer" 2016-12-02 09:02:13 -08:00
Linux Build Service Account
1209c96d7b Merge "msm: kgsl: Check MMU type for memory and pagetable operations" 2016-12-02 09:02:12 -08:00
Linux Build Service Account
b08731c07c Merge "ARM: dts: msm: Remove clocks associated with GDSC for MSMfalcon/Trition" 2016-12-02 09:02:10 -08:00
Linux Build Service Account
ef10f8e77d Merge "usb: gadget: f_rmnet: Add support for configfs" 2016-12-02 09:02:08 -08:00
Charan Teja Reddy
e92079af3d ARM: dts: msm: add the smmu nodes for msmtriton
Add the QSMMU device nodes that is used for address translations on
msmtriton.

Change-Id: Iff419eef01ce58fe540e8f3bd7c8a1553a340d28
Signed-off-by: Charan Teja Reddy <charante@codeaurora.org>
2016-12-02 19:47:42 +05:30
Gaurav Kohli
0daf7767a6 ARM: dts: msm: Enable CX Ipeak Mitigation for MSMFALCON
This enables the assertion of CX ipeak mitigation during
MSS restart.

Change-Id: I113037aabafeacba7079d530ca859833f475f649
Signed-off-by: Gaurav Kohli <gkohli@codeaurora.org>
2016-12-02 05:26:56 -08:00
Gaurav Kohli
49093e9183 soc: qcom: pil: Add support for the CX IPeak mitigation
Clear the CX iPeak bit if it was set by MSS before crash.
MSS sets this bit if it was in Turbo state. In a situation
where all the votes were set (including MSS), It would have
resulted in CDSP throttling. But when MSS is in crashed state,
It cannot be cleared by MSS, So PIL needs to do this. It
would allow possible clearance of throttle state.

Change-Id: Ia561436a362dc5b0e1cb22c30ce9f5b8bb027a1f
Signed-off-by: Gaurav Kohli <gkohli@codeaurora.org>
2016-12-02 18:45:12 +05:30
Ashay Jaiswal
4195f84bde qcom-charger: smb2: add support of PMFALCON
Add support of PMFALCON PMIC and enable PMIC specific
workarounds in charger driver.

Change-Id: Id21fde25b9b741b9cb570ab5348959715e53e6cb
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
2016-12-02 17:16:29 +05:30
Ashay Jaiswal
3bb0627e13 ARM: dts: msm: fix slave-id of charger and FG on PMFALCON
Charger and Fuel Gauge peripherals are on slave-id 0. Update
charger and FG device node to reflect the same.

Change-Id: I99d1e47a20fd5c3304249aa4f6c64e5967874312
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
2016-12-02 17:16:29 +05:30
Gaurav Kohli
59ab2dddaf ARM: dts: msm: Make required changes for Modem PIL for MSMFALCON Interposer
Correct the required regulator node for Modem PIL for MSMFALCON Interposer
and also enable Modem pil.

Change-Id: I106ae84303f6a0b1de13ce564600f7788dd382b3
Signed-off-by: Gaurav Kohli <gkohli@codeaurora.org>
2016-12-02 03:35:45 -08:00
Vijayavardhan Vennapusa
4fce87dd36 ARM: dts: msm: Add aggre2_snoc_axi_clk handle in msmfalcon USB3 node
Add aggre2_snoc_axi_clk handle in USB3 node which is required to be
voted  from USB driver before enabling USB core clock for msmfalcon.

Change-Id: I190233c1fc483f3d519e09784ed19e6c09ccb2bd
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
2016-12-02 16:49:55 +05:30