Commit graph

575464 commits

Author SHA1 Message Date
Ben Romberger
e38f048fc1 ASoC: msmcobalt: Add Audio Notifier, PDR, and SSR to Kconfig
Enable the audio Notifier, PDR, and SSR drivers
for msmcobalt in the Kconfig.

Change-Id: Ief6e89b003aa1e2b02f33e21e3cb17f8731425ad
CRs-Fixed: 1054000
Signed-off-by: Ben Romberger <bromberg@codeaurora.org>
2016-09-26 14:50:43 -07:00
Ben Romberger
bc0560f6fa drivers: soc: Add Audio Notifier, PDR, and SSR drivers
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-26 14:50:05 -07:00
Ben Romberger
d8d534980f drivers: soc: Add Kconfigs for Audio Notifier, PDR, and SSR
Add separate Kconfigs for the audio SSR, audio PDR,
and audio notifier drivers. Allows precise control
of different audio recovery mechanisms.

Change-Id: I2ab027d4a6e2cb98df5358e24f6bebacd9aecca7
CRs-Fixed: 1054000
Signed-off-by: Ben Romberger <bromberg@codeaurora.org>
2016-09-26 14:49:54 -07:00
David Collins
ee65608bba ARM: dts: msm: modify VDD_APC0/1 CPR voltages for msmcobalt v2
Update the VDD_APC0 and VDD_APC1 CPR voltage configurations for
MSMCOBALT v2 devices in order to match the most recent guidelines
from hardware characterization.  Increase the VDD_APC0 and
VDD_APC1 Fmax and intermediate Nominal corner ceiling voltages
to 900 mV.  Also increase the VDD_APC0 Turbo_L1 open-loop and
closed-loop voltage adjustment to 30 mV.

Change-Id: Id2de8e2ac94476c1a4927f719f2987a31d692ab5
CRs-Fixed: 1070187
Signed-off-by: David Collins <collinsd@codeaurora.org>
2016-09-26 13:51:48 -07:00
David Collins
c9f2565720 ARM: dts: msm: correct PM8005 S1 min/max voltage for msmcobalt
Correct the minimum and maximum PM8005 SMPS 1 regulator voltage
constraints for MSMCOBALT v1 and v2 so that they encompass all
values that the VDD_GFX CPR control may need to request.

Change-Id: I479e23db73a64e0fc1371e6b5abfaf1c8969954b
CRs-Fixed: 1068464
Signed-off-by: David Collins <collinsd@codeaurora.org>
2016-09-26 13:48:25 -07:00
Puja Gupta
49516d6735 ARM: dts: msm: Add bus name to venus pil for MSMCOBALT
Add "qcom,msm-bus,name" property which is required for bus scaling to
venus pil node for MSMCOBALT.

CRs-Fixed: 1071217
Change-Id: I37e6f76b60ef0085d102c5d98179b467f6b77dee
Signed-off-by: Puja Gupta <pujag@codeaurora.org>
2016-09-26 10:59:25 -07:00
Hareesh Gundu
2defccd495 msm: kgsl: Revisit the GPU snapshot dumping
Add a new linux header to support 64 bit pagetable address in Linux OS
section.
Add a new linux context header to support v2+ Linux version in Linux
context section.
Remove multiple register reads on CP IB registers and have a single
CP register read to get the active IB information.
Add Active IBs to obj_list in case static snapshot blob is not having
enough memory, so that it get dumped into dynamic blob.
Add a message in case any active IB is not getting dumped into snapshot
binary.

Change-Id: Icee01f6ba95e469acac9eed6bf2fdbc83947f5a8
Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
2016-09-26 10:21:27 -07:00
Shantanu Jain
cf29d5ea82 input: touchscreen: Add debugfs support for suspend/resume.
Add debugfs entry for suspend/resume that allow suspending/
resuming of Goodix CTP driver from userspace. Also change
the return type of goodix_ts_resume and goodix_ts_suspend
functions and set the status of gtp_is_suspended in the last
of above functions.

