Commit graph

572249 commits

Author SHA1 Message Date
Jordan Crouse
ea91f74673 msm: kgsl: Leave the MMU clocks on with the rest of the GPU
It is no longer power efficient to independently enable and disable
the MMU clocks. We can safely enable and disable them with the rest
of the GPU clocks and take back the infrastructure needed to handle
the clocks.

CRs-Fixed: 1009124
Change-Id: Ic0dedbadc48095eada9c5fce6004475a2cb0f0a9
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2016-07-20 15:19:33 -06:00
Carter Cooper
2e7b23f2af msm: kgsl: Use the GPU to write the RPTR
The memstore shared between the CPU and GPU is old but can not be
messed with. Rather than stealing values from it where available,
add a new block of shared memory that is exclusive to the driver
and GPU. This block can be used more freely than the old
memstore block.

Program the GPU to write the RPTR out to an address the CPU can read rather
than having the CPU read a GPU register directly. There are some very
small but very real conditions where different blocks on the GPU have
outdated values for the RPTR. When scheduling preemption the value read
from the register could not reflect the actual value of the RPTR in the CP.
This can cause the save/restore from preemption to give back incorrect RPTR
values causing much confusion between the GPU and CPU.

Remove the ringbuffers copy of the read pointer shadow.
Now that the GPU will update a shared memory address with the
value of the read pointer, there is no need to poll the register
to get the value and then keep a local copy of it.

CRs-Fixed: 987082
Change-Id: Ic44759d1a5c6e48b2f0f566ea8c153f01cf68279
Signed-off-by: Carter Cooper <ccooper@codeaurora.org>
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2016-07-20 15:19:32 -06:00
Rajesh Kemisetti
0ff59e6262 msm: kgsl: Stop fault_timer before reading fault registers
Currently adreno_ft_regs_val is getting updated at the time of
first submission or on the expiry of fault_timer.

If the fault_timer expires exactly at the time of inflight becomes 0
and there is an immediate submission for which GPU finishes the work
within short time. Then there is a chance to read the fault registers
in fault_detect_read() and fault_detect_read_compare() with less
time gap and declare it as a fault.

Stop the timer before reading fault registers and start it again.

CRs-Fixed: 1043478
Change-Id: Ib35104adf7b3618f94c6adf7fab531abffea3f76
Signed-off-by: Rajesh Kemisetti <rajeshk@codeaurora.org>
2016-07-20 15:19:32 -06:00
Shubhraprakash Das
6dee9ee63f msm: camera isp: Control camif interrupts on camif enable/disable
Turn off the camif interrupts when camif is disabled and turn them
on when camif is enabled. Also, improve the code to keep track of
interrupts that are enabled by updating them in the function that
sets interrupts instead of doing it in multiple places.

CRs-Fixed: 1037272
Change-Id: I1cc965696c06bd3901d86668aaf597abb3ef2d6d
Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
2016-07-20 11:48:57 -07:00
Linux Build Service Account
9e4b3ba4af Merge "soc: qcom: code cleanup for service-locator" 2016-07-20 08:07:33 -07:00
Linux Build Service Account
b1210d3650 Merge "msm: vidc: Increase output port buffer size for VP9 decode" 2016-07-20 08:07:32 -07:00
Linux Build Service Account
135ada4b84 Merge "wcnss: Avoid user buffer overloading for write cal data" 2016-07-20 08:07:31 -07:00
Linux Build Service Account
043976c57f Merge "ARM: dts: msm: add gpio controller node for msmcobalt" 2016-07-20 08:07:28 -07:00
Linux Build Service Account
ee51bb2ba3 Merge "qcom-charger: smb138x-charger: change power supply type to usb parallel" 2016-07-20 08:07:27 -07:00
Linux Build Service Account
9d47bda2f3 Merge "ARM: dts: msm: update min voltage for pmcobalt s5 and s7" 2016-07-20 08:07:26 -07:00
Linux Build Service Account
7d113eb7d6 Merge "ARM: dts: msm: add ion heaps for msmfalcon" 2016-07-20 08:07:25 -07:00
Linux Build Service Account
8ac4813eb5 Merge "ARM: dts: msm: Add initial memory map for msmfalcon" 2016-07-20 08:07:24 -07:00
Dhoat Harpal
fd706908c9 ARM: dts: msm: Add ipc-spinlock entry for MSMFALCON
Add the ipc-spinlock entry to facilitate locking between apps and
non-apps processors.

