summaryrefslogtreecommitdiff
path: root/include/linux
AgeCommit message (Collapse)Author
2016-10-07qpnp: revid: Add support to read FAB ID for PMICOBALTSiddartha Mohanadoss
PMICOBALT supports reading the FAB ID from the REVID peripheral. Add an optional property qcom,fab-id-valid to check if support for FAB ID is available in the REVID peripheral for the PMIC. Change-Id: If8212618baa7533b008228a71740acf1d6c72a52 Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
2016-10-06Merge "sched/tune: add sysctl interface to define a boost value"Linux Build Service Account
2016-10-06Merge "iommu: Fix compilation error without CONFIG_IOMMU_API"Linux Build Service Account
2016-10-05Merge "RFC: FROMLIST: cgroup: reduce read locked section of ↵Linux Build Service Account
cgroup_threadgroup_rwsem during fork"
2016-10-05sched/tune: add sysctl interface to define a boost valuePatrick Bellasi
The current (CFS) scheduler implementation does not allow "to boost" tasks performance by running them at a higher OPP compared to the minimum required to meet their workload demands. To support tasks performance boosting the scheduler should provide a "knob" which allows to tune how much the system is going to be optimised for energy efficiency vs performance. This patch is the first of a series which provides a simple interface to define a tuning knob. One system-wide "boost" tunable is exposed via: /proc/sys/kernel/sched_cfs_boost which can be configured in the range [0..100], to define a percentage where: - 0% boost requires to operate in "standard" mode by scheduling tasks at the minimum capacities required by the workload demand - 100% boost requires to push at maximum the task performances, "regardless" of the incurred energy consumption A boost value in between these two boundaries is used to bias the power/performance trade-off, the higher the boost value the more the scheduler is biased toward performance boosting instead of energy efficiency. Change-Id: I59a41725e2d8f9238a61dfb0c909071b53560fc0 cc: Ingo Molnar <mingo@redhat.com> cc: Peter Zijlstra <peterz@infradead.org> Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com> Git-commit: 63c8fad2b06805ef88f1220551289f0a3c3529f1 Git-repo: https://source.codeaurora.org/quic/la/kernel/msm-4.4 Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
2016-10-03Merge "sched: add a knob to prefer the waker CPU for sync wakeups"Linux Build Service Account
2016-10-02sched: add a knob to prefer the waker CPU for sync wakeupsPavankumar Kondeti
The current policy has a preference to select an idle CPU in the waker cluster compared to the waker CPU running only 1 task. By selecting an idle CPU, it eliminates the chance of waker migrating to a different CPU after the wakee preempts it. This policy is also not susceptible to the incorrect "sync" usage i.e the waker does not goto sleep after waking up the wakee. However LPM exit latency associated with an idle CPU outweigh the above benefits on some targets. So add a knob to prefer the waker CPU having only 1 runnable task over idle CPUs in the waker cluster. Change-Id: Id974748c07625c1b19112235f426a5d204dfdb33 Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
2016-09-30Merge "msm: ipa: Recycle wan buffer"Linux Build Service Account
2016-09-29Merge "Migrate mpq demux driver from kernel 3.18 to 4.4"Linux Build Service Account
2016-09-29Merge "ASoC: msmcobalt: Enable msmcobalt to use audio notifier"Linux Build Service Account
2016-09-29Merge "drivers: soc: Add Audio Notifier, PDR, and SSR drivers"Linux Build Service Account
2016-09-29Merge "core_ctrl: Move core control into kernel"Linux Build Service Account
2016-09-28msm: ipa: Recycle wan bufferSunil Paidimarri
Enable recycle wan buffer support in IPA driver to support napi in rmnet ipa0 net device. Change-Id: I54efe72b5cf4ecdf50c7c642a8b453c46d057e57 CRs-Fixed: 1072443 Signed-off-by: Sunil Paidimarri <hisunil@codeaurora.org>
2016-09-26drivers: soc: Enable APR driver to use audio notifierBen Romberger
Modify APR driver to use audio notifier framework. Audio notifier framework connects to best available subsystem for remote notifications. Change-Id: I783b7df9c7e0253e5dc88bd60e0b5300e26fba56 CRs-Fixed: 1054000 Signed-off-by: Ben Romberger <bromberg@codeaurora.org>
2016-09-26drivers: soc: Add Audio Notifier, PDR, and SSR driversBen Romberger
The audio PDR driver is used to control the process domain restart recovery mechanism. The audio SSR driver is used to control the Subsystem Restart recovery mechanism. Both are controlled through the Audio Notifier driver which determines whether PDR or SSR is used and provides the core interface to all audio drivers. Change-Id: I15325c1385eaa0f0cca2c07130f2b4a997d98e1f CRs-Fixed: 1054000 Signed-off-by: Ben Romberger <bromberg@codeaurora.org>
2016-09-24sched/tick: Ensure timers does not get queued on isolated cpusOlav Haugan
Timers should not be queued on isolated cpus. Instead try to find other cpus to queue timer on. Change-Id: I5d849dfd29aa5bb594454473768d7db1da258028 Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-24sched: add cpu isolation supportOlav Haugan
This adds cpu isolation APIs to the scheduler to isolate and unisolate CPUs. Isolating and unisolating a CPU can be used in place of hotplug. Isolating and unisolating a CPU is faster than hotplug and can thus be used to optimize the performance and power of multi-core CPUs. Isolating works by migrating non-pinned IRQs and tasks to other CPUS and marking the CPU as not available to the scheduler and load balancer. Pinned tasks and IRQs are still allowed to run but it is expected that this would be minimal. Unisolation works by just marking the CPU available for scheduler and load balancer. Change-Id: I0bbddb56238c2958c5987877c5bfc3e79afa67cc Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-23Merge "usb: gadget: Enable L1 suspend by default"Linux Build Service Account
2016-09-20watchdog: Add support for cpu isolationOlav Haugan
Open up interface to allow external subsystem to enable and disable hard lockup detector. Change-Id: I88a728ee1d54aaa887fab52e5e40d1d4e4fc69ca Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-20cpumask: Add cpu isolation supportOlav Haugan
Add bitmask and corresponding supporting functions for cpu isolation. Change-Id: Ice1a9503666a2b720bdb324289ca55ceb33097cd Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-20hrtimer: create hrtimer_quiesce_cpu() to isolate CPU from hrtimersViresh Kumar
To isolate CPUs (isolate from hrtimers) from sysfs using cpusets, we need some support from the hrtimer core. i.e. A routine hrtimer_quiesce_cpu() which would migrate away all the unpinned hrtimers, but shouldn't touch the pinned ones. This patch creates this routine. Change-Id: I51259ea41e3bd5cdba50b718201a6840174a7224 Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> [forward port to 3.18] Signed-off-by: Santosh Shukla <santosh.shukla@linaro.org> [ohaugan@codeaurora.org: Port to 4.4] Git-commit: d4d50a0ddc35e58ee95137ba4d14e74fea8b682f Git-repo: git://git.linaro.org/people/mike.holmes/santosh.shukla/lng-isol.git Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-20hrtimer: update timer->state with 'pinned' informationViresh Kumar
'Pinned' information would be required in migrate_hrtimers() now, as we can migrate non-pinned timers away without a hotplug (i.e. with cpuset.quiesce). And so we may need to identify pinned timers now, as we can't migrate them. This patch reuses the timer->state variable for setting this flag as there were enough number of free bits available in this variable. And there is no point increasing size of this struct by adding another field. Change-Id: If3b3770e547971809e789ea7c8033c48ec2aa92d Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> [forward port to 3.18] Signed-off-by: Santosh Shukla <santosh.shukla@linaro.org> [ohaugan@codeaurora.org: Port to 4.4] Git-commit: 62feaf1ed0b64c04868d143d8bdb92d60dc3189b Git-repo: git://git.linaro.org/people/mike.holmes/santosh.shukla/lng-isol.git Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-20timer: create timer_quiesce_cpu() to isolate CPU from timersViresh Kumar
To isolate CPUs (isolate from timers) from sysfs using cpusets, we need some support from the timer core. i.e. A routine timer_quiesce_cpu() which would migrates away all the unpinned timers, but shouldn't touch the pinned ones. This patch creates this routine. Change-Id: I8624e0659b86b7b8fa425a3fafdb0784fe005124 Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> [forward port to 3.18] Signed-off-by: Santosh Shukla <santosh.shukla@linaro.org> [ohaugan@codeaurora.org: Port to 4.4. Fixes for compilation error] Git-commit: 313910b70ea0c73f8789d9189c11e1f339080646 Git-repo: git://git.linaro.org/people/mike.holmes/santosh.shukla/lng-isol.git Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-20Migrate mpq demux driver from kernel 3.18 to 4.4Udaya Mallavarapu
This change migrates all the relevant files consisting of the mpq demux driver and its plugins, including the addition of TSPPv1 HW driver. The snapshot is taken as of msm-3.18, 'commit e12c33f73fb0 ("Merge defconfig: Enabling confg INET_DIAG_DESTROY")' In addition, introduce a few code changes to reduce checkpatch warnings, typos and other style issues. CRs-Fixed: 1057562 Change-Id: I76c9a9e44755a4a77e6cffb1dc07f5b28c8b34b8 Signed-off-by: Udaya Mallavarapu <udaym@codeaurora.org>
2016-09-19Merge "FROMLIST: security,perf: Allow further restriction of perf_event_open"Linux Build Service Account
2016-09-19iommu: Fix compilation error without CONFIG_IOMMU_APIPatrick Daly
Add an "inline" so the compiler no longer gives a defined-but-not-used warning. Change-Id: I226242bf994e659d8018a885f20c3a3f80b9b8e5 Signed-off-by: Patrick Daly <pdaly@codeaurora.org>
2016-09-19usb: gadget: Enable L1 suspend by defaultHemant Kumar
Currently L1 suspend is disabled. Superspeed capable device needs to support L1 suspend in HS/FS/LS mode. Also, add module parameter to disable L1 suspend in High speed mode. Change-Id: Ie8e7f3949d276325305799640f2775343bd6b9da Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2016-09-16Merge "drivers: mfd: set IIR and ANC registers as volatile"Linux Build Service Account
2016-09-15ASoC: wcd: modify tasha version check macrosYeleswarapu Nagaradhesh
TASHA_IS_1_1 macro checks only for version number. This macro returns true for tavil codec. So modify tasha macros to check for codec and version. CRs-Fixed: 1066331 Change-Id: I5240e0ee888187a8185974ea288ce2cad62bd776 Signed-off-by: Yeleswarapu Nagaradhesh <nagaradh@codeaurora.org>
2016-09-15Merge "ext4 crypto: enable HW based encryption with ICE"Linux Build Service Account
2016-09-15ext4 crypto: enable HW based encryption with ICEAndrey Markovytch
Numerous changes were introduced to various layers: Block: removed dependency on selinux module for decision on bio merge EXT4: Added feature controlled support for HW encryption PFK: Major re-factoring, separation to eCryptfs and EXT4 sub-layers Change-Id: I9256c8736e1c16175fe3f94733dda430ccc57980 Signed-off-by: Andrey Markovytch <andreym@codeaurora.org>
2016-09-14ASoC: wcd934x: Add codec version check for wcd934xWalter Yang
As there are many hardware version of wcd934x codec. Add version check in the code so that userspace can get the version info. CRs-Fixed: 1063367 Change-Id: Ia320380d568426c2d7a414a832980a556ff27f0f Signed-off-by: Walter Yang <yandongy@codeaurora.org>
2016-09-13FROMLIST: security,perf: Allow further restriction of perf_event_openJeff Vander Stoep
When kernel.perf_event_open is set to 3 (or greater), disallow all access to performance events by users without CAP_SYS_ADMIN. Add a Kconfig symbol CONFIG_SECURITY_PERF_EVENTS_RESTRICT that makes this value the default. This is based on a similar feature in grsecurity (CONFIG_GRKERNSEC_PERF_HARDEN). This version doesn't include making the variable read-only. It also allows enabling further restriction at run-time regardless of whether the default is changed. https://lkml.org/lkml/2016/1/11/587 Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Git-repo: https://android.googlesource.com/kernel/common.git Git-commit: 012b0adcf7299f6509d4984cf46ee11e6eaed4e4 [d-cagle@codeaurora.org: Resolve trivial merge conflicts] Signed-off-by: Dennis Cagle <d-cagle@codeaurora.org> Bug: 29054680 Change-Id: Iff5bff4fc1042e85866df9faa01bce8d04335ab8
2016-09-13Merge "Merge branch 'tmp-bab1564' into msm-4.4"Linux Build Service Account
2016-09-13Merge "scsi: ufs-qcom: dump additional testbus registers"Linux Build Service Account
2016-09-12Merge branch 'tmp-bab1564' into msm-4.4Runmin Wang
* tmp-bab1564: ANDROID: mmc: Add CONFIG_MMC_SIMULATE_MAX_SPEED android: base-cfg: Add CONFIG_INET_DIAG_DESTROY cpufreq: interactive: only apply interactive boost when enabled cpufreq: interactive: fix policy locking ANDROID: dm verity fec: add sysfs attribute fec/corrected ANDROID: android: base-cfg: enable CONFIG_DM_VERITY_FEC UPSTREAM: dm verity: add ignore_zero_blocks feature UPSTREAM: dm verity: add support for forward error correction UPSTREAM: dm verity: factor out verity_for_bv_block() UPSTREAM: dm verity: factor out structures and functions useful to separate object UPSTREAM: dm verity: move dm-verity.c to dm-verity-target.c UPSTREAM: dm verity: separate function for parsing opt args UPSTREAM: dm verity: clean up duplicate hashing code UPSTREAM: dm: don't save and restore bi_private mm: Export do_munmap sdcardfs: remove unneeded __init and __exit sdcardfs: Remove unused code fs: Export d_absolute_path sdcardfs: remove effectless config option inotify: Fix erroneous update of bit count fs: sdcardfs: Declare LOOKUP_CASE_INSENSITIVE unconditionally trace: cpufreq: fix typo in min/max cpufreq sdcardfs: Add support for d_canonical_path vfs: add d_canonical_path for stacked filesystem support sdcardfs: Bring up to date with Android M permissions: Changed type-casting in packagelist management Port of sdcardfs to 4.4 Included sdcardfs source code for kernel 3.0 ANDROID: usb: gadget: Add support for MTP OS desc CHROMIUM: usb: gadget: f_accessory: add .raw_request callback CHROMIUM: usb: gadget: audio_source: add .free_func callback CHROMIUM: usb: gadget: f_mtp: fix usb_ss_ep_comp_descriptor CHROMIUM: usb: gadget: f_mtp: Add SuperSpeed support FROMLIST: mmc: block: fix ABI regression of mmc_blk_ioctl FROMLIST: mm: ASLR: use get_random_long() FROMLIST: drivers: char: random: add get_random_long() FROMLIST: pstore-ram: fix NULL reference when used with pdata usb: u_ether: Add missing rx_work init ANDROID: dm-crypt: run in a WQ_HIGHPRI workqueue misc: uid_stat: Include linux/atomic.h instead of asm/atomic.h hid-sensor-hub.c: fix wrong do_div() usage power: Provide dummy log_suspend_abort_reason() if SUSPEND is disabled PM / suspend: Add dependency on RTC_LIB drivers: power: use 'current' instead of 'get_current()' video: adf: Set ADF_MEMBLOCK to boolean video: adf: Fix modular build net: ppp: Fix modular build for PPPOLAC and PPPOPNS net: pppolac/pppopns: Replace msg.msg_iov with iov_iter_kvec() ANDROID: mmc: sdio: Disable retuning in sdio_reset_comm() ANDROID: mmc: Move tracepoint creation and export symbols ANDROID: kernel/watchdog: fix unused variable warning ANDROID: usb: gadget: f_mtp: don't use le16 for u8 field ANDROID: lowmemorykiller: fix declaration order warnings ANDROID: net: fix 'const' warnings net: diag: support v4mapped sockets in inet_diag_find_one_icsk() net: tcp: deal with listen sockets properly in tcp_abort. tcp: diag: add support for request sockets to tcp_abort() net: diag: Support destroying TCP sockets. net: diag: Support SOCK_DESTROY for inet sockets. net: diag: Add the ability to destroy a socket. net: diag: split inet_diag_dump_one_icsk into two Revert "mmc: Extend wakelock if bus is dead" Revert "mmc: core: Hold a wake lock accross delayed work + mmc rescan" ANDROID: mmc: move to a SCHED_FIFO thread Conflicts: drivers/cpufreq/cpufreq_interactive.c drivers/misc/uid_stat.c drivers/mmc/card/block.c drivers/mmc/card/queue.c drivers/mmc/card/queue.h drivers/mmc/core/core.c drivers/mmc/core/sdio.c drivers/staging/android/lowmemorykiller.c drivers/usb/gadget/function/f_mtp.c kernel/watchdog.c Signed-off-by: Runmin Wang <runminw@codeaurora.org> Change-Id: Ibb4db11c57395f67dee86211a110c462e6181552
2016-09-12phy: qcom-ufs-qmp-v3: add ops to dump phy regsVenkat Gopalakrishnan
It's useful to dump phy registers on failure to debug link issues. Export a new ops for the ufs driver to invoke during link failures. Change-Id: Id3a9c9085375b783d97e7f2ffd3e11ec469aedb9 Signed-off-by: Venkat Gopalakrishnan <venkatg@codeaurora.org>
2016-09-11Merge "pinctrl: qcom: spmi-gpio: Add support for GPIO LV/MV subtype"Linux Build Service Account
2016-09-09Merge "sched: Further re-factor HMP specific code"Linux Build Service Account
2016-09-08Merge "mfd: wcd9xxx: Reduce irqsoff latency"Linux Build Service Account
2016-09-08sched: Further re-factor HMP specific codeSyed Rameez Mustafa
The structures being moved around are only used for trace events defined under CONFIG_SCHED_HMP. Move code to hmp.c to reflect the same. Change-Id: Ib959355264405ab779b24948f111a2ca61d367de Signed-off-by: Syed Rameez Mustafa <rameezmustafa@codeaurora.org>
2016-09-07Merge "power_supply: add two properties for step charging"Linux Build Service Account
2016-09-07power_supply: add two properties for step chargingHarry Yang
STEP_CHARGING_ENABLED indicates if step charging is enabled or not. STEP_CHARGING_STEP reflects step charging phase. Both properties are added for the purpose of testing and debugging. CRs-Fixed: 1052854 Change-Id: I7d7517ab3f172016bb2f1c23fb2788bbd2d01086 Signed-off-by: Harry Yang <harryy@codeaurora.org>
2016-09-05input: ft5x06: defer touch resume to workqueuezhaoyuan
During device resume, the touch resume function is called after display's resume. In this case, the ft5x06's resume function needs to wait for 200ms because of reset requirement. Defer the touch resume to a workqueue to reduce the total device resume time. For this an optional DT property is added to enable this on targets that need this feature. Change-Id: Ib0677ca792aea83ece1caf8a0afff341302747fb Signed-off-by: Himanshu Aggarwal <haggarwa@codeaurora.org> Signed-off-by: zhaoyuan <yzhao@codeaurora.org>
2016-08-30input: ft5x06_ts: remove proximity sensor supportSudhakar Manapati
remove psensor support as the linux/sensors.h file is not yet merged in msm-3.18 kernel. Change-Id: I6d46b35938b7420072f9245ffa27bb59f28d5e03 Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-08-30input: ft5x06_ts: add gesture feature supportMao Li
Focaltech touch controller FT6436 support new feature Screen-off-Gesture. It is able to turn on the screen by drawing gestures on the touch screen when the screen is during off status. Enable the FT CTP driver to support the screen off gesture recognization. This patch is propagated from msm-3.18 kernel. 'commit 5cc0bff80d65 ("input: ft5x06_ts: add gesture feature support")' Also cleared the following checkpatch warnings. - Missing a blank line after declarations - Missing a blank line after declarations - Comparisons should place the constant on the right side of the test. Change-Id: I77d111d3ef800b636a337221d7e605f746a113dd Signed-off-by: Mao Li <maol@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-08-30driver-core: platform: Add platform_irq_count()Stephen Boyd
A recent patch added calls to of_irq_count() in the qcom pinctrl drivers and that caused module build failures because of_irq_count() is not an exported symbol. We shouldn't export of_irq_count() to modules because it's an internal OF API that shouldn't be used by drivers. Platform drivers should use platform device APIs instead. Therefore, add a platform_irq_count() API that mirrors the of_irq_count() API so that platform drivers can stay DT agnostic. Change-Id: I34cfc11feb2fbc2acc41e3697006d86a3cad3445 Cc: Andy Gross <andy.gross@linaro.org> Acked-by: Rob Herring <robh@kernel.org> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Git-commit: 4b83555d5098e73cf2c5ca7f86c17ca0ba3b968e Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git Signed-off-by: Fenglin Wu <fenglinw@codeaurora.org>
2016-08-29Merge "ARM: dts: msm: add audio codec as child of MSM External display"Linux Build Service Account
2016-08-29Merge "msm: qpnp-haptic: Update function declarations"Linux Build Service Account
2016-08-29RFC: FROMLIST: cgroup: avoid synchronize_sched() in __cgroup_procs_write()Peter Zijlstra
The current percpu-rwsem read side is entirely free of serializing insns at the cost of having a synchronize_sched() in the write path. The latency of the synchronize_sched() is too high for cgroups. The commit 1ed1328792ff talks about the write path being a fairly cold path but this is not the case for Android which moves task to the foreground cgroup and back around binder IPC calls from foreground processes to background processes, so it is significantly hotter than human initiated operations. Switch cgroup_threadgroup_rwsem into the slow mode for now to avoid the problem, hopefully it should not be that slow after another commit 80127a39681b ("locking/percpu-rwsem: Optimize readers and reduce global impact"). We could just add rcu_sync_enter() into cgroup_init() but we do not want another synchronize_sched() at boot time, so this patch adds the new helper which doesn't block but currently can only be called before the first use. Cc: Tejun Heo <tj@kernel.org> Cc: Paul McKenney <paulmck@linux.vnet.ibm.com> Reported-by: John Stultz <john.stultz@linaro.org> Reported-by: Dmitry Shmidt <dimitrysh@google.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Signed-off-by: Oleg Nesterov <oleg@redhat.com> [jstultz: backported to 4.4] Change-Id: I34aa9c394d3052779b56976693e96d861bd255f2 Mailing-list-URL: https://lkml.org/lkml/2016/8/11/557 Signed-off-by: John Stultz <john.stultz@linaro.org> Git-commit: 0c3240a1ef2e840aaa17f593326e3642bc857aa7 Git-repo: https://android.googlesource.com/kernel/common/+/android-4.4 Signed-off-by: Omprakash Dhyade <odhyade@codeaurora.org>