Commit graph

572189 commits

Author SHA1 Message Date
Tatenda Chipeperekwa
10edfdd309 msm: mdss: hdmi: fix clock parsing
Fix the clock parsing logic to remove the hard coding
of clock names in the HDMI driver. Update the clock parsing
logic to rely on reading the clock configurations from the
device tree and update the HPD and CORE power modules
appropriately.

CRs-Fixed: 1032282
Change-Id: Ia7324f6443b3db5d55113a221dc0791bb5a38799
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
2016-07-05 15:32:20 -07:00
Rama Krishna Phani A
0e56b701ef ARM: dts: msm: Add SPS node for msmfalcon
Add SPS module to device tree. SPS (Smart Peripheral System)
enables the support of all BAMs in the system which provide DMA
functionality to various peripherals.

Change-Id: I4f71ba8115f009028ae4ddf6a7847d1885b4458c
Signed-off-by: Rama Krishna Phani A <rphani@codeaurora.org>
2016-07-05 15:32:05 -07:00
Veera Sundaram Sankaran
40920ca470 msm: mdss: force revalidate layers after resolution switch
Avoid skipping validation for all layers during ATOMIC_COMMIT
validate call after dynamic resolution switching. Though the
configs remain the same for few layers, revalidation is required
based on the new resolution as the src_split and other settings
might have changed.

Change-Id: I3f1f2e09c90e8ff1a6380e35ed9e980b5c2be46c
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-07-05 15:31:53 -07:00
Veera Sundaram Sankaran
2bb0363c03 msm: mdss: handle used_buf during overlay off with invalid switch state
There might be cases where driver gets the resolution switch
request followed by suspend or adb shell stop. In such cases,
since the ctl parameters are already reconfigured, driver skips
the NULL kickoff during overlay off due to invalid switch state.
This leads to memory leak as the used_bufs are left intact. Fix
by moving the used_bufs to free_list, so that memory can be freed
later and also leaves the buffer list clean.

Change-Id: I80c6ad2dc85da0427ac7ba1c127f0aa044a81c09
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-07-05 15:31:41 -07:00
Veera Sundaram Sankaran
95eadad55b msm: mdss: add dynamic resolution switch support during handoff
Add support to handle dynamic resolution switch request during
cont-splash handoff, even before driver receives the first commit.
The cmd_panel_on is ideally called right before the first kickoff,
if the panel is not already on. Make explicit panel_cmd_on call during
reconfigure to match with the ctl_stop/ctl_start done during the
process of switching. This would make sure complete cleanup and
re-configuration of the ctl is done.

Change-Id: I98469b14284195caaf17a616137a0502e0e398cf
[veeras@codeaurora.org: Resolved conflicts in mdss_mdp.h]
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-07-05 15:31:30 -07:00
Veera Sundaram Sankaran
8370151cfe msm: mdss: match pixclock calculation for videomode and fb var
When multiple panel timings are available and enumerating videomode
list, pixclock is calculated using htotal, vtotal and refresh rate.
But fb var struct is populated with actual pixclock value calculated
by DSI. This pixclock mismatch would cause issues, when usermode
does GET_VSCREENINFO/PUT_VSCREENINFO. Fix by using the same pixclock
calculation for both structures.

Change-Id: I42bfc40b5904ec80f20b296e3b4610ca3b2c5ee0
[veeras@codeaurora.org: Resolved conflicts in mdss_fb.c]
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-07-05 15:31:19 -07:00
Veera Sundaram Sankaran
5e6e59afed msm: mdss: add capability to parse multiple panel roi alignment
Add device tree parsing logic to parse multiple panel alignment roi for
different panel resolutions. Add alignment roi as part of the panel
timing struct, so that it would be updated whenever resolution switch
happens.

Change-Id: I14ee1a4947312c4c36927adcbffad847f9062fd6
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-07-05 15:31:04 -07:00
Veera Sundaram Sankaran
df73dce85c msm: mdss: add dynamic resolution switch support for DSC panels
Reconfigure the DSC parameters and DSI stream according to the
new resolution. Mandate the first frame after dynamic resolution
change for DSC panels to be full frame updates. Send PPS command
based on the device tree entry before or after the switch commands.
Fix device tree parsing of DSC parameters within the switch timing
node. Add sub-nodes in target specific device tree to configure
target specific timing and switch commands.

