Commit graph

592686 commits

Author SHA1 Message Date
Linux Build Service Account
deea343b37 Merge "msm: ADSPRPC: Handle SMD event signal" 2017-07-28 08:21:40 -07:00
Rajeev Kumar Sirasanagandla
242032b545 msm: wlan: Fix regulatory rule of JO
Parentheses in 60 gHz band channels related regultory rule is
misplaced, due to which unable to change country code to JO.

To fix this, remove unwanted parentheses.

CRs-Fixed: 2084234
Change-Id: I655990f66929237cd4461462306eab9e66a08663
Signed-off-by: Rajeev Kumar Sirasanagandla <rsirasan@codeaurora.org>
2017-07-28 18:53:44 +05:30
Ashay Jaiswal
2cf2aaf54c power: smb-lib: enable DPDM regulator at CC attach
In case of quick back-to-back  insertion/removal of USB
there is a possibility that VBUS does not fall below the
1V usb-plugout threshold and hence the subsequent insertion
does not generate a plug-in event. This keeps the DPDM
regulator disabled at insertion thus impacting the APSD result.

Fix this by voting to enable the DPDM regulator in the cc-attach
handler.

CRs-Fixed: 2042071
Change-Id: I37a32081f0847965e34eb1c4114602ec61e9a005
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
2017-07-28 16:41:08 +05:30
Trishansh Bhardwaj
e0aea4f634 msm: camera: Instead of read_lock use read_lock_irqsave.
Prevent deadlock between tasklet and delete_stream by stopping
irq during delete_stream.

Change-Id: Ibcc9fd44403d24112b01150a7d1f3c6e705ea99a
Signed-off-by: Trishansh Bhardwaj <tbhardwa@codeaurora.org>
2017-07-28 04:07:57 -07:00
Ramakrishna Gottimukkula
168e1040e7 cpufreq: interactive: fix to come out of hysteresis mode
If policy max is set to less than or equal to hispeed_freq, governor can
get stuck in hysteresis mode as long as cpufreq_interactive_timer keeps
coming with in hysteresis period (max_freq_hysteresis). This is because
governor updates hysteresis start time (max_freq_hyst_start_time)
everytime new frequency is greater than or equal to policy max and
jump_to_max_no_ts flag is false. Irrespective of load new frequency in
this case will always end up at least at hispeed_freq due to hysteresis.
As policy max is set to less than or equal to hispeed_freq, this will
result in updating max_freq_hyst_start_time if jump_to_max_no_ts is
false. This will end up restarting hysteresis period. This mode will
break only if timer gets delivered after hysteresis period. Otherwise it
keeps extending.

To come out of this, don't update max_freq_hyst_start_time if new
frequency is bumped up to hispeed_freq due to hysteresis even though the
required frequency as per load is less than policy max and hispeed_freq.

Change-Id: Ib1e9e612036afeb12acd86e603b019e227920d85
Signed-off-by: Ramakrishna Gottimukkula <rgottimu@codeaurora.org>
2017-07-28 16:02:47 +05:30
Linux Build Service Account
f687374863 Merge "mhi: uci: Fix a bug related to split transfer packets" 2017-07-28 00:21:21 -07:00
Linux Build Service Account
8233df121f Merge "diag: Flush control workqueue immediately on channel close" 2017-07-28 00:21:12 -07:00
Linux Build Service Account
96e98ab9bb Merge "diag: Free the read workqueue structure to avoid memory leak" 2017-07-28 00:21:11 -07:00
Linux Build Service Account
1036b05d5c Merge "ARM: dts: msm: Make allocation for diag as guaranteed on sdm630" 2017-07-28 00:21:11 -07:00
Linux Build Service Account
88d5f45f9b Merge "power: smb-lib: Update the FLOAT detection logic" 2017-07-28 00:21:10 -07:00
Linux Build Service Account
769a4cebb1 Merge "ath10k: Fix dst CE ring configuration for CE5" 2017-07-28 00:21:09 -07:00
Linux Build Service Account
954d1c4aae Merge "msm: ipa3: add offline charging support" 2017-07-28 00:21:08 -07:00
Linux Build Service Account
a544e587d3 Merge "msm: sde: fix kernel booting failure in sde driver" 2017-07-28 00:21:07 -07:00
Linux Build Service Account
77c2b121e2 Merge "msm: sensor: Fix for variable being de-referenced without proper check" 2017-07-28 00:21:06 -07:00
Linux Build Service Account
a89a16f8e3 Merge "msm: camera: Add support for TOF sensor on msm8998 QVR" 2017-07-28 00:21:05 -07:00
Linux Build Service Account
1680902b96 Merge "ath10k: fix memory leak in rx ring buffer allocation" 2017-07-28 00:21:04 -07:00
Siddartha Shaik
e2e5a2e122 ASoC: msm8998: Update DAI IDs for DSP HW Transcode loopback
Replace Multimedia14 and Multimedia18 with Multimedia26
and Multimedia27 respectively for transcode loopback

