Commit graph

581474 commits

Author SHA1 Message Date
Sathish Ambley
8c18ec960f msm: ADSPRPC: Update subsystem name for slpi
Update subsystem name for slpi to ensure that the subsystem restart
notification is registered with the correct subsystem.

Change-Id: Ie4f409d6d63cd164323a2e58805b8154322518d1
Signed-off-by: Sathish Ambley <sathishambley@codeaurora.org>
2017-01-18 13:00:28 -08:00
Yeleswarapu Nagaradhesh
1a43bb07cb ASoC: audio-ext-clk: add parent to div and lnbb clks
Add parents to div_clk1 and ln_bbclk. And register
both the clocks independently.

Change-Id: Ic0435ebad533879e3e0648775956c91cc680644d
Signed-off-by: Yeleswarapu Nagaradhesh <nagaradh@codeaurora.org>
2017-01-19 00:52:56 +05:30
Laxminath Kasam
71fb9c8efa ARM: dts: msm: Audio bringup fixes for SDM660
Update gpio settings as per HW VI audio
values. Also move common settings of external
and internal codecs to new files.

Change-Id: I0d3e0878972038a7876a063648156126b2a7cee4
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2017-01-19 00:48:11 +05:30
Jack Pham
77629c3ba6 usb: pd: pdphy: Enable IRQs for wakeup
Enable the signal and message RX IRQs for wakeup. This allows
the system to be woken from suspend when the PD PHY receives
an incoming hard reset or SOP* message from a connected peer.

Change-Id: Ib6f4507ef363954c91271029874337497659da84
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2017-01-18 10:26:38 -08:00
Vikram Mulukutla
e7dd50fa46 sched: hmp: Remove the global sysctl_sched_enable_colocation tunable
Colocation in HMP includes a tunable that turns on or off the feature
globally across all colocation groups. Supporting this tunable correctly
would result in complexity that would outweigh any foreseeable benefits.
For example, disabling the feature globally would involve deleting all
colocation groups one by one while ensuring no placement decisions are
made during the process.

Remove the tunable. Adding or removing a task from a colocation group is
still possible and so we're not losing functionality.

Change-Id: I4cb8bcdbee98d3bdd168baacbac345eca9ea8879
Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
2017-01-18 09:45:44 -08:00
Vikram Mulukutla
2768f0352b sched: hmp: Ensure that best_cluster() never returns NULL
There are certain conditions under which group_will_fit() may return 0 for
all clusters in the system, especially under changing thermal conditions.
This may result in crashes such as this one:

        CPU 0                    |               CPU 1
====================================================================
select_best_cpu()                |
 -> env.rtg = rtgA               |
    rtgA.pref_cluster=C_big      |
                                 |   set_pref_cluster() for rtgA
                                 |     -> best_cluster()
                                 |        C_little doesn't fit
                                 |
                                 |   IRQ: thermal mitigation
                                 |   C_big capacity now less
                                 |   than C_little capacity
                                 |
                                 |     -> best_cluster() continues
                                 |        C_big doesn't fit
                                 |   set_pref_cluster() sets
                                 |   rtgA.pref_cluster = NULL
                                 |
select_least_power_cluster()     |
  -> cluster_first_cpu()         |
     -> BUG()                    |

To add lock protection around accesses to the group's preferred cluster
would be expensive and defeat the point of the usage of RCU to protect
access to the related_thread_group structure. Therefore, ensure that
best_cluster() can never return NULL. In the worst case, we'll select the
wrong cluster for a related_thread_group's demand, but this should be
fixed in the next tick or wakeup etc. Locking would have still led to the
momentary wrong decision with the additional expense!

Also, don't set preferred cluster to NULL when colocation is disabled.

Change-Id: Id3f514b149add9b3ed33d104fa6a9bd57bec27e2
Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
2017-01-18 09:45:40 -08:00
Phani Kumar Uppalapati
f42b8d1625 ASoC: wcd934x: Add support for USB Type-C analog audio
Add playback and capture support when an analog wired
accessory is inserted into USB Type-C receptacle through
an USB type-c to 3.5mm analog audio adapter.