Change-Id: I6aa5f8f972b16645b219bf6274036b6e5dac6dda
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-07-05 15:30:48 -07:00
Adrian Salido-Moreno
db2b74c456 msm: mdss: validate current switch state before commit
If mode switch is currently in progress, then proper state machine of
calls is expected. If these calls are not observed then it could lead
to issues during display commit, because of incomplete update.
Add checks for current mode switch state to prevent improper state
during commit.

Change-Id: I31dae6e15761fc745efd79edbe1070af992db904
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-07-05 15:30:35 -07:00
Adrian Salido-Moreno
42d8f87406 msm: mdss: handle blank while mode switch in progress
When display is getting blanked while mode switch in progress, we
cannot have additional kickoff trigger for cleanup as the state hasn't
been properly transitioned. Instead we can clear the state and destroy
control path to start clean on next update.

Change-Id: I34af01550d79e0d7d465f2c7f873508c296160dd
[veeras@codeaurora.org: Resolved conflicts in mdss_mdp_overlay.c]
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-07-05 15:30:24 -07:00
Ashish Jain
99fc247e1b ASoC: msm: qdsp6v2: DAP: Add check to validate param length
To avoid buffer overflow, validate input length used to
fetch visualizer data.

CRs-Fixed: 1033540
Change-Id: I445d1ba3bce47308bc31ae24a70d5ee358f22a2d
Signed-off-by: Ashish Jain <ashishj@codeaurora.org>
2016-07-05 15:30:12 -07:00
Ashish Jain
9f4741169e ASoC: msm: qdsp6v2: DAP: Allocate param buffer with correct size
Size of param buffer should be big enough to hold param length
of data and param payload.

CRs-Fixed: 1033525
Change-Id: I6fa58f87a7c7df5f0485ea5b368ea090eb8bedb4
Signed-off-by: Ashish Jain <ashishj@codeaurora.org>
2016-07-05 15:30:01 -07:00
Andrey Markovytch
ee5829be00 md: dm-req-crypt: Separate qcrypto from ICE path
During the ICE based FDE path, qcrypto functions been called,
which is invalid. So update dm-req-crypt driver to separate
ICE from qcrypto path.

Change-Id: I1ff3121471baa761624e0ce39ee96dd0b8497454
Signed-off-by: AnilKumar Chimata <anilc@codeaurora.org>
Signed-off-by: Andrey Markovytch <andreym@codeaurora.org>
2016-07-05 15:29:47 -07:00
Abdulla Anam
77063f91dc msm: vidc: Fix use of unininitialized variables.
Fix use of uninitialized variables. Add checks for out of bound
array access.

CRs-Fixed: 997966
Change-Id: I66973d7dcc0988dba36da4b3c0e01484847a7a7e
Signed-off-by: Abdulla Anam <abdullahanam@codeaurora.org>
2016-07-05 15:29:02 -07:00
Sungjun Park
d17e102e1d bluetooth: Add support for clocks
On some platforms, clock needs to be controlled by Bluetooth
driver. Add support for that by obtaining it through a device
tree property and use it for voting when required.

Change-Id: I42a16f6dc8d5c11963713ae489ca6d8c9bf927e5
Signed-off-by: Sungjun Park <sjpark@codeaurora.org>
2016-07-05 15:28:53 -07:00
Josh Kirsch
c0494b3e29 drivers: soc: Add buffer overflow check for svc send request
Add buffer overflow check in voice_svc_send_req.

CRs-fixed: 1010081
Change-Id: I4ae703334b0cf04f327b392bc9cd6febd4ad32f2
Signed-off-by: Josh Kirsch <jkirsch@codeaurora.org>
2016-07-05 15:28:38 -07:00
Sridhar Ancha
fabcd63ec0 msm: ipa: Fix queuing the inactive timer work on perf cluster
Using schedule_delayed_work will cause work queues to be scheduled
on the CPU where the timer expires. This can make work to be scheduled
on perf cluster resulting in power issues. Make changes to use
queue_delayed_work on an unbound workqueue so that the work gets
scheduled based on the load and mostly it gets scheduled in power
cluster.

Change-Id: I13605eea5fb3e7eeece1d8c81334981ea7de9cb9
Acked-by: Chaitanya Pratapa <cpratapa@qti.qualcomm.com>
Signed-off-by: Sridhar Ancha <sancha@codeaurora.org>
2016-07-05 15:28:23 -07:00
Lingutla Chandrasekhar
efeed9cca4 soc: qcom: memory_dump_v2: use kmemleak_not_leak for mem dump's app table
Table (of type msm_dump_table) is virtual address for app's base
table of memdump, which is converted to physical address and
holds it in the memdump.table_phys. This memory is not intended
to be freed. When kmemleak scans, it can't deduce that the reference
we are holding is via physical address and not virtual address.
Hence, kmemleak will treat this as a leak as it can't find
a reference to this variable. Suppress this by using
kmemleak_not_leak API.