CRs-Fixed: 1043377
Change-Id: I097e5464ec6ab80c12bcdb5f38d0599fa40da9ee
Signed-off-by: Dhoat Harpal <hdhoat@codeaurora.org>
2016-07-20 20:00:20 +05:30
Raviteja Tamatam
c4469317c0 msm: mdss: fix mdss errors on 32-bit compilation
Changes made to fix mdss compilation errors on
32-bit mode

Change-Id: Ic28f6f36781154ff0c28f4636ade8523d753ab6a
Signed-off-by: Raviteja Tamatam <travitej@codeaurora.org>
2016-07-20 16:19:35 +05:30
Anand Kumar
f009a48f80 wcnss: Avoid user buffer overloading for write cal data
compare size of allocated cal data buffer from heap
and count bytes provided to write by user to avoid
heap overflow for write cal data.

Change-Id: Id70c3230f761385489e5e94c613f4519239dfb1f
CRs-Fixed: 1032174
Signed-off-by: Anand Kumar <anandkumar@codeaurora.org>
2016-07-20 00:35:18 -07:00
Yeleswarapu Nagaradhesh
5e351f3751 ARM: dts: msm: add gpio controller node for msmcobalt
WCD934X audio codec has GPIO controller and hence add
pinctrl node for WCD934X pinctrl driver. Change WSA GPIO's
to codec GPIO's.

CRs-Fixed: 1041199
Change-Id: I0f04c08587f080eb2df7341d41344ce2079de21b
Signed-off-by: Yeleswarapu Nagaradhesh <nagaradh@codeaurora.org>
2016-07-20 12:37:23 +05:30
Yeleswarapu Nagaradhesh
7f5b8235c1 ASoC: wcd9335: add all child devices of codec
New codec child nodes are added to handle wsa881x
enable pin. Add all the child devices of codec.

CRs-Fixed: 1041199
Change-Id: I889922a0c36ec80ee6ede95b2f19f80791323332
Signed-off-by: Yeleswarapu Nagaradhesh <nagaradh@codeaurora.org>
2016-07-20 00:01:03 -07:00
Yeleswarapu Nagaradhesh
1b289a8a23 ASoC: wcd: add wcd934x gpio controller device
Add wcd934x gpio controller as child to codec node
and add all child devices of codec.

CRs-Fixed: 1041199
Change-Id: I32ad5c5c8c9dd30a79818c873cfe1d121fd62d49
Signed-off-by: Yeleswarapu Nagaradhesh <nagaradh@codeaurora.org>
2016-07-19 23:31:09 -07:00
Linux Build Service Account
7eb20e5733 Merge "msm: vidc: Add support for setting packed QP range" 2016-07-19 18:48:00 -07:00
Linux Build Service Account
25a5fb85c0 Merge "qcom: wcd934x: add pinctrl driver for wcd934x" 2016-07-19 18:47:59 -07:00
Linux Build Service Account
3225611f1d Merge "NFC: Fix crash due to invalid use of ese gpio" 2016-07-19 18:47:58 -07:00
Linux Build Service Account
88451207ce Merge "msm: vidc: check for venus_hfi_device state in resume" 2016-07-19 18:47:57 -07:00
Linux Build Service Account
c9176f0451 Merge "msm: camera: ispif: RDI Pack mode support" 2016-07-19 18:47:56 -07:00
Linux Build Service Account
b673198869 Merge "sched/core: Fix uninitialized variable used for tracepoint" 2016-07-19 18:47:55 -07:00
Linux Build Service Account
3a2dd33cfb Merge "sched/core: Fix null-pointer dereference" 2016-07-19 18:47:55 -07:00
Linux Build Service Account
83e5e75fab Merge "ARM: dts: msm: Remove SMD device for DSPS edge for MSMCOBALT" 2016-07-19 18:47:54 -07:00
Linux Build Service Account
67f5028611 Merge "ARM: dts: msm: Remove SMD device for ADSP edge for MSMCOBALT" 2016-07-19 18:47:53 -07:00
Linux Build Service Account
0520f0ab44 Merge "ARM: dts: msm: Remove SMD device for Modem edge for MSMCOBALT" 2016-07-19 18:47:53 -07:00
Linux Build Service Account
f0d75197a8 Merge "WLAN subsystem: Sysctl support for key TCP/IP parameters" 2016-07-19 18:47:51 -07:00
David Dai
445a76b790 ARM: dts: msm: Add GDSC data for mnoc fab for msmcobalt
Add gdsc_mdss, gdsc_camss_top, gdsc_venus references in order
to enable client side clocks during QoS configuration. Also
include mmssnoc_axi reference so that we can guarantee bus clock
to be on at the time of QoS configuration in the event
that the initial bandwidth vote from client is 0.

