OSDN Git Service

sagit-ice-cold/kernel_xiaomi_msm8998.git
7 years agoMerge "regulator: qpnp-oledb: Add support for LAB_VREG_NOT_OK notifier"
Linux Build Service Account [Thu, 20 Apr 2017 02:27:27 +0000 (19:27 -0700)]
Merge "regulator: qpnp-oledb: Add support for LAB_VREG_NOT_OK notifier"

7 years agoMerge "regulator: qpnp-labibb: Handle LAB short circuit(SC) detection"
Linux Build Service Account [Thu, 20 Apr 2017 02:27:26 +0000 (19:27 -0700)]
Merge "regulator: qpnp-labibb: Handle LAB short circuit(SC) detection"

7 years agoMerge "usb: gadget: configfs: Replace strncpy with strlcpy"
Linux Build Service Account [Wed, 19 Apr 2017 18:41:42 +0000 (11:41 -0700)]
Merge "usb: gadget: configfs: Replace strncpy with strlcpy"

7 years agoMerge "leds: qpnp-flash-v2: Enable charger mitigation"
Linux Build Service Account [Wed, 19 Apr 2017 18:41:41 +0000 (11:41 -0700)]
Merge "leds: qpnp-flash-v2: Enable charger mitigation"

7 years agoMerge "arm64: cache: change ARCH_DMA_MINALIGN and L1_CACHE_SHIFT values"
Linux Build Service Account [Wed, 19 Apr 2017 18:41:36 +0000 (11:41 -0700)]
Merge "arm64: cache: change ARCH_DMA_MINALIGN and L1_CACHE_SHIFT values"

7 years agoMerge "ARM: dts: msm: update VDD_APC margin adjustments for msm8998v2"
Linux Build Service Account [Wed, 19 Apr 2017 18:41:35 +0000 (11:41 -0700)]
Merge "ARM: dts: msm: update VDD_APC margin adjustments for msm8998v2"

7 years agoMerge "defconfig: msm: enable vndbinder for sdm660 and msmcortex"
Linux Build Service Account [Wed, 19 Apr 2017 18:41:34 +0000 (11:41 -0700)]
Merge "defconfig: msm: enable vndbinder for sdm660 and msmcortex"

7 years agousb: gadget: configfs: Replace strncpy with strlcpy
Manu Gautam [Tue, 28 Mar 2017 05:58:24 +0000 (11:28 +0530)]
usb: gadget: configfs: Replace strncpy with strlcpy

Use safer version of strcpy i.e. strlcpy instead of
strncpy for NULL terminated strings.

Change-Id: I5e2800d1d539545744a1b1231e1d589a7c92797a
Signed-off-by: Manu Gautam <mgautam@codeaurora.org>
7 years agoregulator: qpnp-oledb: Add support for LAB_VREG_NOT_OK notifier
Kiran Gunda [Fri, 24 Mar 2017 10:18:51 +0000 (15:48 +0530)]
regulator: qpnp-oledb: Add support for LAB_VREG_NOT_OK notifier

Register a notifier callback for LAB_VREG_NOT_OK, which is triggered
by the LABIBB driver when short circuit(SC) is detected on the LAB
rail. Disable the OLEDB module upon receiving the LAB_VREG_NOT_OK
notification.

Change-Id: Ia3cc19d9a3c2f32acc413677a9ea4b3100464cd2
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
7 years agoregulator: qpnp-labibb: Handle LAB short circuit(SC) detection
Kiran Gunda [Fri, 24 Mar 2017 06:59:39 +0000 (12:29 +0530)]
regulator: qpnp-labibb: Handle LAB short circuit(SC) detection

On certain PMICs, there is no short circuit (SC) detection available
in LAB module. Add support to detect it manually and disable LAB/IBB
module upon SC detection. In addition, notify it to OLEDB driver to
disable OLEDB module.

Change-Id: I2a9dc5b1ae8ece45c85b3992026c7f389fd4d135
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
7 years agodefconfig: msm: enable vndbinder for sdm660 and msmcortex
Neeraj Upadhyay [Tue, 18 Apr 2017 17:30:10 +0000 (23:00 +0530)]
defconfig: msm: enable vndbinder for sdm660 and msmcortex

Restore default android binder domains. As 'binder,hwbinder,vndbinder'
is the default, this change enables vndbinder.

Change-Id: I48ce75fc6090ad3d9a5b66ca437acbde5a913751
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
7 years agoMerge "qcom: smblib: report discharging in case of input OV"
Linux Build Service Account [Wed, 19 Apr 2017 05:19:29 +0000 (22:19 -0700)]
Merge "qcom: smblib: report discharging in case of input OV"

7 years agoMerge "msm: ipa3: allocate memory for DMA task on init"
Linux Build Service Account [Wed, 19 Apr 2017 05:19:28 +0000 (22:19 -0700)]
Merge "msm: ipa3: allocate memory for DMA task on init"

7 years agoMerge "msm: pcie: support QGIC MSI with SMMU fastmap enabled"
Linux Build Service Account [Wed, 19 Apr 2017 05:19:27 +0000 (22:19 -0700)]
Merge "msm: pcie: support QGIC MSI with SMMU fastmap enabled"

7 years agoMerge "msm: mdss: Wait for VSYNC after continuous splash handoff"
Linux Build Service Account [Wed, 19 Apr 2017 05:19:25 +0000 (22:19 -0700)]
Merge "msm: mdss: Wait for VSYNC after continuous splash handoff"