Change-Id: I5236c940688829a3b5f255c5ee9fcf309cf8ebb7
Signed-off-by: Lingutla Chandrasekhar <clingutla@codeaurora.org>
2016-07-05 15:28:13 -07:00
Taniya Das
f57149b1a1 ARM: dts: msm: Update the clock names for MSMfalcon
Add the clock controller files for GCC/GPU/MMSS and modify the clock
macro names for blsp clock MSMfalcon.

Change-Id: Iaed16dbb3415a77f427ad7318017487acb7891a3
Signed-off-by: Taniya Das <tdas@codeaurora.org>
2016-07-05 15:27:30 -07:00
Taniya Das
f9d4f66a07 clock: qcom: Add the clocks supported on MSMFalcon
Add all the clocks which are supported on msmfalcon and would be used
by the clients for all clock operations for GCC, MMSS, GPU clock
controllers.

Change-Id: Ie328cb0516644d8a3d66fd0c054575a5cff637dc
Signed-off-by: Taniya Das <tdas@codeaurora.org>
2016-07-05 15:27:19 -07:00
Mayank Rana
cdda441e92 usb: gadget: f_gsi: Use 16KB buffer with each TRB for MBIM DL
There is limitation when IPA is performing de/aggregation with MBIM
in scatter-gather mode. Hence instead of 2KB buffer use 16KB buffer
(i.e. size of aggregated frame) with each TRB for MBIM DL case.

CRs-Fixed: 1032467
Change-Id: I4f73d30711b5606c2ac88ce9d05a8483d64b665d
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
2016-07-05 15:27:07 -07:00
David Dai
1fca929324 ARM: dts: msm: Remove redundant interrupt type flag for msmcobalt
Use existing IRQ flags definitions since devfreq_spdm driver no longer
overrides interrupt type. Interrupt-edge property is no longer used
as an indicator of interrupt type.

Change-Id: Iddf6b1b8a85100bbb3b6ff2d2dda88880b6e64f2
Signed-off-by: David Dai <daidavid1@codeaurora.org>
2016-06-30 16:49:33 -07:00
Hemant Kumar
127bd201cf ARM: msmcortex_defconfig: Enable USB audio driver
Enables support for USB audio and USB MIDI devices
connected via the USB bus.

Change-Id: I3fa2168b905b5242894ba985b8c615bfbb10492a
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2016-06-30 16:49:32 -07:00
Subhash Jadavani
1496271f4c scsi: ufs-qcom: fix bug with read/modify write of UFS_CFG1
ufs_qcom_print_hw_debug_reg_all() function is having a bug
where it might incorrectly modify undesired bits in UFS_CFG1 register,
this change fixes it.

Change-Id: I2605beeb41f3c319877f48e35723f597f7dfb9da
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
2016-06-30 16:49:31 -07:00
Jeykumar Sankaran
b11b492074 msm: mdss: Fix fence handling for CWB
Creates a work queue for concurrent writeback to wait and signal
the CWB retire fence on WB done interrupt.

Change-Id: I169e3df1a68616be93377defdc30e3c326aff79f
Signed-off-by: Jeykumar Sankaran <jsanka@codeaurora.org>
2016-06-30 16:49:30 -07:00
Oleg Perelet
54e3106b81 msm: kgsl: Discard negative CRC throttling cycle readings
Ignore negative CRC throttle cycle readings in corner cases.

Change-Id: Ic237bd0558a4769dc89bfb7e70a287165f842b92
CRs-Fixed: 973565
Signed-off-by: Oleg Perelet <operelet@codeaurora.org>
2016-06-30 16:49:30 -07:00
Nicholas Troast
8472130136 ARM: dts: msm: remove remaining stub regulators from msmcobalt
S10A and S13A regulators are not needed since APC voltage rails are
controlled by CPRh.

All of the PM8005 regulators have been defined properly as SPMI
regulators in msm-pm8005.dtsi

CRs-Fixed: 1025447
Change-Id: I2a93ffe3b5ce17a09ce836ef00f40c38678b9796
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2016-06-30 16:49:29 -07:00
David Dai
1386593b84 ARM: dts: msm: Remove clk reference from virt fab for msmcobalt
Remove bimc_clk references from GNOC as there is no resource associated
with GNOC.