CRs-Fixed: 2077700
Change-Id: I40e6666882859a5699e86856a0b8769eb295f748
Signed-off-by: Siddartha Shaik <sshaik@codeaurora.org>
2017-07-28 00:18:35 -07:00
Siddartha Shaik
e788a3c6f5 ASoC: msm: Add new FE Dais for DSP HW transcode loopback
Add new frontend DAIs MultiMedia26 and MultiMedia27
for DSP HW transcode loopback.

CRs-Fixed: 2077700
Change-Id: Iedbd7da5e83a556749d9dc03cf39b0f942d634fa
Signed-off-by: Siddartha Shaik <sshaik@codeaurora.org>
2017-07-28 00:18:07 -07:00
Weiyin Jiang
0665a04d95 SoC: msm: audio-effects: return directly to avoid integer overflow
Return error code directly to avoid further integer overflow leading
to buffer overflow.

Change-Id: I8b74efda227726494724f4387c45b5b6fa04637b
CRs-Fixed: 2077909
Signed-off-by: Weiyin Jiang <wjiang@codeaurora.org>
2017-07-27 23:30:44 -07:00
Sujeev Dias
17aec3c9ff mhi: uci: Fix a bug related to split transfer packets
When transfer buffer is larger than available space, uci driver will
split the transfer into multiple transactions. Driver incorrectly
calculated the transfer length and caused infinite transfer.
Simplify uci write method to avoid such bugs.

CRs-Fixed: 2083693
Change-Id: Ic7169cefda6a4637511ecfa3ce5ddde6f3d55f8c
Signed-off-by: Sujeev Dias <sdias@codeaurora.org>
2017-07-27 12:54:08 -07:00
Linux Build Service Account
ac8211566b Merge "msm: ispif: fix the OOB read issue" 2017-07-27 06:47:06 -07:00
Linux Build Service Account
08a5bd86c1 Merge "wcnss: fix the potential buffer flow issue in firmware setup" 2017-07-27 06:47:05 -07:00
Hareesh Gundu
a02500b8b3 msm: kgsl: Disable VPC all flat shading optimization for A5XX
Set ALLFLATOPTDIS bit in A5XX_VPC_DBG_ECO_CNTL register to
disable VPC all flat shading optimization. ALLFLATOPTDIS is
a hardware chicken bit value needs to be set one, to avoid
UI rendering corruption.

Change-Id: I39b5ad098daacbb1c3b0fc93963d82d477f70cc1
Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
2017-07-27 18:11:04 +05:30
Prateek Sood
c2878c131a rwsem: fix missed wakeup due to reordering of load
If a spinner is present, there is a chance that the load of
rwsem_has_spinner() in rwsem_wake() can be reordered with
respect to decrement of rwsem count in __up_write() leading
to wakeup being missed.

 spinning writer                  up_write caller
 ---------------                  -----------------------
 [S] osq_unlock()                 [L] osq
  spin_lock(wait_lock)
  sem->count=0xFFFFFFFF00000001
            +0xFFFFFFFF00000000
  count=sem->count
  MB
                                   sem->count=0xFFFFFFFE00000001
                                             -0xFFFFFFFF00000001
                                   RMB
                                   spin_trylock(wait_lock)
                                   return
 rwsem_try_write_lock(count)
 spin_unlock(wait_lock)
 schedule()

Reordering of atomic_long_sub_return_release() in __up_write()
and rwsem_has_spinner() in rwsem_wake() can cause missing of
wakeup in up_write() context. In spinning writer, sem->count
and local variable count is 0XFFFFFFFE00000001. It would result
in rwsem_try_write_lock() failing to acquire rwsem and spinning
writer going to sleep in rwsem_down_write_failed().

The smp_rmb() will make sure that the spinner state is
consulted after sem->count is updated in up_write context.