CRs-Fixed: 1102048
Change-Id: I36126ecdb0d2683d27d78dea9256bee0be67c1a6
Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
2017-01-18 09:39:24 -08:00
Utkarsh Saxena
43184bf1fe ARM: dts: msm: Enable wifi offload for SDM660 and SDM630
SDM660 and SDM630 support wifi offload. So, enable it.

Change-Id: I82a509b8f8b07b0537f050a62c4b605ac6806837
Acked-by: Mohammed Javid <mjavid@qti.qualcomm.com>
Signed-off-by: Utkarsh Saxena <usaxena@codeaurora.org>
2017-01-18 20:23:27 +05:30
Yahui Wang
d83e1aef94 ARM: dts: msm: move display panel settings for sdm660 QRD
We need to move panel settings from sdm660-qrd.dtsi to
sdm660-qrd.dts to separate LCD & AMOLED panel as they use
sdm660-qrd.dtsi for some common settings for sdm660 QRD.

Change-Id: I447f70c4953e5ba0ee30bb76fa08a5f640360d9c
Signed-off-by: Yahui Wang <yahuiw@codeaurora.org>
2017-01-18 06:36:09 -08:00
Dhoat Harpal
1618176475 soc: qcom: glink_spi_xprt: Fix compilation error for 32 bit
Conversion of a 64 bit int variable to void pointer is illegal
operation when compiling for 32 bit architecture.

Added explicit conversion to uintprt_t, so that 32 bit conversion
can be done.

CRs-Fixed: 1107920
Change-Id: I3854fcb460308c9a77a17198dcb604dd4da135ac
Signed-off-by: Dhoat Harpal <hdhoat@codeaurora.org>
2017-01-18 19:42:20 +05:30
Venkatesh Yadav Abbarapu
59e30f3f02 defconfig: msm: Enable MSM_TIMER_LEAP for sdm660
Enable MSM_TIMER_LEAP config flag in both sdm660_defconfig
and sdm660-perf_defconfig files. This option enables check
for architecture timer leaps, when all least significant 32bits
of CNTVCT or CNTPCT counter is set and rereads counters.

Change-Id: I643fad053b560e689c9ffd00e1f02790435a9e8c
Signed-off-by: Venkatesh Yadav Abbarapu <vabbar@codeaurora.org>
2017-01-18 19:09:28 +05:30
Linux Build Service Account
ebc5196e3e Merge "clk: qcom: Add support for GPLL0 active clock for CPU" 2017-01-18 05:31:24 -08:00
Linux Build Service Account
585e9f4457 Merge "clk: qcom: Add support for multiple PLL software instances" 2017-01-18 05:31:23 -08:00
Linux Build Service Account
e0e7879548 Merge "qpnp-fg-gen3: remove support for configuring external sense" 2017-01-18 05:31:22 -08:00
Linux Build Service Account
14bfad67bb Merge "power_supply: add power supply property to support debug battery" 2017-01-18 05:31:21 -08:00
Linux Build Service Account
3c52c85809 Merge "USB: gadget: mbim: Avoid copying uninitialized data to userspace" 2017-01-18 05:31:20 -08:00
Linux Build Service Account
baf9ce1b35 Merge "diag: Change CDSP socket instance id" 2017-01-18 05:31:19 -08:00
Linux Build Service Account
25c1171bd1 Merge "arm64: Disable ARMv8.1, ARMv8.2 architectural features" 2017-01-18 05:31:18 -08:00
Linux Build Service Account
733bc86afc Merge "ARM: dts: msm: Update memory map for msm8998" 2017-01-18 05:31:17 -08:00
Utkarsh Saxena
82259fbfd6 msm: ipa: Fix to pass ioctl param to reset_stats
Make change to pass the iotcl param to reset_stats
instead of NULL to avoid NULL pointer access.

Change-Id: Ie5fe6d3dd530ac2efc0fe670cccd20b9a2fbe968
Acked-by: Chaitanya Pratapa <cpratapa@qti.qualcomm.com>
Signed-off-by: Utkarsh Saxena <usaxena@codeaurora.org>
2017-01-18 17:44:05 +05:30
Ashish Garg
d5258ddb8e ARM: dts: msm: support wqxga panel and truly dsc mode on sdm660
Add the following support on sdm660:
1. Panel timings, power supplies, backlight settings for sharp
wqxga panel.
2. Panel timings for dsc video and command mode for truly panel.