7 years agoMerge "usb: phy: qmp: Remove extra debug log"
Linux Build Service Account [Wed, 19 Apr 2017 05:19:24 +0000 (22:19 -0700)]
Merge "usb: phy: qmp: Remove extra debug log"

7 years agoMerge "power: smb-lib: WA to fix legacy cable detection"
Linux Build Service Account [Wed, 19 Apr 2017 05:19:21 +0000 (22:19 -0700)]
Merge "power: smb-lib: WA to fix legacy cable detection"

7 years agoMerge "soc: qcom: qpnp-haptic: Optimize updating RATE_CFG registers"
Linux Build Service Account [Wed, 19 Apr 2017 05:19:20 +0000 (22:19 -0700)]
Merge "soc: qcom: qpnp-haptic: Optimize updating RATE_CFG registers"

7 years agoMerge "msm: mdss: reset cdm block after used"
Linux Build Service Account [Wed, 19 Apr 2017 05:19:18 +0000 (22:19 -0700)]
Merge "msm: mdss: reset cdm block after used"

7 years agoMerge "lowmemorykiller: fix scan_mutex contention"
Linux Build Service Account [Tue, 18 Apr 2017 20:57:03 +0000 (13:57 -0700)]
Merge "lowmemorykiller: fix scan_mutex contention"

7 years agoMerge "soc: qcom: spcom: validate rx_buf in spcom_rx before usage"
Linux Build Service Account [Tue, 18 Apr 2017 20:57:02 +0000 (13:57 -0700)]
Merge "soc: qcom: spcom: validate rx_buf in spcom_rx before usage"

7 years agoMerge "wil6210: add option to load FTM FW"
Linux Build Service Account [Tue, 18 Apr 2017 20:57:00 +0000 (13:57 -0700)]
Merge "wil6210: add option to load FTM FW"

7 years agoMerge "mm: separate out the invocation of lowmemorykiller shrinker"
Linux Build Service Account [Tue, 18 Apr 2017 20:56:59 +0000 (13:56 -0700)]
Merge "mm: separate out the invocation of lowmemorykiller shrinker"

7 years agoMerge "wil6210: Improve AP stop handling"
Linux Build Service Account [Tue, 18 Apr 2017 20:56:58 +0000 (13:56 -0700)]
Merge "wil6210: Improve AP stop handling"

7 years agoMerge "regulator: qpnp-oledb: Add revid support for OLEDB driver"
Linux Build Service Account [Tue, 18 Apr 2017 20:56:56 +0000 (13:56 -0700)]
Merge "regulator: qpnp-oledb: Add revid support for OLEDB driver"

7 years agoMerge "power: smb-lib: start CC2 removal WA when VBUS is low"
Linux Build Service Account [Tue, 18 Apr 2017 20:56:55 +0000 (13:56 -0700)]
Merge "power: smb-lib: start CC2 removal WA when VBUS is low"

7 years agoMerge "ANDROID: Refactor fs readpage/write tracepoints."
Linux Build Service Account [Tue, 18 Apr 2017 20:56:54 +0000 (13:56 -0700)]
Merge "ANDROID: Refactor fs readpage/write tracepoints."

7 years agoMerge "ANDROID: fs: FS tracepoints to track IO."
Linux Build Service Account [Tue, 18 Apr 2017 20:56:54 +0000 (13:56 -0700)]
Merge "ANDROID: fs: FS tracepoints to track IO."

7 years agoMerge "crypto: msm: Fix buffer overflow issue"
Linux Build Service Account [Tue, 18 Apr 2017 20:56:53 +0000 (13:56 -0700)]
Merge "crypto: msm: Fix buffer overflow issue"

7 years agoMerge "qcom: qnovo: allow charger error conditions to disable qnovo"
Linux Build Service Account [Tue, 18 Apr 2017 20:56:51 +0000 (13:56 -0700)]
Merge "qcom: qnovo: allow charger error conditions to disable qnovo"

7 years agomsm: ipa3: allocate memory for DMA task on init
Skylar Chang [Fri, 14 Apr 2017 22:59:50 +0000 (15:59 -0700)]
msm: ipa3: allocate memory for DMA task on init

On some conditions, such as reboot, the allocation context
for DMA task might be a user space processes with SIGKILL.
Pre allocate this buffer to avoid DMA allocation failure.

Change-Id: Ie0c5ecbb7aebbf03c42c2f8976aad40e9987fd4a
CRs-Fixed: 2032907
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
7 years agoarm64: cache: change ARCH_DMA_MINALIGN and L1_CACHE_SHIFT values
Imran Khan [Mon, 3 Apr 2017 07:41:18 +0000 (13:11 +0530)]
arm64: cache: change ARCH_DMA_MINALIGN and L1_CACHE_SHIFT values

This reverts 'commit 97303480753e ("arm64: Increase the max
granular size") and also sets ARM_DMA_MINALIGN to 128.
ARCH_DMA_MINALIGN is dependent on L1_CACHE_SHIFT but it should
be set to maximum *known* cache line size on ARMv8 systems to
avoid DMA coherecy issues. So setting ARM_DMA_MINALIGN to 128.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Change-Id: Ie771d1b693789fce8793538a6efddfe68e2a0043
Patch-mainline: linux-kernel @ 21/03/16, 17:14:03
Signed-off-by: Imran Khan <kimran@codeaurora.org>
7 years agoMerge "ARM: dts: msm: Add reserved channel for MSM8998/SDM660/SDM630"
Linux Build Service Account [Tue, 18 Apr 2017 13:30:00 +0000 (06:30 -0700)]
Merge "ARM: dts: msm: Add reserved channel for MSM8998/SDM660/SDM630"