Change-Id: Ic2b1b2562b63ccecdf15bdc64ad7e45996d196d3
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-09-26 16:09:42 +05:30
Manoj Prabhu B
998b7faca0 diag: Fix possible buffer corruption by proper typecasting
This patch removes the possibilty of header length and read length
having negative values and thereby possible buffer corruption.

CRs-Fixed: 1002389
Change-Id: Id74650d5c4aaf9f84a56372f60ff5a40374e8f7b
Signed-off-by: Manoj Prabhu B <bmanoj@codeaurora.org>
2016-09-25 22:57:01 -07:00
Sudhakar Manapati
740bb381f6 msm: reap unused kernel files
This change removes source files from the kernel tree that
were not being used during make.

Change-Id: I5132854367330a9b47f678409cbe6a45f2b5abb3
Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-25 22:52:45 -07:00
Shantanu Jain
f936c4437f input: touchscreen: Code clean-up for Goodix driver
Fix errors and warnings found by checkpatch script in
goodix_tool.c and gt9xx_update.c. Correct debug messages
in goodix_update.c. Remove magic numbers for read-write
flags with macros in goodix_tool.c

Change-Id: I3a00fb46106f859128f0fa9b8c99b5d6ba24bc7b
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-09-25 22:52:18 -07:00
Walter Yang
fac2eca782 ASoC: msm: initialize the params array before using it
The params array is used without initialization, which may cause
security issues. Initialize it as all zero after the definition.

CRs-Fixed: 1062271
Change-Id: If462fe3d82f139d72547f82dc7eb564f83cb35bf
Signed-off-by: Walter Yang <yandongy@codeaurora.org>
2016-09-25 19:24:31 -07:00
Vidyakumar Athota
a170ccba8c ASoC: msmcobalt: send ANC config for WCD9340 codec
ADSP requires ANC configuration to run the ANC algorithm.
Send the common configuration for both WCD9335 and WCD9340
codecs.

Change-Id: I12154b0aa315fde6dd92267d4c8f4a78a6f0236f
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2016-09-25 08:41:15 -07:00
Olav Haugan
ddaf94c768 defconfig: msmcortex: Enable core control
core control enables you to save power by controlling how many
cores are being used depending on the load in the system.

Change-Id: I5975f1e5d7a1947dc5ee1cf8a0c16ec88b0fc6fb
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-24 11:00:07 -07:00
Olav Haugan
e42aae958b sched/core_ctl: Integrate core control with cpu isolation
Replace hotplug functionality in core control with cpu isolation
and integrate into scheduler.

Change-Id: I4f1514ba5bac2e259a1105fcafb31d6a92ddd249
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-24 11:00:06 -07:00
Olav Haugan
e7c8de6756 sched/core_ctl: Refactor cpu data
Refactor cpu data into cpu data and cluster data to improve readability and
ease of understanding the code.

Change-Id: I96505aeb9d07a6fa3a2c28648ffa299e0cfa2e41
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-24 11:00:05 -07:00
Olav Haugan
5d1e98d51d trace: Move core control trace events to scheduler
Move the core control trace events to scheduler trace event file.

Change-Id: I65943d8e4a9eac1f9f5a40ad5aaf166679215f48
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-24 11:00:04 -07:00
Olav Haugan
59f16ae034 core_ctrl: Move core control into kernel
Move core control from out-of-tree module into the kernel proper.

Core control monitors load on CPUs and controls how many CPUs are
available for the system to use at any point in time. This can help save
power. Core control can be configured through sysfs interface.

Change-Id: Ia78e701468ea3828195c2a15c9cf9fafd099804a
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-24 11:00:03 -07:00
Olav Haugan
7f2c523643 core_ctl_helper: Remove code since it is not used anymore
Remove the core control helper code since this is not needed anymore
with subsequent patches that moves core control into the kernel.