Change-Id: I4f3a6794b8856f4df53717f81f980cf7ab1b73db
Signed-off-by: Ashish Garg <ashigarg@codeaurora.org>
2017-01-18 02:45:39 -08:00
Amey Telawane
e852c533c6 ARM: dts: msm: modify dcc ram size for sdm660
Modify DCC RAM size for sdm660. DCC RAM is used to
store captured information locally in DCC.

CRs-fixed: 1112955
Change-Id: I6c1a48e11c97be31c575aa9ec4cf024dc4a33fa8
Signed-off-by: Amey Telawane <ameyt@codeaurora.org>
2017-01-18 16:09:34 +05:30
Shankar Ravi
1a8bbe2959 ARM: dts: msm: Csiphy clk muxer changes for SDM660
Update the csiphy clk muxer base register and offset for
SDM660.

Change-Id: I33e5afd8215aa753cdec0c1d86e7b8b0e3194115
Signed-off-by: Shankar Ravi <rshankar@codeaurora.org>
2017-01-18 02:20:59 -08:00
Johannes Berg
434781b501 mac80211: allow passing transmitter station on RX
Sometimes drivers already looked up, or know out-of-band
from their device, which station transmitted a given RX
frame. Allow them to pass the station pointer to mac80211
to save the extra lookup.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git
Git-commit: d63b548fffdbd239a5e65bb89424be19229048ba
CRs-Fixed: 1112914
[rsirasan@codeaurora.org: pulled changes only in kernel header
file and mac80211 subsystem]
Change-Id: Ie35906d1e9df1ebe7f72e7a6df3293117abdec57
Signed-off-by: Rajeev Kumar Sirasanagandla <rsirasan@codeaurora.org>
2017-01-18 15:30:45 +05:30
Ghanim Fodi
7452cc75cb msm: ipa: Prevent multiple header deletion from user space
An IPA header or processing context can be added once
and later deleted once from user space.
Multiple deletion may cause invalid state of the headers
software cache.

Change-Id: Ic0b8472b7fd8a76233a007d90c832af726184574
CRs-fixed: 1097714
Signed-off-by: Ghanim Fodi <gfodi@codeaurora.org>
2017-01-18 01:20:42 -08:00
Taniya Das
2656f5ca08 clk: qcom: Add support for 19.2Mhz for USB30 utmi clock
USB client needs 19.2MHz frequency support for utmi clock, so that it could
be requested for. Add support for the same.

Change-Id: Icdbf9c5155bdd0ec02d357182d6e020c06a70648
Signed-off-by: Taniya Das <tdas@codeaurora.org>
2017-01-18 14:01:51 +05:30
Veerabhadrarao Badiganti
a328cec1bf ARM: dts: msm: Enable SDCC ICE clock on SDM660
Enable SDCC ICE clock for ICE functionality in SDCC.

Change-Id: Ibb1aad8e9ddf3f62c2e86277abe8a066c26dffe7
Signed-off-by: Veerabhadrarao Badiganti <vbadigan@codeaurora.org>
2017-01-18 13:43:23 +05:30
Veerabhadrarao Badiganti
14093fed20 ARM: config: Enable DEFERRED RESUME flag on SDM660
Enabling deferred resume feature on SDM660. With this feature
enabled, MMC devices won't be resumed as part of the system
resume. It will be resumed only when there's a request to be
processed.

Change-Id: I901a888269b8bc0de006c8174546fd5f5c30baa8
Signed-off-by: Veerabhadrarao Badiganti <vbadigan@codeaurora.org>
2017-01-18 13:24:19 +05:30
Aravind Venkateswaran
ff59333bdd msm: mdss: dp: fix switching between non-standard resolutions
EDID parser assigns temporary Video Identification Codes (VIC) for
all non-standard resolutions when parsing a sink's EDID. These
VICs can be reused for a subsequent connection for different
resolutions. In the current implementation of the Display Port (DP)
driver, a resolution change is detected whenever a new VIC is used.
However, when switching between two non-standard resolutions spanning
connections to two different sinks, it is possible to have the same
VIC assigned for the two resolutions. This can result in abnormal
behavior. Fix this by resetting the video identification code and panel
information to reset value every time we get an HPD for disconnect.