7 years agoMerge "ASoC: msm: qdsp6v2: Enable AFE sidetone based on mixer ctl setting"
Linux Build Service Account [Tue, 18 Apr 2017 13:29:59 +0000 (06:29 -0700)]
Merge "ASoC: msm: qdsp6v2: Enable AFE sidetone based on mixer ctl setting"

7 years agoMerge "ASoC: msm8998: Add check before dereferencing pointer"
Linux Build Service Account [Tue, 18 Apr 2017 13:29:45 +0000 (06:29 -0700)]
Merge "ASoC: msm8998: Add check before dereferencing pointer"

7 years agoMerge "clk: qcom: Update the hmss_gpll0_clk_src to 300MHz"
Linux Build Service Account [Tue, 18 Apr 2017 13:29:44 +0000 (06:29 -0700)]
Merge "clk: qcom: Update the hmss_gpll0_clk_src to 300MHz"

7 years agoMerge "qcom: smb2: Fix FCC/Float voltage configuration from device tree"
Linux Build Service Account [Tue, 18 Apr 2017 13:29:43 +0000 (06:29 -0700)]
Merge "qcom: smb2: Fix FCC/Float voltage configuration from device tree"

7 years agoMerge "spmi: pmic-arb: Reserve a channel for debug port"
Linux Build Service Account [Tue, 18 Apr 2017 13:29:42 +0000 (06:29 -0700)]
Merge "spmi: pmic-arb: Reserve a channel for debug port"

7 years agoMerge "defconfig: msmcortex: Enable 8021Q config for APQ8098"
Linux Build Service Account [Tue, 18 Apr 2017 13:29:41 +0000 (06:29 -0700)]
Merge "defconfig: msmcortex: Enable 8021Q config for APQ8098"

7 years agoMerge "msm: isp: initialize pd stats buffer index"
Linux Build Service Account [Tue, 18 Apr 2017 13:29:40 +0000 (06:29 -0700)]
Merge "msm: isp: initialize pd stats buffer index"

7 years agoMerge "msm: mdss: wait for one commit transfer for command mode after resume"
Linux Build Service Account [Tue, 18 Apr 2017 13:29:40 +0000 (06:29 -0700)]
Merge "msm: mdss: wait for one commit transfer for command mode after resume"

7 years agoMerge "msm: camera: isp: Detect dual camera out of sync using time"
Linux Build Service Account [Tue, 18 Apr 2017 13:29:31 +0000 (06:29 -0700)]
Merge "msm: camera: isp: Detect dual camera out of sync using time"

7 years agousb: phy: qmp: Remove extra debug log
Liangliang Lu [Tue, 18 Apr 2017 10:44:03 +0000 (18:44 +0800)]
usb: phy: qmp: Remove extra debug log

Remove extra debug log to keep code clean.

Change-Id: I70907bb5530574386c60d14be24e13ee7ac7015f
Signed-off-by: Liangliang Lu <luliang@codeaurora.org>
7 years agosoc: qcom: spcom: validate rx_buf in spcom_rx before usage
Ofir Cohen [Mon, 3 Apr 2017 14:28:55 +0000 (17:28 +0300)]
soc: qcom: spcom: validate rx_buf in spcom_rx before usage

Checking for rx_buf validity before performing copy operation.

Change-Id: I4651a8cc822fd1537bd92f01bf59ac3b5a500b3a
Signed-off-by: Ofir Cohen <ofirc@codeaurora.org>
7 years agoregulator: qpnp-oledb: Add revid support for OLEDB driver
Kiran Gunda [Tue, 28 Mar 2017 05:57:59 +0000 (11:27 +0530)]
regulator: qpnp-oledb: Add revid support for OLEDB driver

Add PMIC revid support to identify the PMIC subtype for OLEDB driver.
This is useful to enable the functionalities/features that are specific to
certain PMICs like PM660A.

Change-Id: I4539955abb29fe37256e21ac507db646953e0abf
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
7 years agoARM: dts: msm: Add reserved channel for MSM8998/SDM660/SDM630
Kiran Gunda [Mon, 17 Apr 2017 05:21:28 +0000 (10:51 +0530)]
ARM: dts: msm: Add reserved channel for MSM8998/SDM660/SDM630

Channel 511 is used for debug port on MSM8998/SDM660/SDM630
targets. Reserve the same to avoid the access from other
peripherals.

Change-Id: I928916b7d61793a07e9a3b2e1c2127a247c71730
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
7 years agodefconfig: msmcortex: Enable 8021Q config for APQ8098
Luo Jie [Thu, 6 Apr 2017 07:39:59 +0000 (15:39 +0800)]
defconfig: msmcortex: Enable 8021Q config for APQ8098

8021Q enables kernel to handle VLAN packets, which is necessary
for the VLAN feature of alx.

Change-Id: I57c4bf7a40c5ad06b3c7414ae51691f006841ab9
Signed-off-by: Luo Jie <luoj@codeaurora.org>
7 years agoleds: qpnp-flash-v2: Enable charger mitigation
Ankit Sharma [Wed, 22 Mar 2017 13:34:52 +0000 (19:04 +0530)]
leds: qpnp-flash-v2: Enable charger mitigation

When the charger mitigation is configured based on SW,
enable it locally when the total brightness (or current
level) of all torch/flash LED devices is greater than 1 A.