CRs-Fixed: 1043729
Change-Id: If8e08112d065e1327fd54d7b0daf511632aa059f
Signed-off-by: David Dai <daidavid1@codeaurora.org>
2016-07-19 17:28:04 -07:00
Puja Gupta
06ab5bc8cf soc: qcom: code cleanup for service-locator
Module parameter already exists to control enabling service-locator,
which is enabled by default using kernel command line. Hence removing
sysfs entry 'service_locator_status'.

CRs-Fixed: 1025447
Change-Id: Ie302e79ff838837f214ac50ebfaa6e11f0055915
Signed-off-by: Puja Gupta <pujag@codeaurora.org>
2016-07-19 16:17:37 -07:00
Nicholas Troast
081d5841c7 qcom-charger: smb138x-charger: change power supply type to usb parallel
Currently the type of the parallel power supply is
POWER_SUPPLY_TYPE_BATTERY. Change it to POWER_SUPPLY_TYPE_USB_PARALLEL.

Change-Id: Ic7652e43781f39d3137fb55f2fec2423e457fac4
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2016-07-19 09:09:12 -07:00
Nicholas Troast
6f50a62d39 ARM: dts: msm: update min voltage for pmcobalt s5 and s7
PMCOBALT S5 is an always on regulator that sources the internal
infrastructure for XO. It's minimum operating voltage is 1904 mV.
PMCOBALT S7 has a 900 mV minimum operating voltage.
Update the minimum voltage for PMCOBALT S5 and S7.

Change-Id: I4ec609b45f5313d7c19ff6201742b0c5daf54174
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2016-07-19 09:06:34 -07:00
Linux Build Service Account
7ebe256eaa Merge "ASoC: msm: Add support for 192KHZ sampling rate on mi2s rx ports" 2016-07-19 03:39:57 -07:00
Linux Build Service Account
7e2261a267 Merge "ASoC: msm: Implementing Tx mute in ASM loopback" 2016-07-19 03:39:56 -07:00
Deepak Kushwah
12d028e02f msm: vidc: Add support for setting packed QP range
Add support for setting packed QP range for clients
to set different QP Range for I, P, B frames.

CRs-Fixed: 1043369
Change-Id: I3765506f1d703f47e481719296ab890b1f3dc106
Signed-off-by: Deepak Kushwah <dkushwah@codeaurora.org>
2016-07-19 03:32:47 -07:00
Deepak Kushwah
816c3cbc37 msm: vidc: add support for maximum bitrate rate control mode
Add support for maximum bitrate rate control mode which will be
enabled by low bitrate applications to get better Video quality.

CRs-Fixed: 1043369
Change-Id: I20253a0f0762982fe7d7cb0bde9f64f58a8068fb
Signed-off-by: Deepak Kushwah <dkushwah@codeaurora.org>
2016-07-19 03:32:33 -07:00
Yeleswarapu Nagaradhesh
8aa9aba222 qcom: wcd934x: add pinctrl driver for wcd934x
WCD934X audio codec has a GPIO controller which can support
5 GPIO's, add pinctrl driver to handle GPIO's of wcd934x.

