Commit graph

582875 commits

Author SHA1 Message Date
Ashay Jaiswal
23d22ee4bf power: smb1351-charger: update drive to support parallel architecture
Re-organize SMB1351 charger driver to support new parallel charger
architecture.
- New property "POWER_SUPPLY_PROP_PARALLEL_MODE" exposes the parallel
  charger configuration, in this case it is USBIN-USBIN configuration.
- Property "POWER_SUPPLY_CHARGE_TYPE" is added to report the current
  charge type and is also used for parallel charger chip detection.

Change-Id: I05692b34daef244f89a365e03043ae2ffe42d9da
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2017-02-10 10:31:37 +05:30
Abhijeet Dharmapurikar
111ee8a2d1 power: qcom-charger: add support to detect parallel charger
Add support to detect presence of parallel charger chip by
requesting a register read via power_supply framework.
If parallel chip is absent then disable parallel charger.

Change-Id: Icfa4a774d344fde4c7d1f4ced772a707be85020d
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2017-02-10 10:16:15 +05:30
Ashay Jaiswal
bc82c4febc qcom: battery: add support to delay parallel enable
Add support to delay parallel enable until HVDCP detection
and authentication completes. This involves adding a new voter
which enables parallel charger under following condition:
For DCP: enable parallel path after HVDCP detection
times out.
For HVDCP: enable parallel path after HVDCP authentication
completes.

Change-Id: Ib1c740eee5c721a0c267f6a9bc924c58af4b2c1e
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2017-02-10 10:04:17 +05:30
Abhijeet Dharmapurikar
07b6e5b98f smb-lib: manage override in icl_callback
Currently we have only one path - the pd active setting path -  where
ICL_OVERRIDE gets set.

With the upcoming changes to manage connector temperature
mitigation and usbin-usbin parallel charger, the ICL_OVERRIDE is needed
to be set from these usecases.

So instead of creating a voter for ICL_OVERRIDE and putting the onus
on callsites to set it before calling their icl settings, it is best
to handle it in icl_callback.

Update the icl_callback to manage override and suspend in this way.

- Presence of voter signifies that the driver wants to enforce a
  value different than the hw default. Force an icl override.

- No voters signifies that the hw defaults are good, undo an override.

- For USB types that command a limit aka SDP and CDP, never override.

- never suspend if there are no clients.

Change-Id: I3ed01237b0bb2c028bec572d2905cabb03ce50a3
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2017-02-10 09:57:37 +05:30
Abhijeet Dharmapurikar
0591184767 smb-lib: Handle icl voter priorities between DCP, SDP and PD type
Cleanup the code such that when PD is activated, DCP_VOTER
and USB_PSY_VOTER (the voter for SDP and CDP types) are disabled.

While at it DCP_VOTER is intended to enforce a different value
from the hw defaults. Set it only when type is confirmed DCP.

Also to handle the situation when the PD profile allows to suspend
based on the phy, use a different voter PD_SUSPEND_SUPPORTED_VOTER
to activate that situation.

Change-Id: I0cb1a0aad9c94fdd233ec3103779e1a13449472e
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2017-02-10 09:56:36 +05:30
Tirupathi Reddy
18e54c2fda regulator: cprh-kbss: add support for sdm630 kbss cpr instances
sdm630 CPU CPR controllers support full hardware closed-loop CPR
operation also known as CPR hardening. Extend the cprh-kbss-regulator
driver to handle CPU subsystem specific power requirements of
the sdm630 chip.

CRs-Fixed: 1117353
Change-Id: Id2aa0674b0d9737907defd4b305ee70b74f65142
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
2017-02-10 09:55:09 +05:30
Sayali Lokhande
61f272f633 defconfig: msm: Enable CONFIG_MMC_RING_BUFFER for sdm660
Enable CONFIG_MMC_RING_BUFFER to support ring buffer
logging of legacy and CQ events for sdm660.

Change-Id: I91e7dc68b929c0bf03d76510a084ee89ca4cd030
Signed-off-by: Sayali Lokhande <sayalil@codeaurora.org>
2017-02-10 09:37:36 +05:30
Olav Haugan
df795ecb7c driver-core: cpu: Make isolate node read-only
We no longer support isolating a core using the isolate node. Remove
write-access to this node.