CRs-Fixed: 2011199
Change-Id: I8336b3201f0780855c3dc3633179c398b9f62162
Signed-off-by: Ankit Sharma <ansharma@codeaurora.org>
7 years agospmi: pmic-arb: Reserve a channel for debug port
Kiran Gunda [Fri, 14 Apr 2017 12:01:48 +0000 (17:31 +0530)]
spmi: pmic-arb: Reserve a channel for debug port

Do not keep the channel reserved for debug port in the
ppid to apid mapping table. This is to avoid accessing
that particular channel during the read/write/irq operations.

Change-Id: I8f49d1d87978a5b68ea711d3e30606d72fd09f73
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
7 years agoclk: qcom: Update the hmss_gpll0_clk_src to 300MHz
Taniya Das [Tue, 18 Apr 2017 06:21:23 +0000 (11:51 +0530)]
clk: qcom: Update the hmss_gpll0_clk_src to 300MHz

The GPLL0 source to the CPU subsystem requires 300MHz for OSM to use the
clock source. OSM internally cannot set the RCGR divider, so set the RCG to
300MHz at GCC.

Change-Id: I7a781c69656410eb4ce30126789dbaacf815e8ec
Signed-off-by: Taniya Das <tdas@codeaurora.org>
7 years agomsm: isp: initialize pd stats buffer index
Srikanth Uyyala [Wed, 12 Apr 2017 09:15:33 +0000 (14:45 +0530)]
msm: isp: initialize pd stats buffer index

intialization of pd_stats buffer index during open node,
and after stats buf_divert.

Change-Id: I499371ddb4eddd74b759720d553164006c223f8a
Signed-off-by: Srikanth Uyyala <suyyala@codeaurora.org>
7 years agomm: separate out the invocation of lowmemorykiller shrinker
Vinayak Menon [Fri, 14 Apr 2017 06:45:18 +0000 (12:15 +0530)]
mm: separate out the invocation of lowmemorykiller shrinker

The commit '6b4f77 (mm: vmscan: invoke slab shrinkers from shrink_zone())'
fixed the invocation of shrinkers but resulted in lowmemorykiller shrinker
being called more. Reduce the number of lowmemorykiller shrinker
invocations by separating out the lowmemorykiller shrinker from
shrink_slab. This will make lowmemorykiller invoked only once for all zones
reclaimed in the direct reclaim path, and once for each zone in the kswap
path. As a consequence the eligible pages passed to shrink_slab_lmk is now
the reclaimable pages of all zones. Reducing the number of lowmemorykiller
invocations reduces the unnecessary time spent in lowmemorykiller and thus
contention or failures on lowmemorykiller's scan_mutex.

Change-Id: Iaabb9e441711f1dc804980b5853b64b3f214698d
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
7 years agoqcom: smb2: Fix FCC/Float voltage configuration from device tree
Ashay Jaiswal [Sat, 15 Apr 2017 12:07:55 +0000 (17:37 +0530)]
qcom: smb2: Fix FCC/Float voltage configuration from device tree

FCC and Float voltage is configured by battery driver using
power_supply framework (main_psy), re-run FCC/FV election once
main_psy is available to ensure FCC/Float voltage is configured
and reflected on hardware.
While at it, add check for valid "pl_psy" before using it.

CRs-fixed: 2028082
Change-Id: I2f5dc174eacf325ba27186b07c89bb7d438f061b
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
7 years agolowmemorykiller: fix scan_mutex contention
Prakash Gupta [Tue, 18 Apr 2017 02:02:20 +0000 (07:32 +0530)]
lowmemorykiller: fix scan_mutex contention

A livelock can be created in the system by lowmemorykiller trying to kill
the same task again and again.  Below is the livelock condition.

P0 -> binder_main_lock(W)
P1 -> binder_main_lock(T)-> mmap_sem(W)
P2 -> mmap_sem(T) -> lowmem_scan::scan_mutex(W)
P3 -> lowmem_scan::scan_mutex(T) -> send SIGKILL P0

Here multiple tasks are contending on scan_mutex, and binder_main_lock.
Change lowmem_scan mutex_lock with mutex_trylock, so in case of lowmem_scan
lock contention, task will be allowed to reclaim from other shrinkers. This
will also maintain the serialization of lowmemorykiller trigger.

If a task is pending MEMDIE'ing, remove sleep before falling back on other
shrinkers.

If the task selected to be killed is MEMDIE'ing and in un-interruptible
sleep state, do not repeat kill but fallback on other shrinkers without any
delay.

Change-Id: I12131622f7fa7b422c6d5d09f782af848300e412
Signed-off-by: Prakash Gupta <guptap@codeaurora.org>
7 years agoqcom: smblib: report discharging in case of input OV
Harry Yang [Mon, 17 Apr 2017 23:41:19 +0000 (16:41 -0700)]
qcom: smblib: report discharging in case of input OV

The register BATTERY_CHARGER_STATUS continues to show charging state
(like FULLON or TAPER mode) in cases where charging was paused due
to input OV. Look at BATTERY_CHARGER_STATUS_7_REG to determine if
charging was paused.

This fix modifies previous similar change for JEITA hard condition but
continue to cover the case.

Change-Id: Ibc5f4f5e85651708b656f06814008b0c319db02d
Signed-off-by: Harry Yang <harryy@codeaurora.org>
7 years agopower: smb-lib: WA to fix legacy cable detection
Abhijeet Dharmapurikar [Tue, 18 Apr 2017 00:36:14 +0000 (17:36 -0700)]
power: smb-lib: WA to fix legacy cable detection

Currently a legacy cable is always assumed which causes decreased
performance from non-legacy HVDCP adapters with 10k ohm Rp.