Change-Id: Id038f13305c765336c85444f1064d38a0a61c9a2
Signed-off-by: David Dai <daidavid1@codeaurora.org>
2016-06-30 16:49:28 -07:00
David Dai
a55b0ba489 defconfig: msmcortex: Enable devfreq_spdm
Enable SPDM governer and SCM call through Hypervisor support.

CRs-Fixed: 1025515
Change-Id: I911f84a44229b84491ea5b78e1ed2d8181b2c804
Signed-off-by: David Dai <daidavid1@codeaurora.org>
2016-06-30 15:11:17 -07:00
Andrey Markovytch
18c50da9dc md: dm-req-crypt: fixed error propagation when ICE is used
When ICE is used and there was an error during endio, the error was
not propagated properly to upper layers, fixed.

Change-Id: I5c428e4a02f7012f95e3a32486920e69b93ea3fc
Signed-off-by: Andrey Markovytch <andreym@codeaurora.org>
2016-06-30 15:11:03 -07:00
Srinivas Ramana
1d0f3783d5 arm: topology: fix the topology reset path during init
init_cpu_topology has a bug where
1. It's referring to out of bounds array.
2. It's not actually resetting topology for each cpu.

Fix this by iterating for each cpu for resetting topology.

Change-Id: I4df03fb4fbe9cb636f135de982e35173b1900ec2
Signed-off-by: Srinivas Ramana <sramana@codeaurora.org>
2016-06-30 15:10:51 -07:00
Srinivas Ramana
7af744ebdf arm: qcom: Add support for msmfalcon chipset
Add support in Kconfig for msmfalcon chipset 32-bit platform.

Change-Id: I5509787b16e7837c674203a3a900159f449b14a6
Signed-off-by: Srinivas Ramana <sramana@codeaurora.org>
2016-06-30 15:10:38 -07:00
Srinivas Ramana
45e27cd237 msmfalcon: add board files for 32-bit boot
Add board file to support msmfalcon 32-bit boot.

Change-Id: I4a7c9fd54983e58e5fdd73ae080702018a813cd7
Signed-off-by: Srinivas Ramana <sramana@codeaurora.org>
2016-06-30 15:10:24 -07:00
Amir Samuelov
a90c874c80 spcom: increase timeout for TX-Done notification
Normally, it takes few msec for SPSS to responde with ACK for TX data.
However, due to SPSS HW issue, the SPSS might disable interrupts
for a very long time, and not ACK for the data.

Change-Id: I88a0b7a0637fb62d62ac760e9a8a946a5888d406
Signed-off-by: Amir Samuelov <amirs@codeaurora.org>
2016-06-30 15:10:10 -07:00
Shiv Maliyappanahalli
ee021f5fba defconfig: msmcortex: Enable CONFIG_MSM_ADSP_LOADER
Enable CONFIG_MSM_ADSP_LOADER in order to enable
ADSP PIL loading during bootup.

Change-Id: I0d8a15283ec43bdf0818c4d9cbe92ac4474cb833
Signed-off-by: Shiv Maliyappanahalli <smaliyap@codeaurora.org>
2016-06-30 15:09:57 -07:00
Fred Fettinger
603255f546 base: sync: increase size of sync_timeline name
This makes it possible for drivers to use a longer, more descriptive
name for a sync_timeline, which improves the readability of the
sync dump in debugfs.