Change-Id: Ib51cf12066819ad295ce57f6ae8edf52b0a4e558
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2017-02-09 16:49:25 -08:00
Prashanth Bhatta
b70b942f24 icnss: For WDOG bite, shutdown after FW ready
When there is Modem WDOG bite, Q6 will not get chance to reset
the hardware and if shutdown is called as part of PD down
notification then freeing buffers already submitted to hardware
may cause exceptions as hardware may try to access DDR location
which is already freed.
Fix the issue by delaying the shutdown till FW ready happens and
hardware is reset to clean state this way buffers are freed after
hardware is in reset state.

CRs-fixed: 2000709
Change-Id: Iacea5e8b712dd4ca310e5b502e43f4beb99f6981
Signed-off-by: Prashanth Bhatta <bhattap@codeaurora.org>
2017-02-09 16:41:22 -08:00
Puja Gupta
97daa00ee4 soc: qcom: Add ssr states to service notifier notifications
Add more refined states with service notifier notification for clients
to be able to distinguish between different error scenarios.

CRs-Fixed: 2004229
Change-Id: Ibae1f2b0ba03f8cdcb14398d7d35b007fac1a150
Signed-off-by: Puja Gupta <pujag@codeaurora.org>
2017-02-09 16:40:17 -08:00
Karthikeyan Ramasubramanian
45c883260a spi: spi_qsd: Use the right device for dma_unmap_single operation
The unmap operation of a dma bounce buffer is performed using an incorrect
device compared to the map operation. This leads to a leaked bounce buffer
dma map.

Fix the device usage during the unmap operation.

CRs-Fixed: 1104864
Change-Id: I7da2484ce1f070a4545b9110e3602b4f39d7afdc
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@codeaurora.org>
2017-02-09 17:00:23 -07:00
Jordan Crouse
a808f9895c drm/msm: Use dma_sync_sg_for_device() to flush cache for new buffers
With the conversion of the master device to use the arm iommu
ops we lose the benefit of a cache flush using the dma_map_sg
trick. Plus we end up mapping all the GPU buffers into the master
DMA device which is admittedly sub optimal.

However it did end up mapping all the display buffers which
unintentionally worked. Put the map_sg() functions back into msm_gem.c
to make it intentionally work from now on.

Change-Id: Ic0dedbada1a8723fb47311189a6b7e11969427ee
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-02-09 16:30:11 -07:00
Liam Mark
0c384a5137 defconfig: msm: Enable BALANCE_ANON_FILE_RECLAIM
Enable BALANCE_ANON_FILE_RECLAIM for msmcortex debug
config as it is already enabled for msmcortex perf
config.

Change-Id: Ic77e297ecea2e7dda14c0b24b6e7a1856726843d
Signed-off-by: Liam Mark <lmark@codeaurora.org>
2017-02-09 15:28:54 -08:00
Linux Build Service Account
9c9289f600 Merge "msm: rndis_ipa: fix to debug file system init failure" 2017-02-09 13:16:13 -08:00
Linux Build Service Account
29c858c851 Merge "msm: ext_display: increase timeout value to 5 seconds" 2017-02-09 13:16:12 -08:00
Linux Build Service Account
6a319030aa Merge "defconfig: msm: Enable RCU_FAST_NO_HZ for msmcortex" 2017-02-09 13:16:11 -08:00
Linux Build Service Account
43ee8491ea Merge "ASoC: wcd934x: Update master clock sequence for wcd934x codec" 2017-02-09 13:16:09 -08:00
Linux Build Service Account
5a08a180fa Merge "ARM: dts: msm: Add MLCK routing for VI feedback path on msm8998" 2017-02-09 13:16:08 -08:00
Linux Build Service Account
62a0513d39 Merge "ASoC: msm8998: Add support for ANC headset detection" 2017-02-09 13:16:07 -08:00
Linux Build Service Account
1ad52ab53d Merge "ASoC: wcd934x: add DSD support for lineout path" 2017-02-09 13:16:06 -08:00
Linux Build Service Account
cbb135e300 Merge "ARM: dts: msm: Add support for ANC headset detection on MSM8998" 2017-02-09 13:16:05 -08:00
Linux Build Service Account
f95682ab99 Merge "ARM: dts: msm: enable dynamic fps for all video mode panels on sdm660" 2017-02-09 13:16:04 -08:00
Linux Build Service Account
70135dc083 Merge "mmc: block: Fix issue with deferred resume when CQ is enabled" 2017-02-09 13:16:03 -08:00
Linux Build Service Account
bf7be66d87 Merge "spcom: abort server pending rx when SP reset (SSR) detected" 2017-02-09 13:16:02 -08:00
Linux Build Service Account
e208f563ee Merge "ARM: dts: msm: Add fab-id property for PM660" 2017-02-09 13:15:54 -08:00
Linux Build Service Account
7d1b06177e Merge "qpnp-fg-gen3: fix ESR filter configuration" 2017-02-09 13:15:52 -08:00
Linux Build Service Account
dc51fe91f5 Merge "ASoC: qdsp6v2: Clear memory map handle during ADSP SSR" 2017-02-09 13:15:51 -08:00
Linux Build Service Account
12cba4a7d8 Merge "ASoC: Add support for ADIE RTC on SDM660 internal codec" 2017-02-09 13:15:50 -08:00
Linux Build Service Account
5ff85961b7 Merge "ASoC: msm: add Slimbus7 loopback volume mixer control" 2017-02-09 13:15:48 -08:00
Linux Build Service Account
f1fa109c74 Merge "ASoC: qdsp6v2: update afe topology to RTAC driver" 2017-02-09 13:15:47 -08:00
Linux Build Service Account
35f3a9f36e Merge "ASoC: msm: remove wrong return statement" 2017-02-09 13:15:46 -08:00
Linux Build Service Account
fe3ea7ec96 Merge "ASoC: wcd-mbhc: Reduce plug insert/remove pop for USB type-C analog audio" 2017-02-09 13:15:45 -08:00
Linux Build Service Account
6031e930ea Merge "msm: mdss: Fix advertising HDR capability" 2017-02-09 13:15:38 -08:00
Hemant Kumar
4def267067 usb: host: xhci: Fix bound check for interrupter number
Since max_interrupters flag includes primary interrupter as well,
update the bound check when this flag is being used for
secondary event ring clean-up/allocation.