Fix this by disabling and re-enabling Type-C to rerun the legacy cable
detection.

Moreover, the legacy cable IRQs are not used and cause unnecessary
type-c-change IRQs to fire. Disable them.

CRs-Fixed: 2020132
Change-Id: I57fc3762251ead028298f01b06d66f52fd119c6b
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
7 years agopower: smb-lib: cache USB Type-C status
Abhijeet Dharmapurikar [Mon, 17 Apr 2017 19:26:26 +0000 (12:26 -0700)]
power: smb-lib: cache USB Type-C status

Currently the USB Type-C status is retrieved from the hardware in real
time. The Type-C change IRQ should trigger on every change of the Type-C
status, therefore it is not necessary to read the status registers
multiple times if a Type-C change IRQ has not triggered. Furthermore,
workarounds which force UFP/DFP mode, or disable Type-C altogether could
mislead the software into thinking a removal has happened.

Cache all of the USB Type-C status registers upon receiving a USB Type-C
change IRQ, and use the cached status where appropriate.

CRs-Fixed: 2020132
Change-Id: I99f2ff29633207898ae803672162db0c3cec80dc
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
7 years agopower: qcom: lock USB removal
Abhijeet Dharmapurikar [Mon, 17 Apr 2017 19:15:19 +0000 (12:15 -0700)]
power: qcom: lock USB removal

During USB removal a lot of cleanup happens; votables are reset, flags
are cleared, etc. After the cleanup is finished there is a chance that
USB power supply consumers may set properties before getting the USB
removal notification. This can lead to many problems where ICL limits
are set based on the previous insertion, or APSD is disabled due to a
late setting of PD_ACTIVE.

Introduce a lock which prevents USB power supply consumers from setting
properties when USB has been removed. This lock will ensure that the
next insertion starts with a clean slate.

CRs-Fixed: 2020132
Change-Id: I05a4145289b6097e41afc30aa09782722fa03fb6
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
7 years agopower: smb-lib: cleanup everything upon USB removal
Nicholas Troast [Wed, 22 Mar 2017 21:44:49 +0000 (14:44 -0700)]
power: smb-lib: cleanup everything upon USB removal

Currently it is expected upon USB removal that consumers will receive a
notification that USB has been removed and will cleanup after
themselves. Unfortunately this makes it very difficult to keep track of
all of the necessary cleanup steps upon removal.

Also, in preparation of not allowing consumers to set properties after a
USB removal has happened it is now the responsibility of the charger
driver to cleanup on their behalf.

Moreover, since we don't have a separate removal/insertion interrupt,
the removal/insertion code may run even if the typeC cable is not
physically inserted/removed. Fix it by tracking a typec_present flag.

CRs-Fixed: 2020132
Change-Id: Ia514abaa4e12f72daec17fd1e95f3c51cc38a15f
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
7 years agopower: smb-lib: start CC2 removal WA when VBUS is low
Abhijeet Dharmapurikar [Mon, 17 Apr 2017 21:52:46 +0000 (14:52 -0700)]
power: smb-lib: start CC2 removal WA when VBUS is low

Currently the CC2 removal workaround starts whenever PD issues a hard
reset. When PD issues a hard reset it is not guaranteed that VBUS will
fall since the source may not even be PD capable.

The CC2 removal workaround should only run during the time that VBUS is
low and CC is debounced.

Fix this by scheduling the CC2 removal workaround when VBUS falls and CC
is debounced, and cancel the workaround when either VBUS rises, or the
removal detection is successful.

CRs-Fixed: 2020132
Change-Id: I6475d37911d90805ed8b3bb4b3a26a9f7557ebd6
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
7 years agoASoC: msm: qdsp6v2: Enable AFE sidetone based on mixer ctl setting
Vikram Panduranga [Wed, 8 Mar 2017 02:03:07 +0000 (18:03 -0800)]
ASoC: msm: qdsp6v2: Enable AFE sidetone based on mixer ctl setting

AFE sidetone is currently enabled based on a combination
of mixer control setting and default config in ACDB.
This change will limit enablement to mixer control setting alone.

Change-Id: I038d51177adc3e1da45ea7fdf9386362390f181d
Signed-off-by: Vikram Panduranga <vpandura@codeaurora.org>
7 years agoMerge "leds: qpnp-flash-v2: Change minimum current configuration"
Linux Build Service Account [Mon, 17 Apr 2017 20:19:31 +0000 (13:19 -0700)]
Merge "leds: qpnp-flash-v2: Change minimum current configuration"

7 years agoANDROID: Refactor fs readpage/write tracepoints.
Mohan Srinivasan [Fri, 3 Feb 2017 23:48:03 +0000 (15:48 -0800)]
ANDROID: Refactor fs readpage/write tracepoints.

Refactor the fs readpage/write tracepoints to move the
inode->path lookup outside the tracepoint code, and pass a pointer
to the path into the tracepoint code instead. This is necessary
because the tracepoint code runs non-preemptible. Thanks to
Trilok Soni for catching this in 4.4.

Change-Id: I7486c5947918d155a30c61d6b9cd5027cf8fbe15
Git-commit: d854b688907b34fcab97fc3b58000084255ee53a
Git-repo: https://android.googlesource.com/kernel/common/
Signed-off-by: Mohan Srinivasan <srmohan@google.com>
Signed-off-by: Runmin Wang <runminw@codeaurora.org>
7 years agoANDROID: fs: FS tracepoints to track IO.
Mohan Srinivasan [Tue, 20 Sep 2016 00:33:50 +0000 (17:33 -0700)]
ANDROID: fs: FS tracepoints to track IO.