Change-Id: Ifb83aebf6fd820ebb26aca2ff230ac1116e65ce9
Git-commit: cb63e61b80ec905f01cbe1c21081aa0d1fef082d
Git-repo: https://www.codeaurora.org/gitweb/quic/la/?p=kernel/msm.git
Signed-off-by: Fred Fettinger <fred.fettinger@motorola.com>
Signed-off-by: Harsh Vardhan Dwivedi <hdwivedi@codeaurora.org>
Signed-off-by: Omprakash Dhyade <odhyade@codeaurora.org>
2016-06-30 15:09:42 -07:00
Kyle Yan
4ba4c5041b Revert "arm64: defconfig: msm: enable MODULE_SIG for msm chipsets"
This reverts commit 931a5101df ("arm64: defconfig: msm: enable
MODULE_SIG for msm chipsets").

Compilation of Android/DLKMs failing with below error:

Signing kernel module:  bus_timeout_mod.ko
Can't open perl script "./kernel/msm-4.4/scripts/sign-file": \
                                       No such file or directory
ninja: build stopped: subcommand failed.
make: *** [ninja_wrapper] Error 1

CRs-Fixed: 1035494
Change-Id: Iddc618a2467b8ba72a8466c2678b3195ef8fa1c7
Signed-off-by: Kyle Yan <kyan@codeaurora.org>
2016-06-30 11:09:50 -07:00
David Dai
6cf750b971 soc: qcom: msm_bus: Remove panic for no aggregation scheme
Remove default panic error when no aggregation scheme is selected,
this is to support virtual fabrics that have no clocks or bandwidth
to aggregate.

Change-Id: I4fd8977845dd123890afc5076cd55499992e488e
Signed-off-by: David Dai <daidavid1@codeaurora.org>
2016-06-30 11:09:17 -07:00
Mitchel Humpherys
0fa63fe11a iommu: dma-mapping-fast: Remove unused #define
There's a stray #define left over from initial development of the fast
map feature.  Rip it out.

CRs-Fixed: 1035430
Change-Id: Iae0649dc3fe878f948ad872803317eb4bf7ec1c6
Signed-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>
2016-06-30 11:09:16 -07:00
Benjamin Chan
3ab4d68a50 ARM: dts: msm: Enabling ESD detection support for msmcobalt
nt35597 panel ESD detection is required in msmcobalt and this is
to enable the ESD detection support based on BTA method.

CRs-Fixed: 1035341
Change-Id: I4e1b47a1422e454a919352c75a2fd5921c98a443
Signed-off-by: Benjamin Chan <bkchan@codeaurora.org>
2016-06-30 00:09:59 -04:00
Benjamin Chan
5cf7b9f177 msm: mdss: Fix panel ESD detection mode selection
Panel ESD detection supports few different methods, and should determine
the detection mode before checking the correct DT value. This change
make sure BTA and TE detection mode does not need to care for REG read
DT settings.

CRs-Fixed: 1035341
Change-Id: Ib3070f739571fa73684a9c88c35d9af42bca9850
Signed-off-by: Benjamin Chan <bkchan@codeaurora.org>
2016-06-29 23:36:40 -04:00
David Dai
47335704fb dev_freq: devfreq_spdm: make cci_clk optional indicator
Enable dev_freq SPDM support in order to increase BIMC
vote based on bus rejection rate. Make cci_clk an optional
property as it's not always a relevant indicator of cpu performance.

CRs-Fixed: 1025515
Change-Id: I713cc396c8d563735981547e0dc18a63f6f15180
Signed-off-by: David Dai <daidavid1@codeaurora.org>
2016-06-29 15:12:37 -07:00
Vinayak Menon
7da300d6a3 mm: ksm: avoid trageted reclaim of ksm pages
Per Process Reclaim tries to avoid reclaiming of
shared pages by passing the target VMA. For anon and
file pages this works, but not for KSM. This is because
vma_address(page) will not return the intended value
resulting in crashes like this

[From 3.10 kernel]
kernel BUG at kernel/mm/rmap.c:534!
(vma_address+0x28/0x2c) from [<c01eff94>] (try_to_unmap_ksm+0x4c/0x170)
(try_to_unmap_ksm+0x4c/0x170) from [<c01e4834>] (try_to_unmap+0x34/0xa4)
(try_to_unmap+0x34/0xa4) from [<c01c8e64>] (shrink_page_list+0x3f0/0xa34)
(shrink_page_list+0x3f0/0xa34) from [<c01c9688>] (reclaim_pages_from_list)
(reclaim_pages_from_list+0xb0/0x100) from [<c0240ed0>] (reclaim_pte_range)
(reclaim_pte_range+0xf0/0x164) from [<c01e79a4>] (walk_page_range+0x1d0)
(walk_page_range+0x1d0/0x260) from [<c0241ccc>] (reclaim_task_anon+0xb0)
(reclaim_task_anon+0xb0/0x114) from [<c01f8d98>] (swap_fn+0x220/0x460)
(swap_fn+0x220/0x460) from [<c0133a38>] (process_one_work+0x294/0x430)
(process_one_work+0x294/0x430) from [<c0134720>] (worker_thread)
(worker_thread+0x224/0x358) from [<c01390d4>] (kthread+0xa0/0xac)
(kthread+0xa0/0xac) from [<c0105f38>] (ret_from_fork+0x14/0x3c)

CRs-Fixed: 984947
Change-Id: I5208fb68372f7af72868e39399bf545fb7b774f3
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
2016-06-29 15:12:23 -07:00
Shiraz Hashim
1be1715f14 mm: process_reclaim: use unbounded cpu workqueue
It is observed that in some cases process reclaim work
doesn't get chance to run due to presence of RT scheduled
on the same CPU. This is leading to user space freeze and
a live-lock situation where RT itself is looping for a
page to be present in swap cache while process reclaim
work is unable to schedule and do the same.

Schedule process reclaim work on unbounded cpu workqueue
so that the work has opportunity to be scheduled on to
other cpu.

Change-Id: I6852f7e8d0a344ab5631b188627263f11414f27e
Signed-off-by: Shiraz Hashim <shashim@codeaurora.org>
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
2016-06-29 15:12:09 -07:00
Vinayak Menon
9ff0477006 mm: process_reclaim: do not iterate over stale task structs
swap_fn iterates through the threads of selected tasks after
a rcu_read_unlock which is wrong. But we can't extend the
rcu_read_lock since it will result in severe performance
issues. So better avoid iterating over the threads. Just
lock the group leader and use it further.

Change-Id: I36269b1b6619315f33f6f3b49ec73571a66796f2
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
2016-06-29 15:11:56 -07:00
Vinayak Menon
1ad1a93af4 mm: process_reclaim: fix reclaim skip on low efficiency
The logic used to skip reclaim on low efficiency results
in process reclaim not triggering at all. Fix it by
properly handling the skip_reclaim atomic variable.

Change-Id: I119097bb9b1baf8f3e8d4afa0a6dc2c30c0de6e7
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
2016-06-29 15:11:36 -07:00
Vinayak Menon
9caa3b38bb mm: process reclaim: vmpressure based process reclaim
With this patch, anon pages of inactive tasks can be reclaimed,
depending on memory pressure. Memory pressure is detected
using vmpressure events. 'N' best tasks in terms of anon
size is selected and pages proportional to their tasksize
is reclaimed. The total number of pages reclaimed at each
run of the swap work, can be tuned from userspace, the
default being SWAP_CLUSTER_MAX * 32.

The patch also adds tracepoints to debug and tune the
feature.

echo 1 > /sys/module/process_reclaim/parameters/enable_process_reclaim
to enable the feature.

echo <pages> > /sys/module/process_reclaim/parameters/per_swap_size,
to set the number of pages reclaimed in each scan.

/sys/module/process_reclaim/parameters/reclaim_avg_efficiency, provides
the average efficiency (scan to reclaim ratio) of the algorithm.

/sys/module/process_reclaim/parameters/swap_eff_win, to set the window
period (in unit of number of times reclaim is triggered) to detect
low efficiency runs.

/sys/module/process_reclaim/parameters/swap_opt_eff, to set the optimal
efficiency threshold for low efficiency detection.

Change-Id: I895986f10c997d1715761eaaadc4bbbee60db9d2
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
2016-06-29 15:11:26 -07:00
Dinesh K Garg
82b3ab0380 md: Enable discard option for dm-req-crypt based devices
dm-req-crypt based devices are capable of supporting discard option.
DM layer by default does not enable discard option for DM devices.
Since underlying device supports discard option, mapped target should
also allow it.

Change-Id: Ia540a814c3dcd91f573d1f25d637107a48309a58
Signed-off-by: Dinesh K Garg <dineshg@codeaurora.org>
2016-06-29 15:11:15 -07:00
Karthik Reddy Katta
566b0758b6 ASoC: msm: qdsp6v2: Fix Tx mute issue over BT-SCO
Backend DAIs are not enabled for low-latency-record
bt-sco. Update mixer control array of MultiMedia5
mixer to enable backend DAIs.

CRs-Fixed: 1029460
Change-Id: I8e01302baf2d78afca930ef1f251906a971a8234
Signed-off-by: Karthik Reddy Katta <a_katta@codeaurora.org>
2016-06-29 15:11:04 -07:00
Arun Kumar Neelakantam
14582c3ab3 soc: qcom: qsee_ipc_irq_bridge: Add initial driver version
This driver handles the Inter-Processor Communication(IPC) Interrupt(IRQ)
from remote subsystems directed towards Qualcomm Technologies, Inc. Secure
Execution Environment(QSEE) and notifies the QSEE listeners waiting in
the userspace.

CRs-Fixed: 1021749
Change-Id: Id0cab5773099e2f6267f8a5bd4fd5aeb3324e68b
Signed-off-by: Arun Kumar Neelakantam <aneela@codeaurora.org>
2016-06-29 15:02:33 -07:00