Change-Id: I96de9a65adedb35d1ee2c6c36dc7759c9b8f5d4d
Signed-off-by: Prateek Sood <prsood@codeaurora.org>
2017-07-27 04:58:44 -07:00
Utkarsh Saxena
9cd62d70d3 msm: ipa: Add support for per client statistics and UL firewall
Per client lan statistics  feature requires fetching data
from IPA Q6 and share it with user space application.
For UL firewall, v6 rules are sent to IPA Q6 in case of
whitelisting to allow only specific connections and drop
the rest of the connections.

Change-Id: I67e33c338f1d119e2e1a08ef462767e2e0cd6f1c
Acked-by: Abhishek Choubey <abchoube@qti.qualcomm.com>
Acked-by: Chaitanya Pratapa <cpratapa@qti.qualcomm.com>
Signed-off-by: Mohammed Javid <mjavid@codeaurora.org>
Signed-off-by: Utkarsh Saxena <usaxena@codeaurora.org>
2017-07-27 16:58:22 +05:30
Manoj Prabhu B
d276e8814c diag: Free the read workqueue structure to avoid memory leak
The patch frees the read workqueue structure after
scheduled workqueue processes the glink buffers and notifies
glink to avoid possible memory leak.

CRs-Fixed: 2083447
Change-Id: I4e562f9d1cbf02d8306e0a127835af85dfa5db23
Signed-off-by: Manoj Prabhu B <bmanoj@codeaurora.org>
2017-07-27 15:27:23 +05:30
Mohit Aggarwal
bf74f23874 diag: Flush control workqueue immediately on channel close
Currently, flushing of control workqueue is happening
under protection which is causing a deadlock. The patch
fixes the issue by flushing the control workqueue on
immediate closure of channel.

CRs-Fixed: 2081948
Change-Id: I6a7b1ee7cbabf2974700e28fc62c6d8fa3d464ed
Signed-off-by: Mohit Aggarwal <maggarwa@codeaurora.org>
2017-07-27 14:10:04 +05:30
Mohit Aggarwal
cf6a289518 ARM: dts: msm: Make allocation for diag as guaranteed on sdm630
Currently, memshare allocates 5MB memory to diag client on
receiving requests from modem. With the patch diag client
will be considered guaranteed on sdm630 to avoid memory
allocation failure on modem SSRs. Also being guaranteed
client allocated memory will never be freed.

CRs-Fixed: 2054448
Change-Id: I7b0780d064a27e8ebca9d31747ce1f9c18d84fdb
Signed-off-by: Mohit Aggarwal <maggarwa@codeaurora.org>
2017-07-27 13:43:36 +05:30
Deepak Kumar
2d5ff8406a drm/msm: free the IRQ during GPU cleanup
Free the IRQ in msm_gpu_cleanup. This is required
to avoid failures from devm_request_irq on subsequent
retries to load the GPU in case the previous attempt
failed somewhere after successful call to
devm_request_irq.

Change-Id: I90d98199a1d7867e3f7b51f8e2293fa28e4612fa
Signed-off-by: Deepak Kumar <dkumar@codeaurora.org>
2017-07-27 13:14:53 +05:30
Cong Tang
6d70b45cc4 ARM: dts: msm: Support Primary TDM Interface for msm8996
Support Primary TDM Interface for automotive and use optional property
clk-attribute couple_no to mimic PCM mode.

CRs-Fixed: 2083327
Change-Id: I2ef32eac5ecd4740f0985a77241952abca4ebc52
Signed-off-by: Cong Tang <congt@codeaurora.org>
2017-07-26 23:39:37 -07:00
Linux Build Service Account
0a57938d14 Merge "cnss2: Print string for firmware mode" 2017-07-26 19:22:55 -07:00
Linux Build Service Account
15d76668b0 Merge "icnss: Set crash state for PDR" 2017-07-26 19:22:54 -07:00
Linux Build Service Account
0bce290a42 Merge "hotplug cpu: ratelimit logs for thermal veto" 2017-07-26 19:22:53 -07:00
Linux Build Service Account
827f654338 Merge "msm: ipa3: disable clock gating for MISC" 2017-07-26 19:22:44 -07:00
Skylar Chang
00f9f948b0 msm: ipa3: add offline charging support
In offline charging mode, modem is not loaded so the proxy
IPA clock vote added by IPA driver on behalf of modem is
never released and this prolongs the charge time. Move the
proxy vote to IPA3_POST_INIT before rmnet_ipa driver init
completes.

Change-Id: I271c8e6916d0c3068f720ae81b67f0fc5c198b6f
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
2017-07-26 16:27:19 -07:00
Ashay Jaiswal
95e05ba592 power: qcom-step-chg: Add temperature based step-charging
It supports for temperature (JEITA) based step charging.
The solution samples the battery temperature periodically and
applies the FCC from a static look-up table.