Adds tracepoints in ext4/f2fs/mpage to track readpages/buffered
write()s. This allows us to track files that are being read/written
to PIDs.

Change-Id: I26bd36f933108927d6903da04d8cb42fd9c3ef3d
Signed-off-by: Mohan Srinivasan <srmohan@google.com>
Git-commit: 32cbbe59538d2dd0b77822cc27ce32ca487c467d
Git-repo: https://android.googlesource.com/kernel/common/
[runminw@codeaurora.org: resolve trivial merge conflicts]
Signed-off-by: Runmin Wang <runminw@codeaurora.org>
7 years agoMerge "ARM: dts: msm: Configure pin state for SMB1381 interrupt"
Linux Build Service Account [Mon, 17 Apr 2017 13:01:42 +0000 (06:01 -0700)]
Merge "ARM: dts: msm: Configure pin state for SMB1381 interrupt"

7 years agoMerge "soc:qcom: Synchronize service notifier task's"
Linux Build Service Account [Mon, 17 Apr 2017 13:01:41 +0000 (06:01 -0700)]
Merge "soc:qcom: Synchronize service notifier task's"

7 years agoMerge "core_ctl: Harden the adjustment_possible() check for unisolation"
Linux Build Service Account [Mon, 17 Apr 2017 13:01:39 +0000 (06:01 -0700)]
Merge "core_ctl: Harden the adjustment_possible() check for unisolation"

7 years agoMerge "usb: gadget: ffs: Fix runtime PM usage count for multiple set_alt"
Linux Build Service Account [Mon, 17 Apr 2017 13:01:38 +0000 (06:01 -0700)]
Merge "usb: gadget: ffs: Fix runtime PM usage count for multiple set_alt"

7 years agoMerge "drivers: qcom: ultrasound: check concurrent device open operations"
Linux Build Service Account [Mon, 17 Apr 2017 13:01:37 +0000 (06:01 -0700)]
Merge "drivers: qcom: ultrasound: check concurrent device open operations"

7 years agoMerge "ARM: dts: msm: Enable register read based esd on sdm660 and sdm630"
Linux Build Service Account [Mon, 17 Apr 2017 13:01:36 +0000 (06:01 -0700)]
Merge "ARM: dts: msm: Enable register read based esd on sdm660 and sdm630"

7 years agoMerge "cpu-hotplug: Fix false error message in cpu_up()"
Linux Build Service Account [Mon, 17 Apr 2017 13:01:35 +0000 (06:01 -0700)]
Merge "cpu-hotplug: Fix false error message in cpu_up()"

7 years agoMerge "defconfig: msm: enable page poisoning by default"
Linux Build Service Account [Mon, 17 Apr 2017 13:01:32 +0000 (06:01 -0700)]
Merge "defconfig: msm: enable page poisoning by default"

7 years agoMerge "mm: allow page poisoning to be enabled by default."
Linux Build Service Account [Mon, 17 Apr 2017 13:01:31 +0000 (06:01 -0700)]
Merge "mm: allow page poisoning to be enabled by default."

7 years agomsm: mdss: reset cdm block after used
zhaoyuan [Thu, 23 Mar 2017 06:06:41 +0000 (14:06 +0800)]
msm: mdss: reset cdm block after used

After cdm has been used, need to reset cdm block,
or the next HDMI device will be affected by the
cdm config.

Change-Id: I4eb879202cc3547d9149b3352377c3395ebfe6b3
Signed-off-by: zhaoyuan <yzhao@codeaurora.org>
7 years agosoc:qcom: Synchronize service notifier task's
Avaneesh Kumar Dwivedi [Wed, 12 Apr 2017 13:31:10 +0000 (19:01 +0530)]
soc:qcom: Synchronize service notifier task's

Queue the msg receive task in service notifier queue
so that it does not run concurrently with other notifier task.
This avoid an issue where adsp ssr is stuck due to deadlock
between msg receive and service arrive task.

Change-Id: I6ef9b765ae74eeb32021c2848ffc06d70df19c1b
Signed-off-by: Avaneesh Kumar Dwivedi <akdwived@codeaurora.org>
7 years agodrivers: qcom: ultrasound: check concurrent device open operations
Divya Ojha [Thu, 30 Mar 2017 04:55:15 +0000 (10:25 +0530)]
drivers: qcom: ultrasound: check concurrent device open operations

Make opened device count atomic variable to avoid probable race
condition. Race condition leads to memory leak and list corruption.

Change-Id: I4da98f27d36f616bc8fa7b1a848c20cc7eea04e5
Signed-off-by: Divya Ojha <dojha@codeaurora.org>
7 years agoMerge "qcom: smb-lib: rerun APSD on insertion for micro USB mode"
Linux Build Service Account [Mon, 17 Apr 2017 04:49:19 +0000 (21:49 -0700)]
Merge "qcom: smb-lib: rerun APSD on insertion for micro USB mode"

7 years agocnss_prealloc: Remove WARN_ON
Prashanth Bhatta [Thu, 6 Apr 2017 19:40:16 +0000 (12:40 -0700)]
cnss_prealloc: Remove WARN_ON

WARN_ON is unnecessary if pre-alloc table doesn't have any free
memory. Remove the WARN_ON as error log is enough to find out
missing entry.