CRs-Fixed: 1041199
Change-Id: I0489f9149cfd6ec7af056d074cb1869a705f9eff
Signed-off-by: Yeleswarapu Nagaradhesh <nagaradh@codeaurora.org>
2016-07-19 10:58:13 +05:30
Yeleswarapu Nagaradhesh
00f153a5b1 ARM: dts: msm: add sound node for msmcobalt
Add sound node and lnbbclk2 node for msmcobalt
to enable audio functionality.

CRs-Fixed: 1041199
Change-Id: If6066a42b8aa5a820263a88627e2405df5e227b7
Signed-off-by: Yeleswarapu Nagaradhesh <nagaradh@codeaurora.org>
2016-07-19 10:56:54 +05:30
Abdulla Anam
8ce0856ed3 msm: vidc: check for venus_hfi_device state in resume
Now since resume is called to ensure venus is in power on state
during scale clocks, an issue is seen when client responds to an
error notification with stream_off. This causes scale clocks to
be called which powers_on venus and enable regulators. But an
earlier sys_error deinited all resources and hence a null pointer
exception is seen causing kernel panic.

CRs-Fixed: 1040026
Change-Id: Ibb660397f8e7e3e0cd0a5e672924925e605b2eb7
Signed-off-by: Abdulla Anam <abdullahanam@codeaurora.org>
2016-07-18 22:22:58 -07:00
Chinmay Sawarkar
dd5ea1bc0f msm: vidc: Increase output port buffer size for VP9 decode
For some VP9 Decode bitstreams, current buffer size is not
sufficient. Hence increasing to the full YUV size supported
by HW.

CRs-Fixed: 986311
Change-Id: Ie7720001edbbaed8b202655445707b2b49a69cb1
Signed-off-by: Chinmay Sawarkar <chinmays@codeaurora.org>
2016-07-18 18:47:03 -07:00
Linux Build Service Account
c4873787c3 Merge "ASoC: aud-ext-clk: enable lnbbclk2 for tavil" 2016-07-18 13:05:23 -07:00
Linux Build Service Account
5effe5f433 Merge "ASoC: wcd934x: enable recording for wcd934x audio codec" 2016-07-18 13:05:19 -07:00
Linux Build Service Account
3a95a76597 Merge "ASoC: wcd934x: add wcd934x audio codec driver" 2016-07-18 13:05:18 -07:00
Linux Build Service Account
d60cc82391 Merge "clk: msm: Add MSM clock config for MSM clock controller" 2016-07-18 08:07:52 -07:00
Shiraz Hashim
b47b524659 ARM: dts: msm: add ion heaps for msmfalcon
Add device tree configuration corresponding to all
supported ion heaps for msmfalcon.

Change-Id: I639e8bfb1275a1b8c8fa5bff3a46f9b34fe49ffe
Signed-off-by: Shiraz Hashim <shashim@codeaurora.org>
2016-07-18 12:53:07 +05:30
Shiraz Hashim
552bf6df75 ARM: dts: msm: Add initial memory map for msmfalcon
Add carve-outs, firmware regions and other cma areas as
part of initial memory map configuration for msmfalcon.

Change-Id: I2b0d35bf90b92f7fbd4256f339c1567d539e17b2
Signed-off-by: Shiraz Hashim <shashim@codeaurora.org>
2016-07-18 12:51:25 +05:30
Yeleswarapu Nagaradhesh
a78205449c ASoC: wcd934x: enable recording for wcd934x audio codec
Add support for Analog MIC and Digital MIC recording
for wcd934x codec.

CRs-Fixed: 1041199
Change-Id: I79e07682661fea99baaa29f8807eaf2f684f65be
Signed-off-by: Yeleswarapu Nagaradhesh <nagaradh@codeaurora.org>
2016-07-17 12:00:16 +05:30
Linux Build Service Account
8665552e83 Merge "clk: msm: clock-gcc-cobalt: Remove support for gcc_bimc_hmss_axi_clk" 2016-07-16 16:26:57 -07:00
Linux Build Service Account
fd57dc5180 Merge "qcom-charger: update parallel charging states after boot" 2016-07-16 16:26:56 -07:00