There is a provision for timed hysteresis which is achieved using
a 5 second delayed work.

Change-Id: Ica18f2c812232d6938799dab16fb9f18bc14b48f
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2017-07-26 15:20:44 -07:00
Yue Ma
0e8dffdaf8 cnss2: Print string for firmware mode
This can clearly show the firmware mode sent through QMI message
in the logs to help debugging.

Signed-off-by: Yue Ma <yuem@codeaurora.org>
CRs-fixed: 2059087
Change-Id: I0b11808f00229ed557141226bc2510673a7a1ede
2017-07-26 10:51:59 -07:00
Anirudh Ghayal
3abd7de15e power: smb-lib: Update the FLOAT detection logic
An SDP may get detected as a FLOAT charger by PMIC APSD.
To handle this case do the following steps when a FLOAT
charger is detected -

1. Limit the ICL to 100mA and start USB enumeration
2. If enumeration succeeds, USB notifies a valid
   ICL and the charger updates ICL and charger-type to SDP.
3. If enumeration fails, USB notifies -ETIMEDOUT and
   charger applies ICL based on the Rp value.

CRs-Fixed: 2081457
Change-Id: I2747a42ed9f9531e83c53d781a8ae9baa9aa74d0
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2017-07-26 22:52:45 +05:30
Linux Build Service Account
1c9a156e41 Merge "ARM: dts: msm: enable DP functionality for SDA660 HDK platform" 2017-07-26 08:44:58 -07:00
Linux Build Service Account
e6cb8897ab Merge "msm: camera: Make use of mutex lock to avoid race condition" 2017-07-26 08:44:55 -07:00
Linux Build Service Account
bc72999165 Merge "msm: ais: sensor: validating the flash initialization parameters" 2017-07-26 08:44:54 -07:00
Linux Build Service Account
2991c52124 Merge "icnss: Consolidate logging message" 2017-07-26 08:44:53 -07:00
Linux Build Service Account
74d929874d Merge "drm/msm: Turn off hardware clock gating before reading A5XX registers" 2017-07-26 08:44:51 -07:00
Linux Build Service Account
123ada77d0 Merge "ARM: dts: msm: Add qseecom device node on msm8996 lfv platform" 2017-07-26 08:44:50 -07:00
Linux Build Service Account
67edc020df Merge "misc: qseecom: Support qseecom deferred probing" 2017-07-26 08:44:49 -07:00
Linux Build Service Account
7accc53e1b Merge "scsi: ufs: Serialise ufs clock gating and ungating" 2017-07-26 08:44:41 -07:00
Vevek Venkatesan
fc375bad6a input: misc: hbtp_input: fix memory corruption in list_del_entry
Fix memory corruption in the hbtp_input driver by adding
complete in the release routine to resolve the Kernel crash
in __list_del_entry corruption.

Signed-off-by: Vevek Venkatesan <vevekv@codeaurora.org>
Change-Id: I764923317f720137bfd4e7adfc6bf763a36911c3
2017-07-26 20:25:38 +05:30
Yuan Zhao
1260d2e765 msm: mdss: setup infoframe for all HDMI modes
Setup AVI infoframe for all HDMI modes otherwise
the sink does not turn on. For all non-CEA modes,
VIC value of zero shall be used as per the spec.

Change-Id: I4458c8aec093342ef6cdd02e51a188391f662db7
Signed-off-by: Yuan Zhao <yzhao@codeaurora.org>
2017-07-26 16:23:53 +08:00
zhaoyuan
d62fb81693 msm: mdss: do not update polarity for DSI interface
Polarity should be updated based on HDMI resolution
for HDMI display. However, DSI interface does not need
to update polarity.

CRs-Fixed: 2046790
Change-Id: I4a30fcd7ebec70224accd2178c14bd37d2059f4e
Signed-off-by: zhaoyuan <yzhao@codeaurora.org>
2017-07-26 00:30:47 -07:00
zhaoyuan
4234d719d9 ARM: dts: msm: enable DP functionality for SDA660 HDK platform
SDA660 HDK platform has DP hardware blocks, so enable it in the
device tree.

CRs-Fixed: 2064346
Change-Id: Ieb524e37ed2f4cdd5776759b00ec182378ff6ff5
Signed-off-by: zhaoyuan <yzhao@codeaurora.org>
2017-07-26 00:26:29 -07:00