Change-Id: I5a46e1f259e88d1a19f05195f5d7bb0745d072c3
CRs-fixed: 2030272
Signed-off-by: Prashanth Bhatta <bhattap@codeaurora.org>
7 years agoARM: dts: msm: Configure pin state for SMB1381 interrupt
Yingwei Zhao [Fri, 14 Apr 2017 10:00:28 +0000 (18:00 +0800)]
ARM: dts: msm: Configure pin state for SMB1381 interrupt

GPIO21 is connected to SMB1381 STAT pin for interrupt detection,
configure it to pull up for sensing SMB1381's interrupt.

CRs-Fixed: 2033882
Change-Id: Ib88aac4acb3b1094adb13839cccf1aa27903b9c7
Signed-off-by: Yingwei Zhao <cyizhao@codeaurora.org>
7 years agoqcom: smb-lib: rerun APSD on insertion for micro USB mode
Ashay Jaiswal [Fri, 14 Apr 2017 04:12:32 +0000 (09:42 +0530)]
qcom: smb-lib: rerun APSD on insertion for micro USB mode

In case of very slow insertion of SDP/DCP there is a possibility
that D+/D- makes contact while APSD is in progress. This will
result in an incorrect type detection.
Fix this by doing a APSD rerun after charger-type detection is
complete.

CRs-Fixed: 2032590
Change-Id: I0037b90f29dbe65a2cdb2771d5caceff77862f03
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
7 years agoMerge "qcom: smb2: ensure QC adapter is at 5V at shutdown"
Linux Build Service Account [Sun, 16 Apr 2017 06:11:11 +0000 (23:11 -0700)]
Merge "qcom: smb2: ensure QC adapter is at 5V at shutdown"

7 years agocore_ctl: Harden the adjustment_possible() check for unisolation
Pavankumar Kondeti [Thu, 13 Apr 2017 11:28:57 +0000 (16:58 +0530)]
core_ctl: Harden the adjustment_possible() check for unisolation

When the need for CPUs is more than the active CPUs and there are some
isolated CPUs, we wakeup the core_ctl thread to unisolate some CPUs.
The core_ctl task can't unisolate any CPU if all of them are isolated
by other clients. Track the number of isolated CPUs by core_ctl and
wakeup the core_ctl task when adjustment is really possible.

Change-Id: I11ef10860532df25cbde572aabd4b925320db8fe
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
7 years agocore_ctl: Update cluster->active_cpus in eval_need()
Pavankumar Kondeti [Thu, 13 Apr 2017 10:15:11 +0000 (15:45 +0530)]
core_ctl: Update cluster->active_cpus in eval_need()

The cluster->active_cpus is not updated in eval_need(). The new need
for CPUs is compared against the previous cluster->active_cpus. If
another client isolates a CPU, cluster->active_cpus becomes stale and
we fail to detect the change in need for CPUs.

Change-Id: Ib58b8f0bd03dd2b4a174de2ac54eb0c60c59f9f7
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
7 years agocore_ctl: Handle only CPU_ONLINE and CPU_DEAD notifications
Pavankumar Kondeti [Thu, 13 Apr 2017 13:28:56 +0000 (18:58 +0530)]
core_ctl: Handle only CPU_ONLINE and CPU_DEAD notifications

We are interested in only CPU_ONLINE and CPU_DEAD notifications. Don't
do anything when other notifications arrive.

Change-Id: Iea2e0e1c93e67ef278ee7c5a9813fbab6cea5c74
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
7 years agoMerge "ANDROID: binder: add hwbinder,vndbinder to BINDER_DEVICES."
Linux Build Service Account [Sat, 15 Apr 2017 05:59:22 +0000 (22:59 -0700)]
Merge "ANDROID: binder: add hwbinder,vndbinder to BINDER_DEVICES."

7 years agoMerge "android: binder: move global binder state into context struct."
Linux Build Service Account [Sat, 15 Apr 2017 05:59:21 +0000 (22:59 -0700)]
Merge "android: binder: move global binder state into context struct."

7 years agoMerge "power: qpnp-smb2: Specify the min/max charger switching frequency"
Linux Build Service Account [Fri, 14 Apr 2017 22:19:42 +0000 (15:19 -0700)]
Merge "power: qpnp-smb2: Specify the min/max charger switching frequency"

7 years agoMerge "soc: qcom: remove debugfs interface from ssr, service locator & notifier"
Linux Build Service Account [Fri, 14 Apr 2017 22:19:41 +0000 (15:19 -0700)]
Merge "soc: qcom: remove debugfs interface from ssr, service locator & notifier"

7 years agoMerge "defconfig: msm: Enable HWBinder for SDM660"
Linux Build Service Account [Fri, 14 Apr 2017 22:19:40 +0000 (15:19 -0700)]
Merge "defconfig: msm: Enable HWBinder for SDM660"

7 years agoMerge "ARM: dts: msm: Add usb master clock rate in high speed mode for sdm660"
Linux Build Service Account [Fri, 14 Apr 2017 22:19:39 +0000 (15:19 -0700)]
Merge "ARM: dts: msm: Add usb master clock rate in high speed mode for sdm660"

7 years agoMerge "input: misc: hbtp_input: Support for Region of Interest/sensors"
Linux Build Service Account [Fri, 14 Apr 2017 22:19:38 +0000 (15:19 -0700)]
Merge "input: misc: hbtp_input: Support for Region of Interest/sensors"

7 years agoMerge "ARM: dts: msm: Disable U1U2 low power modes for SDM660"
Linux Build Service Account [Fri, 14 Apr 2017 22:19:36 +0000 (15:19 -0700)]
Merge "ARM: dts: msm: Disable U1U2 low power modes for SDM660"