Change-Id: I62acddeb707fc7d5626580166b3466e63f45fd89
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-24 11:00:02 -07:00
Olav Haugan
75c9d1833a defconfig: msm: Disable core control helper
Core control helper is not needed anymore with subsequent patches
that moves core control into the kernel.

Change-Id: I2c62af441fb9e5ba9f29719853a63e4c8f2d031b
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-24 11:00:01 -07:00
Olav Haugan
ca2c4c6518 sched/tick: Ensure timers does not get queued on isolated cpus
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-24 11:00:00 -07:00
Olav Haugan
639c8ad52d perf: Add cpu isolation awareness
Ensure perf events does not wake up idle cores when core is isolated.

Change-Id: Ifefb2f1cf6c24af7bc46fc62797955b8c8ad5815
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-24 10:59:59 -07:00
Olav Haugan
e38c1ce123 smp: Do not wake up all idle CPUs
Do not wake up cpus that are isolated.

Change-Id: I07702bb5b738c1c75c49a2ca4cb08be0231ccb12
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-24 10:59:58 -07:00
Olav Haugan
bc24c063ef pmqos: Enable cpu isolation awareness
Set long latency requirement for isolated cores to ensure LPM logic will
select a deep sleep state.

Change-Id: I83e9fbb800df259616a145d311b50627dc42a5ff
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-24 10:59:57 -07:00
Olav Haugan
287b1a8c1c vmstat: Add cpu isolation awareness
Ensure vmstat updates do not run on isolated cpus.

Change-Id: I401de0b52fa6d20573187265ee56edd543b1419e
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-24 10:59:56 -07:00
Olav Haugan
4400ef145f irq: Make irq affinity function cpu isolation aware
Prohibit setting the affinity of an IRQ to an isolated core.

Change-Id: I7b50778615541a64f9956573757c7f28748c4f69
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-24 10:59:55 -07:00
Olav Haugan
de1a32cd14 drivers/base: cpu: Add node for cpu isolation
Add a new per-cpu node to control isolation of CPU.

Usage:
echo 1 > isolate - Isolate the core
echo 0 > isolate - Unisolate the core

Change-Id: I6a13e8dda99130ca794e5b6f51600f4c57a3e921
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-24 10:59:54 -07:00
Olav Haugan
0a17b36a20 sched/core: Add trace point for cpu isolation
Add tracepoint to capture the cpu isolation event including KPI for
time it took to isolate.

Change-Id: If2d30000f068afc50db953940f4636ef6a089b24
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-09-24 10:59:42 -07:00
Olav Haugan
e33c24bfec sched: add cpu isolation support
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-24 10:55:17 -07:00
Vidyakumar Athota
36bd1b7663 ARM: dts: msm: add slimbus7 and slimbus8 cpu dais for msmcobalt
In msmcobalt platform, Slimbus7 and slimbus8 cpu dais are used for
BT and FM usecases. Add BT and FM cpu dais under sound-tavil
node.

Change-Id: I6cbe4167ab9d980b75f4fefdd4add0d8e8adaef8
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2016-09-24 09:56:55 -07:00
Linux Build Service Account
626caf4e54 Merge "ARM: dts: msm: Add support for venus pil on msmfalcon" 2016-09-24 07:55:26 -07:00
Linux Build Service Account
3d38968e50 Merge "sysrq: Fix warning in sysrq generated crash." 2016-09-24 07:55:26 -07:00
Gaurav Kohli
8c5779a456 ARM: dts: msm: Add support for venus pil on msmfalcon
Add support for VENUS PIL which facilitates the loading of venus
firmware, authentication and bringing it out of reset.

