Commit graph

575431 commits

Author SHA1 Message Date
Viswanadha Raju Thotakura
fd39134867 msm: camera: Add regulator enable and disable independent of CSID
Regulator enable and disable of CSIPHY depends on the CSID module.
Make the enable and disable of clk regulator independent of CSIPHY.

CRs-Fixed: 1050172
Change-Id: Iefd57ae1c3fb5774b8043ef2e824acbacc8d16d2
Signed-off-by: Viswanadha Raju Thotakura <viswanad@codeaurora.org>
2016-09-27 13:40:33 -07:00
Phani Kumar Uppalapati
15c8a1727b drivers: mfd: Update wcd934x codec volatile register table
Add top-level wcd934x codec registers as volatile because
those registers get updated even before register map cache
initialization.

Change-Id: Ibdf5f695e5464b9597d153f725ff461f89b62ae4
Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
2016-09-27 11:02:14 -07:00
Himanshu Aggarwal
80fa7e9893 input: touchscreen: Fix issues in suspend path
Fix issues in suspend path in Goodix driver.

Change-Id: I280f2201c69838ad4da8eb94e9f10768f54ed457
Signed-off-by: Himanshu Aggarwal <haggarwa@codeaurora.org>4
Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-27 16:33:03 +05:30
Himanshu Aggarwal
12e637fc79 input: touchscreen: Remove redundant code from Goodix driver
Remove code that reads firmware from the header file,
this feature is not supported.

Change-Id: I6c18e153ddf18667ca83d47df20c71bce6dbfa21
Signed-off-by: Himanshu Aggarwal <haggarwa@codeaurora.org>
2016-09-27 15:55:44 +05:30
Shantanu Jain
e172c0da0e input: touchscreen: Remove irq polling from Goodix driver
Remove irq polling from Goodix driver. Use interrupt based
mechanism to process interrupts from touch controller.

Change-Id: I0a9037eac6e30a6319919043dd2ef1c226663af9
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-27 15:31:07 +05:30
Amit Nischal
5195746050 clk: msm: Fix compilation for clock_debug_print_enabled
In cases where we do not use the CONFIG_COMMON_CLK_MSM
and clients who use clock_debug_print_enabled would fail
compilation. Fix the same by adding the config check.

Change-Id: Iaa878754e1d769056a621066eb8a73e1bc55d3a0
Signed-off-by: Amit Nischal <anischal@codeaurora.org>
2016-09-27 14:25:10 +05:30
Govind Singh
aebb9befc6 net: cnss: Add support to get fw files for QCA SDIO target
Current implementation for getting fw files for a target is
supported only in PCIE based QCA chipsets. Add support to
get FW files for QCA SDIO targets.

CRs-Fixed: 1036232
Change-Id: If6c273d9a86f9fc4bc841388b11b96c385dc64f4
Signed-off-by: Govind Singh <govinds@codeaurora.org>
2016-09-27 00:13:45 -07:00
Shantanu Jain
1758da06e7 input: touchscreen: Add threaded irq support to Goodix driver
Add threaded irq support to Goodix touchscreen driver to reduce
the time spent with interrupts diabled to a bare minimum by
pushing the processing out into the kernel thread.

Change-Id: I3ade13181957d327ad9d0266b1999a4b0f2d8d1a
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-09-26 21:30:43 -07:00
Skylar Chang
b0756920f3 msm: ipa: unlock WLAN doorbell register access
Request TZ to unlock WLAN doorbell register for ipa
uC access for offload data path.

Change-Id: Ia79b1d8a9a0213c2f5296140bff7a36d3f035e21
Acked-by: Shihuan Liu <shihuanl@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
2016-09-26 17:57:12 -07:00
Hemant Kumar
85cc38fca2 usb: pd: Add support to set the maximum speed via extcon
Driver sets the speed using extcon cable state flag. This
allows to start host or peripheral in selected speed.
By default start peripheral in super speed mode. However,
starting host in super speed consumes more power so to
achieve lower consumption default it to high speed only.

Add module params to override the default behavior as follows:

 # echo Y|N > /sys/module/policy_engine/parameters/ss_dev
 # echo Y|N > /sys/module/policy_engine/parameters/ss_host

Change-Id: I2a45a4149f593a129b4dd123df730405169404f9
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2016-09-26 17:47:44 -07:00
Skylar Chang
15dc347f52 msm: ipa3: hal: change FnR prints to low
Change FnR rule creation prints to low in order to avoid IPC logging
flood.

Change-Id: I18a27267eebdca2c87bf4bffc11a120822cdc7c2
CRs-Fixed: 1064336
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
2016-09-26 15:38:16 -07:00
Sungjun Park
05f1f98cd1 ARM: dts: msm: Change L7A/L17A/L25A on msmcobalt
To prevent sleep current leakage, leave L7A/L17A/L25A
turn on during sleep and set LPM/NPM by pin control.

Change-Id: I787d3b4300fae8fb04ac1aa8d3b27b71e8bd7797
Signed-off-by: Sungjun Park <sjpark@codeaurora.org>
2016-09-26 15:28:02 -07:00
Skylar Chang
b544de499e msm: ipa3: increase SSR tag timeout
Increase the timeout in SSR case for TAG completion
as IPA might be slow in processing this command.

Change-Id: I5cfadb3ee7cb339b89b0c428bae46d3802476eb9
CRs-Fixed: 1064336
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
2016-09-26 15:27:31 -07:00
Phani Kumar Uppalapati
74c432dc9a ASoC: wcd934x: Avoid pop during dsd path tear down
Avoid pop during dsd audio path tear down by enabling
mute before the slim ports are disconnected.

Change-Id: I542fab59eadbea404c0001d25315172cc993488b
Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
2016-09-26 15:06:13 -07:00
Phani Kumar Uppalapati
33dbb2a735 ASoC: wcd934x: Check for null pointer before access
Check dsd config structure pointer for null before
access to prevent kernel panic.

CRs-fixed: 1070189
Change-Id: I791941fbede4b136c3f24d15b7fb0b60dd5477e6
Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
2016-09-26 14:59:51 -07:00
Ben Romberger
dec2bc73ee ASoC: msmcobalt: Enable msmcobalt to use audio notifier
Enable msmcobalt to use the audio notifier framework.
Audio notifier framework connects to the best available
framework for remote subsystem notifications such as
subsystem up or down.

Change-Id: Ib88a71e2fdb2b58fd5f87a65cb7d3253884f2d97
CRs-Fixed: 1054000
Signed-off-by: Ben Romberger <bromberg@codeaurora.org>
2016-09-26 14:51:07 -07:00
Ben Romberger
03ef2316fd drivers: soc: Enable APR driver to use audio notifier
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-26 14:50:54 -07:00
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