7 years agodefconfig: msm: enable page poisoning by default
Vinayak Menon [Wed, 5 Apr 2017 07:34:08 +0000 (13:04 +0530)]
defconfig: msm: enable page poisoning by default

Enable page poisoning by default on MSM8998
and SDM660.

Change-Id: If0b873888f21fd7e7057df43cf223e3c50372bed
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
7 years agomm: allow page poisoning to be enabled by default.
Vinayak Menon [Wed, 5 Apr 2017 05:19:14 +0000 (10:49 +0530)]
mm: allow page poisoning to be enabled by default.

Add a config option to enable page poisoning by
default. The kernel command line option "page_poison"
can be used to change the behaviour during boot.

Change-Id: Ie70763841191a722b1c6125dfad119a29ed0f605
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
7 years agomm: enable page poisoning early at boot
Vinayak Menon [Fri, 31 Mar 2017 00:13:06 +0000 (11:13 +1100)]
mm: enable page poisoning early at boot

On SPARSEMEM systems page poisoning is enabled after buddy is up, because
of the dependency on page extension init.  This causes the pages released
by free_all_bootmem not to be poisoned.  This either delays or misses the
identification of some issues because the pages have to undergo another
cycle of alloc-free-alloc for any corruption to be detected.

Enable page poisoning early by getting rid of the PAGE_EXT_DEBUG_POISON
flag.  Since all the free pages will now be poisoned, the flag need not be
verified before checking the poison during an alloc.

Link: http://lkml.kernel.org/r/1490358246-11001-1-git-send-email-vinmenon@codeaurora.org
Acked-by: Laura Abbott <labbott@redhat.com>
Tested-by: Laura Abbott <labbott@redhat.com>
Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
[vinmenon@codeaurora.org: resolve trivial merge conflicts.
 Remove the redundant free pages RO feature from the
 page_poison.c file which is the reason for conflicts +
 squash the addendum commit 40961ef8d65f51093bc94de110b97b590b6b9275
 ('mm-enable-page-poisoning-early-at-boot-v2')]
Git-commit: c5b7cd344fd6341e6db79e55c0f1f4d1d9c67a7e
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
Change-Id: I1bb1f99d3a2e1135131911905e0916c837ba9d8a
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
7 years agomm/page_poisoning.c: allow for zero poisoning
Laura Abbott [Tue, 15 Mar 2016 21:56:30 +0000 (14:56 -0700)]
mm/page_poisoning.c: allow for zero poisoning

By default, page poisoning uses a poison value (0xaa) on free.  If this
is changed to 0, the page is not only sanitized but zeroing on alloc
with __GFP_ZERO can be skipped as well.  The tradeoff is that detecting
corruption from the poisoning is harder to detect.  This feature also
cannot be used with hibernation since pages are not guaranteed to be
zeroed after hibernation.

Credit to Grsecurity/PaX team for inspiring this work

Change-Id: If7116e6bff246abbafc38bdfeb3601d3ea063ad2
Signed-off-by: Laura Abbott <labbott@fedoraproject.org>
Acked-by: Rafael J. Wysocki <rjw@rjwysocki.net>
Cc: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Kees Cook <keescook@chromium.org>
Cc: Mathias Krause <minipli@googlemail.com>
Cc: Dave Hansen <dave.hansen@intel.com>
Cc: Jianyu Zhan <nasa4836@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Git-commit: 1414c7f4f7d72d138fff35f00151d15749b5beda
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
7 years agomm/page_poison.c: enable PAGE_POISONING as a separate option
Laura Abbott [Tue, 15 Mar 2016 21:56:27 +0000 (14:56 -0700)]
mm/page_poison.c: enable PAGE_POISONING as a separate option

Page poisoning is currently set up as a feature if architectures don't
have architecture debug page_alloc to allow unmapping of pages.  It has
uses apart from that though.  Clearing of the pages on free provides an
increase in security as it helps to limit the risk of information leaks.
Allow page poisoning to be enabled as a separate option independent of
kernel_map pages since the two features do separate work.  Because of
how hiberanation is implemented, the checks on alloc cannot occur if
hibernation is enabled.  The runtime alloc checks can also be enabled
with an option when !HIBERNATION.

Credit to Grsecurity/PaX team for inspiring this work

Change-Id: I77a36f844ddae54695089c98a97bf0a6e226a025
Signed-off-by: Laura Abbott <labbott@fedoraproject.org>
Cc: Rafael J. Wysocki <rjw@rjwysocki.net>
Cc: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Kees Cook <keescook@chromium.org>
Cc: Mathias Krause <minipli@googlemail.com>
Cc: Dave Hansen <dave.hansen@intel.com>
Cc: Jianyu Zhan <nasa4836@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Git-commit: 8823b1dbc05fab1a8bec275eeae4709257c2661d
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
7 years agoMerge "ASoC: wcd9335: Initialize variables before use"
Linux Build Service Account [Fri, 14 Apr 2017 14:30:10 +0000 (07:30 -0700)]
Merge "ASoC: wcd9335: Initialize variables before use"

7 years agoMerge "ASoC: wcd_cpe_core: Initialize variables before use"
Linux Build Service Account [Fri, 14 Apr 2017 14:30:09 +0000 (07:30 -0700)]
Merge "ASoC: wcd_cpe_core: Initialize variables before use"

7 years agoMerge "ASoC: msm: qdsp6v2: Initialize variables before use"
Linux Build Service Account [Fri, 14 Apr 2017 14:30:07 +0000 (07:30 -0700)]
Merge "ASoC: msm: qdsp6v2: Initialize variables before use"