Change-Id: I044c5a89fe17779eb847981cbf27e99b97e37d80
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2017-02-09 11:46:58 -08:00
Ram Chandrasekar
d7bb5b6274 ARM: dts: msm: Add alias name for secondary GPU sensor in MSM8998
Add alias name for the secondary GPU temperature sensor in MSM8998. This
alias information will be used by thermal-engine.

Change-Id: I4d3400efef8886153018435468526f88418ee0a0
Signed-off-by: Ram Chandrasekar <rkumbako@codeaurora.org>
2017-02-09 10:03:07 -07:00
Utkarsh Saxena
219214e306 msm: rndis_ipa: Fix to incorrect state transition
Add a spinlock to protect the state transitions in rndis ipa
driver.

Change-Id: Ia5eab252d9a53e6a2f4db07912967a5f466982a6
Acked-by: Chaitanya Pratapa <cpratapa@qti.qualcomm.com>
Acked-by: Javid Mohammed <mjavid@qti.qualcomm.com>
Signed-off-by: Utkarsh Saxena <usaxena@codeaurora.org>
Signed-off-by: Sridhar Ancha <sancha@codeaurora.org>
2017-02-09 21:41:03 +05:30
Utkarsh Saxena
0948cf59f9 msm: rndis_ipa: fix to debug file system init failure
Do not consider debug file system init failure as
functional failure.

Modify the code to proceed further
driver initialization.

Change-Id: I821af8970b6c2ced55d6464b8a7b56a458fa7d79
Acked-by: Javid Mohammed <mjavid@qti.qualcomm.com>
Signed-off-by: Utkarsh Saxena <usaxena@codeaurora.org>
2017-02-09 21:15:20 +05:30
Hardik Kantilal Patel
969473a9e0 icnss: Avoid DOMAIN_ATTR_ATOMIC setting during S1 bypass
While initializing the SMMU with DOMAIN_ATTR_ATOMIC attribute
iommu driver always vote for aggre2_noc_clk during suspend mode
which result into power penalty. To resolve this issue avoid
configuring DOMAIN_ATTR_ATOMIC attribute in S1_BYPASS mode.

CRs-fixed: 2004562
Change-Id: Ic5d4b2864f58098fd29da48e5f977434e356b1e0
Signed-off-by: Hardik Kantilal Patel <hkpatel@codeaurora.org>
2017-02-09 20:00:28 +05:30
Hardik Kantilal Patel
e44080d39f ARM: dts: msm: Add smmu-s1-bypass flag to icnss node for sdm630
Add smmu-s1-bypass flag to the icnss node. so based on target
requirement the user can configure different SMMU configuration.