Change-Id: I53657d42b5cfe7dba63d8331127aca6551e553e1
Signed-off-by: Gaurav Kohli <gkohli@codeaurora.org>
2016-09-24 03:45:14 -07:00
Ani Sinha
ba57435ee4 sysrq: Fix warning in sysrq generated crash.
Commit 984d74a720 ("sysrq: rcu-ify __handle_sysrq") replaced
spin_lock_irqsave() calls with rcu_read_lock() calls in sysrq. Since
rcu_read_lock() does not disable preemption, faulthandler_disabled() in
__do_page_fault() in x86/fault.c returns false. When the code later calls
might_sleep() in the pagefault handler, we get the following warning:

BUG: sleeping function called from invalid context at ../arch/x86/mm/fault.c:1187
in_atomic(): 0, irqs_disabled(): 0, pid: 4706, name: bash
Preemption disabled at:[<ffffffff81484339>] printk+0x48/0x4a

To fix this, we release the RCU read lock before we crash.

Tested this patch on linux 3.18 by booting off one of our boards.

Fixes: 984d74a720 ("sysrq: rcu-ify __handle_sysrq")

Change-Id: I1827413e7e4fede197b3ebb6216239c07ae33a71
Signed-off-by: Ani Sinha <ani@arista.com>
Reviewed-by: Rik van Riel <riel@redhat.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Git-commit: 984cf355aeaa8f2eda3861b50d0e8d3e3f77e83b
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Signed-off-by: Gaurav Kohli <gkohli@codeaurora.org>
2016-09-24 03:43:50 -07:00
Linux Build Service Account
30931e7448 Merge "icnss: Provide ICNSS support of reading SOC serial number" 2016-09-24 02:00:58 -07:00
Linux Build Service Account
6e3db51c97 Merge "icnss: Add debug support of configuring QMI timeout" 2016-09-24 02:00:56 -07:00
Linux Build Service Account
9897e1c74c Merge "cnss: Add new case in cnss runtime PM request feature" 2016-09-24 02:00:55 -07:00
Linux Build Service Account
c843607461 Merge "msm: kgsl: Disable rbbm countable on a540" 2016-09-24 02:00:55 -07:00
Linux Build Service Account
c480cfd424 Merge "Revert "ARM: dts: msm: configure CX voltage levels from MDSS for msmcobalt"" 2016-09-24 02:00:54 -07:00
Linux Build Service Account
4b80b64e9d Merge "msm: mdss: expand vbif debug bus for msmcobalt" 2016-09-24 02:00:53 -07:00
Linux Build Service Account
463b2ded6a Merge "msm: mdss: fix truncation of 64 bit for clk rate" 2016-09-24 02:00:52 -07:00
Linux Build Service Account
97208825ec Merge "msm: mdss: Correct error handling in MDSS driver" 2016-09-24 02:00:51 -07:00
Linux Build Service Account
4d053949b2 Merge "ARM: dts: msm: fix low FPS issue on Sharp FHD panel" 2016-09-24 02:00:50 -07:00
Linux Build Service Account
6233bb2e48 Merge "ARM: dts: msm: update phy timing params for nt35597 panel on msmcobalt" 2016-09-24 02:00:49 -07:00
Linux Build Service Account
fbad4dc35a Merge "msm: mdss: Correct DSC panel dimension when dest-scaler enabled" 2016-09-24 02:00:49 -07:00
Linux Build Service Account
8890f12483 Merge "msm: mdss: disable Client Driven Prefetch" 2016-09-24 02:00:48 -07:00
Linux Build Service Account
6875b99e30 Merge "serial: msm_serial_hs: Change the wakeup interrupt enable sequence" 2016-09-24 02:00:42 -07:00
Linux Build Service Account
02663bfe05 Merge "usb: gadget: f_cdev: Avoid potential NULL pointer dereference" 2016-09-24 02:00:41 -07:00
Linux Build Service Account
1b95c57dc7 Merge "ASoC: msmcobalt: add support for MI2S and AUX PCM" 2016-09-24 02:00:40 -07:00
Linux Build Service Account
5487004966 Merge "ASoC: wsa881x: Update device state during device probe" 2016-09-24 02:00:39 -07:00