CRs-Fixed: 1099532
Change-Id: I4bb5a6b4329f67368ebbdc7fe8d92c2ea4605082
Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
2017-01-17 23:24:21 -08:00
Jack Pham
7fa1e1c956 usb: pd: Increase number of SRC_CAP attempts before starting host
It is observed that some PD-capable sink devices have a
longer start-up delay before responding to the Source
Capabilities message with a Request. Since it is PD capable
we'd like to wait until after entering PE_SRC_Ready and VDM
Discovery to start USB host mode. Accommodate these devices by
increasing the number of failed attempts of sending the message
from 5 to 10 before treating it as a non-PD device and starting
host mode.

Change-Id: Ia555699e78729b75dc118cbb929f7c4c4f2d1279
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2017-01-17 23:08:58 -08:00
Jack Pham
d1a0cb9fa5 usb: pd: Re-enable SuperSpeed host by default
This reverts commit 85cc38fca2 ("usb: pd: Add support to set the
maximum speed via extcon") which unnecessarily restricted starting
USB host mode to high-speed only. Relax this so that USB host can
start in SuperSpeed when DFP mode is entered.

However, the only exception is if DisplayPort mode is discovered,
we need to drop down to high-speed only due to current hardware
limitations. This is handled during the VDM discovery stage.

Also use this opportunity to refactor all extcon_set_state_() calls
to helper functions that start/stop USB host/peripheral modes.

Change-Id: I2f32f70c57a8a6e2c34c8daf59dea931b445422f
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2017-01-17 23:08:20 -08:00
Jin Fu
68b4a64618 ARM: dts: msm: Set correct voltage for QRD8998HB touch panel
Configure QRD8998HB analog and digital voltage to correct value.

CRs-Fixed: 1112314
Change-Id: I15d26582a87c9613c2ada010912b53e15e383b18
Signed-off-by: Jin Fu <jinf@codeaurora.org>
2017-01-18 13:33:34 +08:00
Subbaraman Narayanamurthy
efc6aa53ca regulator: qpnp-labibb: fix an out of bounds access
Number of elements in ibb_pwrup_dly_table is 4. An out of bounds
access can be made if value read from IBB_PWRUP_PWRDN_CTL_1
register is larger than 3 as the DLY1 value is not shifted.
Fix it.

CRs-Fixed: 1112706
Change-Id: I40783a9c87d1e390a514b84743379c57f488f299
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
2017-01-17 20:42:08 -08:00
Ashay Jaiswal
b4fe7907b0 qcom-charger: smb2: suspend USB path for fake battery or debug board
Add support to identify fake battery/debug board and suspend the USB
input path when this is detected.

CRs-Fixed: 1107245
Change-Id: Icaa936e4e5b3c9381bc92b6664b32547a820b9c3
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
2017-01-17 20:40:38 -08:00
Harry Yang
c079a27b73 mfd: qcom-i2c-pmic: Add retry mechanism for slow slave responding
In some devices, qcom-i2c-pmic driver fails probe from the initial
poke failure of attached SEM slave.

As software workaround, this issue can be recovered by retrying to
ensure the unresponsive device is powered.

CRs-Fixed: 1083672
Change-Id: Ie828ba236f42b24a3d2acefdf069445cc72503f1
Signed-off-by: Harry Yang <harryy@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2017-01-17 20:30:24 -08:00
Ashay Jaiswal
bafe291f17 power_supply: add power supply property to support debug battery
Add power supply property to report debug/fake battery status.

CRs-Fixed: 1107245
Change-Id: I5590a772604986de8eed1c8417411dac62668440
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
2017-01-17 20:29:29 -08:00
Taniya Das
60fd13b746 clk: qcom: Remove few graphics clock for sdm660
The gcc_gpu_bimc_gfx_src_clk and gcc_gpu_snoc_dvm_gfx_clk need
to left at their default state of ON. Remove controlling them
from the linux clock driver to avoid disabling them during
late_init.

Change-Id: Iefc033998bf87fcc98dfaa1b7321d9cc33dedd5e
Signed-off-by: Taniya Das <tdas@codeaurora.org>
2017-01-18 08:59:33 +05:30
Taniya Das
95c4b7facf clk: qcom: Move prepare_enable of XO clock before spinlock
clk_prepare would hold a mutex and as clk_debug_mux_measure_rate has
already acquired a spinlock it would result in a BUG from sleeping context.
Avoid this by moving the prepare_enable before acquiring spinlock.

Change-Id: Ia405c884663ef80e87ae066df09f1c30134faf2e
Signed-off-by: Taniya Das <tdas@codeaurora.org>
2017-01-18 08:49:36 +05:30
Ajay Singh Parmar
f03a091017 msm: mdss: dp: fix hpd sysfs node
Fix the return value for hpd sysfs write function
to avoid wrong data to propagate to the caller.

Change-Id: Ic2282496598ecba8511f3a0a826e152451394edb
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2017-01-17 17:48:27 -08:00
Ajay Singh Parmar
70a007e5b3 msm: mdss: edid: fix extension block resolution parsing
Fix the DTD (Detailed Timing Descriptor) parsing for block
1 (CEA extension block) to properly parse the resolution
details.

Change-Id: I5c1e448d5cdaf771c9e35479fe48067092c964e3
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2017-01-17 17:48:15 -08:00
Ajay Singh Parmar
7d6cf4f289 msm: mdss: dp: fix audio stream header
Program the correct number of channels for header byte 3 in
audio stream to avoid issues related to audio channels.

Change-Id: I1de32403efc42d8fde8ac2096ae021e795707aae
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2017-01-17 17:47:52 -08:00
Ajay Singh Parmar
80612605ed msm: mdss: hdcp_1x: fix hdcp off race condition
During authentication, HDCP may poll hardware for status.
HDCP may be turned off by other thread abruptly depending
on the use-case. Do not poll hardware in case HDCP has been
turned off. Also, wait for authenticating thread to finish
in hdcp off thread to avoid any race condition.

Change-Id: If2e4940310035f08d2077def4fa62620bef19942
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2017-01-17 17:45:38 -08:00
Ajay Singh Parmar
ed104f71b6 msm: hdcp: protect encryption enable with a mutex
Enable/disable encryption API can be called by multiple
threads. Protect this API with a mutex to avoid any
possible memory violation due to invalid calls to the API.

Change-Id: I190cdf24880645ac20ec17934d76498d71b2802a
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2017-01-17 17:42:42 -08:00
Ajay Singh Parmar
4eaf19c57a msm: mdss: dp: fix link training sequence
Transmit the link pattern first, update the drive settings
and then update the sink about the pattern and drive settings
using aux channel to avoid possible link training failures
with some sinks.

Change-Id: Ia8eccee99f58da94d3f1013f075c07400bde15f9
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2017-01-17 17:38:07 -08:00
Pavankumar Kondeti
f4f127a9ba tracing: Use SOFTIRQ_OFFSET for softirq dectection for more accurate results
The 's' flag is supposed to indicate that a softirq is running. This
can be detected by testing the preempt_count with SOFTIRQ_OFFSET.

The current code tests the preempt_count with SOFTIRQ_MASK, which
would be true even when softirqs are disabled but not serving a
softirq.

Link: http://lkml.kernel.org/r/1481300417-3564-1-git-send-email-pkondeti@codeaurora.org

Change-Id: I084531ce806e0f7d42a38be0a7ad45977c43d158
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Git-commit: c59f29cb144a6a0dfac16ede9dc8eafc02dc56ca
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
2017-01-18 07:05:59 +05:30
Linux Build Service Account
d9ac8efbd9 Merge "scsi: ufs: handle auto hibern8 failure" 2017-01-17 17:18:28 -08:00
Linux Build Service Account
4d29daa1dc Merge "ASoC: Audio bringup fixes for SDM660" 2017-01-17 17:18:28 -08:00
Linux Build Service Account
849aea7c1a Merge "wil6210: set dma mask to reflect device capability" 2017-01-17 17:18:27 -08:00
Linux Build Service Account
6a99e4e814 Merge "ARM: dts: msm: Disable IPA in SDA630" 2017-01-17 17:18:26 -08:00
Linux Build Service Account
4f8760a889 Merge "HID: uhid: Remove mutex_unlock while waiting" 2017-01-17 17:18:25 -08:00