CRs-fixed: 2004562
Change-Id: I04297b5dbc013a8df4603887794f98a8f8ea2bcc
Signed-off-by: Hardik Kantilal Patel <hkpatel@codeaurora.org>
2017-02-09 19:47:42 +05:30
Hardik Kantilal Patel
343538cd6c ARM: dts: msm: Add smmu-s1-bypass flag to icnss node for sdm660
Add smmu-s1-bypass flag to the icnss node. so based on target
requirement the user can configure different SMMU configuration.

CRs-fixed: 2004562
Change-Id: If44232baaeab27a1abc93126f65fe5ee6fca6cd4
Signed-off-by: Hardik Kantilal Patel <hkpatel@codeaurora.org>
2017-02-09 19:38:39 +05:30
Vijayavardhan Vennapusa
a799a397d2 USB: qc_rndis: Fix aggregation parameters settings issue
Currently driver does read max Transfer size from RNDIS_MSG_INIT
control message, when received from Host, but it is wrongly being
decoded due to wrong offset used. This leads dl_aggregation size set to
0 instead of required rndis_dl_aggr_size. Hence fix this by incrementing
tmp pointer for requestID to use correct offset to read max Transfer
size and set DL aggregation size correctly.

Also pass maxpkt_per_xfer as zero to rndis_qc_bind_config_vendor() so that
UL aggregation buffer size will be set to aggregation of 15 packets. This
helps in improving througput numbers.

Change-Id: Icc7506b57d26f82e6bf81f9d7dc1515cfbae6c82
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
2017-02-09 17:00:43 +05:30
Taniya Das
aff127cbf0 clk: qcom: update post div bits to be cleared for MMCC/GPU clocks
MMCC and GPU clocks needs the post div bits to be cleared, so that the
clock measure does not account for any previously set div values in the
debug mux.

Change-Id: I1123e566740518e287692797fa3ab6b316da3bf1
Signed-off-by: Taniya Das <tdas@codeaurora.org>
2017-02-09 16:59:43 +05:30
Taniya Das
f2b160b422 clk: qcom: Add support for post divider for debug mux
There could be cases where the post div in different debug muxes could be
set previously and not cleared, so add support to clear and set it, in case
required.

Change-Id: I15fedb4672179cb604804e7cbb0d6afc68bc473b
Signed-off-by: Taniya Das <tdas@codeaurora.org>
2017-02-09 16:59:43 +05:30
Manaf Meethalavalappu Pallikunhi
f4070db5b9 ARM: dts: msm: Disable CXIP LM feature for sdm630
CXIP LM feature is not needed for sdm630. So disable CXIP LM hardware
feature in KTM for sdm630. It disables hardware throttling for
predefined client of CX rail even if all participating clients set
their vote.

Change-Id: Ic1fff109ba05b4d8fdcf9b1795266fd26e9971d5
Signed-off-by: Manaf Meethalavalappu Pallikunhi <manafm@codeaurora.org>
2017-02-09 03:26:07 -08:00
Laxminath Kasam
bf1a09f949 ARM: dts: msm: Add audio support for SDM630, SDA630/660
Add audio internal and external codecs support in respective
SDM630, SDA630, SDA660 variants.

Change-Id: I5b5f4abe4455b1251ce368619998fc20685c0dca
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2017-02-09 16:51:45 +05:30
Manaf Meethalavalappu Pallikunhi
807c81db9e ARM: dts: msm: Update tsens for cluster0 mitigation profile for sdm630
Update tsens mapping for cluster0 mitigation profile based on
latest recommendation for sdm630. With new recommendation, tsens7 is
used for cluster0 mitigation profile.

Change-Id: Ia60fb7ff72504a9429fe0c75d0d8252fceeeb696
Signed-off-by: Manaf Meethalavalappu Pallikunhi <manafm@codeaurora.org>
2017-02-09 16:50:51 +05:30
Linux Build Service Account
dd6494d94e Merge "ASoC: codecs: fix out of bounds copy" 2017-02-09 03:12:04 -08:00
Linux Build Service Account
f357214ebe Merge "ASoC: jack: Fix buttons enum value" 2017-02-09 03:12:03 -08:00
Linux Build Service Account
1746e61595 Merge "ASoC: msm: add FE DAIs for HFP for SDM660" 2017-02-09 03:12:03 -08:00
Linux Build Service Account
71339e56bd Merge "ASoC: msm: Add support for 128KHz in the compress driver" 2017-02-09 03:12:02 -08:00