Commit graph

573660 commits

Author SHA1 Message Date
Linux Build Service Account
99295a318f Merge "soc: qcom: gladiator_erp_v2: initialize return value" 2016-08-03 21:12:48 -07:00
Linux Build Service Account
bb61ebf654 Merge "qcom-charger: qpnp-smb2: use values from hardware for default settings" 2016-08-03 21:12:47 -07:00
Linux Build Service Account
9887341b46 Merge "Revert "drivers: mfd: Return EPROBE_DEFER during codec failure"" 2016-08-03 21:12:46 -07:00
Linux Build Service Account
768b594f25 Merge "leds: qpnp-flash-v2: add support to query battery parameters" 2016-08-03 21:12:46 -07:00
Linux Build Service Account
e10d63350d Merge "clk: msm: clock: Add the NO_RATE_CACHE flag to DP clocks on MSMCOBALT" 2016-08-03 21:12:45 -07:00
Linux Build Service Account
46e710a5ec Merge "soc: qcom: core_ctl: Fix possible null-pointer dereference" 2016-08-03 21:12:44 -07:00
Linux Build Service Account
58f94dcd48 Merge "defconfig: arm64: msm: Re-enable qtaguid" 2016-08-03 21:12:44 -07:00
Linux Build Service Account
4f7f48c2bb Merge "ASoC: wcd9335: Add support to enable low power mode on codec" 2016-08-03 21:12:42 -07:00
Linux Build Service Account
6e0cc26af1 Merge "msm: mdss: add support for adaptive variable refresh feature" 2016-08-03 21:12:41 -07:00
Linux Build Service Account
06e18514c2 Merge "msm: sde: Correct rotator irq handler to acknowledge irq once" 2016-08-03 21:12:40 -07:00
Linux Build Service Account
286b461b04 Merge "msm: gsi: do not register to inter ee irq" 2016-08-03 21:12:33 -07:00
Linux Build Service Account
eff7f7ed60 Merge "msm: camera_v2: Fix a return code issue in smmu mapping" 2016-08-03 21:12:32 -07:00
Alan Kwong
fee01c1f97 msm: sde: shutoff memory and periphery when clock is off
Because of the CBCR update, rotator driver needs to control clock
state of memory core and periphery control when branch clock is off.
Since rotator does not have retention requirement, both memory core
and periphery control can be turned off to conserve power when core
rotator clock is off.

CRs-Fixed: 1044375
Change-Id: I42856f4fa638bffa30aae46753b81a8fabc7686c
Signed-off-by: Alan Kwong <akwong@codeaurora.org>
2016-08-03 22:42:12 -04:00
Srinivasarao P
febb3a5656 qcom: ssr: Fix possible overflow when copying firmware name
Array overflow can occur in firmware_name_store(), if the variable
buf contains the string larger than size of subsys->desc->fw_name

CRs-Fixed: 1050153
Change-Id: Ice39d7a1eb0b5f53125cc5d528021a99b9f7ff90
Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
2016-08-03 17:02:32 -07:00
Runmin Wang
4308d331f4 soc: qcom: gladiator_erp_v2: initialize return value
Initialize the return value before it is used in the driver to
make sure valid return value is returned.

CRs-Fixed: 1050136
Change-Id: I3e2c524ac87d57ae33cd0f28b9c62b2a39ee79ad
Signed-off-by: Runmin Wang <runminw@codeaurora.org>
2016-08-03 16:43:14 -07:00
David Collins
e8cea36bf8 regulator: cpr3-mmss-regulator: update msmcobalt partial binning
Update the algorithm applied to open-loop voltage partial binning
values so that it only affects the lowest two fused corners (i.e.
MinSVS and SVS).  These values correspond to valid voltages for
the highest two fused corners (i.e. Nominal and Turbo).

Change-Id: Ifa54325a1364f10b6f1760c52ad029612114759c
CRs-Fixed: 1050071
Signed-off-by: David Collins <collinsd@codeaurora.org>
2016-08-03 16:29:57 -07:00
Mayank Rana
18aefc7c0f usb: gadget: gsi: Optimize TRB's buffer allocation functionality
TRB's buffer related memory is allocated as part of gsi_bind() for each
USB GSI interface if it is part of USB compsition (i.e. USB multi config
composition). This memory is never de-allocated (i.e. USB cable
disconnect case) until USB composition switch. Also only one USB tethered
GSI interface is used out of mult-config based on selection of USB config
by USB host. Hence allocate TRB's buffer related memory after set_alt(1)
from ipa_work_handler() and de-allocate same from set_alt(0) OR USB
composition switch OR USB bus suspend with remote wakeup disable case.

Change-Id: I1bdfe16273186b594f83fd03936a461895701996
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
2016-08-03 16:15:58 -07:00
Mayank Rana
541cf8b3a3 usb: gadget: gsi: Use pm_runtime related API from state machine
Currently USB GSI function driver increments USB gadget device's
pm usage count on set_alt() and decrements on USB bus suspend or
USB cable disconnect case. Current code is not decrementing this
usage count when sm_state is STATE_INITIALIZED and USB cable is
disconnected (i.e. event EVT_DISCONNECTED posted). In this case,
USB doesn't go into low power mode although USB cable is disconnected.
Hence to handle this case make sure to increment USB device's PM
usage count from state machine instead of set_alt().

Also fix one of bug where state machine is peeking event but it is
not deleting same event from queue which shall result into using
same event multiple time in different states.

Use usb_gadget_autopm_get() instead of usb_gadget_autopm_get_noresume()
as noresume variant only increment usage count which is not sufficient
condition to prevent USB to go into LPM. usb_gadget_autopm_get()
increments both usage count and child count.

Change-Id: I667aef9208d14b2dff5944ad6ad9b053797c4ac9
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
2016-08-03 16:12:26 -07:00
Praneeth Paladugu
eee3003ae9 msm: vidc: Allow venus to power collapse in batch mode
In batch mode Venus will be IDLE after sending EBD's and FBD's
to host. Power collapsing Venus at this time can save power.

CRs-Fixed: 1049499
Change-Id: I795d14fd4bc3b5f31897a70009546238117b0825
Signed-off-by: Praneeth Paladugu <ppaladug@codeaurora.org>
2016-08-03 15:43:14 -07:00
Praneeth Paladugu
4eb08908fc ARM: dts: msm: Fix QOS settings for Venus on msmcobalt
QOS values are programmed wrongly for msmcobalt. This can
affect Venus performance. This change fixes the same.

CRs-Fixed: 1046678
Change-Id: I6d474c2279422abe63ad625f35809fe156e8c465
Signed-off-by: Praneeth Paladugu <ppaladug@codeaurora.org>
2016-08-03 15:39:14 -07:00
Sunil Paidimarri
959669cd36 msm: ipa: Neutrino IPA offload support
Add support for Neutrino IPA offload data path.

Change-Id: Id03f608ecce341684239cf17998d05af4aa55fb5
CRs-Fixed: 1019913
Signed-off-by: Sunil Paidimarri <hisunil@codeaurora.org>
2016-08-03 14:33:13 -07:00
Deepak Katragadda
6aa762aa9f clk: msm: clock: Add the NO_RATE_CACHE flag to DP clocks on MSMCOBALT
The set_rate requests from the display port clocks should always
make their way upto the DP PLL. Add the NO_RATE_CACHE flag to
clocks in that path in order to let this happen.

CRs-Fixed: 1050007
Change-Id: I6a848b04756b92f9b1149705176e8f4088b2a945
Signed-off-by: Deepak Katragadda <dkatraga@codeaurora.org>
2016-08-03 13:48:31 -07:00
Olav Haugan
b4f6cd620b soc: qcom: core_ctl: Fix possible null-pointer dereference
Ensure we don't try to call online/offline functions with a
null-pointer.

CRs-fixed: 1049957
Change-Id: I6fa8f9bde5d5fd0680b5c571ba3cc99bd1f508b1
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-08-03 11:54:26 -07:00
Bryse Flowers
5bd34ec6f4 defconfig: arm64: msm: Re-enable qtaguid
Re-enable QTAGUID so that bandwidth control is possible from
userspace now that stability issues have been resolved by
picking upstream commits.

Change-Id: If3b0be88f28da82a08dc4cc67006e8ee8ced5a72
CRs-Fixed: 1035969
Signed-off-by: Bryse Flowers <bflowers@codeaurora.org>
2016-08-03 11:36:47 -07:00
Devesh Jhunjhunwala
e92b084360 leds: qpnp-flash-v2: add support to query battery parameters
Register a notifier callback with the power_supply framework
to detect when the bms power_supply is available so that
it can be used to query the battery properties required from
the fuel gauge for the maximum current query algorithm.

CRs-Fixed: 1043718
Change-Id: Icd535025a2f888e188f89841f32ac5b822f9b20d
Signed-off-by: Devesh Jhunjhunwala <deveshj@codeaurora.org>
2016-08-03 11:35:18 -07:00
Joonwoo Park
dc6a9419c6 defconfig: msm: enable IRQ off and preempt off tracers
Enable CONFIG_IRQSOFF_TRACER and CONFIG_PREEMPT_TRACER to be able to
measure the time spent in irqs-off and preemption-off critical sections.

Change-Id: Icd3aedb9efc702d6bec0d4966d87f10c235d83e9
Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org>
2016-08-03 11:07:29 -07:00
Harry Yang
291f50a4a7 qcom-charger: smblib: update ICL votings in parallel charging
Add ICL vote to disable parallel charging on charger removal, as ICL
drops below the input threshold for parallel charging.

CRs-Fixed: 1049921
Change-Id: I8112070f7dd1eb385996b4f228ad288b51771e25
Signed-off-by: Harry Yang <harryy@codeaurora.org>
2016-08-03 11:06:54 -07:00
Linux Build Service Account
059df41e86 Merge "ASoC: wcd9335: don't check for HPHL and HPHR for mono headset" 2016-08-03 10:53:36 -07:00
Karthikeyan Ramasubramanian
a1fa510e64 soc: qcom: glink: Receive remote rx_intent with a cookie
Currently the remote rx_intent is stored with the primary information.
The transport cannot provide a cookie to be retrieved and used later during
transmission.

Add support to receive a remote rx_intent with a cookie.

CRs-Fixed: 1045916
Change-Id: Id5f204647205b2fde9e5cb422a3ddc8cc4f3a5a0
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@codeaurora.org>
2016-08-03 11:37:13 -06:00
Carter Cooper
f2af84b10c msm: kgsl: Allow 0 as a valid ion file descriptor
Treat 0 as a valid fd instead of treating it as an error.

CRs-Fixed: 1030098
Change-Id: I4a1b14fcbca617bc2a43b30af7256edc3920f04c
Signed-off-by: Carter Cooper <ccooper@codeaurora.org>
2016-08-03 10:34:05 -06:00
Hareesh Gundu
9d0f3261dc msm: kgsl: Make VBIF register dump more generic
Make VBIF register dump more generic to avoid adding new entry
for every VBIF revision. There will not be any change in register
mapping and address for new VBIF revision. AHB reads are permitted
throughout entire VBIF range. For all unoccupied registers read
values driven to 0 by HW but should not be relied upon.

CRs-Fixed: 1021711
Change-Id: I5aada474389e9189abcd38f1bc4854ada91dea87
Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
2016-08-03 10:34:05 -06:00
Jordan Crouse
a0c892b3a6 msm: kgsl: Remove event worker
Scheduling issues were occurring with the GPU event worker after
b7be807 (msm: kgsl: Unbind the kgsl-event workqueue) was merged.
In certain conditions, it seems that the kgsl-event workqueue
was conflicting with the KGSL worker and slowing it down.

It turns out that everywhere we schedule the event worker
and the dispatcher worker at the same time.  Since the worker
is singlethread, the event worker and the dispatcher run
synchronously anyway, so it makes sense to run the event processor
from within the dispatcher and save the extra schedule.

CRs-Fixed: 1043509
Change-Id: Ic0dedbad67eb04d41afb6add4477f146dfff9784
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2016-08-03 10:34:05 -06:00
Harshdeep Dhatt
956349c46c msm: kgsl: Read HLSQ SP/TP registers through debug aperture
Use crash dumper to read HLSQ SP/TP registers through debug ahb
aperture during device snapshot.

CRs-Fixed: 1019957
Change-Id: I3b18fd0d1eab28b6b3e5d314539cfbc15210f675
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
2016-08-03 10:34:05 -06:00
Hareesh Gundu
51cd5b571f msm: kgsl: Don't read CP_RB_RPTR register without clock
For A3xx we get GPU read pointer from the CP_RB_RPTR
register instead of rptr scratch memory address. In
retire_cmdbatch() and _retier_maraker() GPU clock will
be off, so avoid reading CP_RB_RPTR register. Also hold
device mutex in sendcmd() to access GPU registers.

CRs-Fixed: 1024730
Change-Id: Ifa5e9d3f892301685cb48a227ce4967d895499b1
Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
2016-08-03 10:34:05 -06:00
Deepak Kumar
7996822bbc msm: kgsl: Correct dma_buf_get function return value check
Check the return value of dma_buf_get function using
IS_ERR_OR_NULL as dma_buf_get function can return
ERR_PTR(-EINVAL) which won't be caught by simple NULL
check. This will avoid kernel panic due to invalid
pointer access.

CRs-Fixed: 1008517
Change-Id: I11ebf618edd25a251d3fb8bb7fbbb886e10d788f
Signed-off-by: Deepak Kumar <dkumar@codeaurora.org>
2016-08-03 10:34:04 -06:00
Harshdeep Dhatt
da3193916d msm: kgsl: Correct the size of SDS in snapshot
Dump 256 instead of 128 dwords of SDS as DRAW_STATE_ADDR is
actually 8 bits wide [7:0] and not 7 bits wide [6:0].

CRs-Fixed: 1023608
Change-Id: I8dcb07bf0a3b9e91b6ec7396d89239fdbd548ac0
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
2016-08-03 10:34:04 -06:00
Harshdeep Dhatt
ce48563d9b msm: kgsl: Add vbif version for A540
A540 has a new vbif version. Add it so that we can
dump vbif registers in snapshot for A540.

CRs-Fixed: 1024192
Change-Id: Id9323fa98951e2755fcc6903f84a450bc7ab6169
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
2016-08-03 10:34:04 -06:00
Harshdeep Dhatt
3529d2a995 msm: kgsl: Add A5XX_UCHE_DBG_ECO_CNTL_2 to snapshot
Add the register to be dumped in a5xx snapshot.

CRs-Fixed: 1024179
Change-Id: I316029caa10047828375ae0eab1f1d35d30fccb6
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
2016-08-03 10:34:04 -06:00
Hareesh Gundu
9613ec8da8 msm: kgsl: Reduce CP preemption record size
A5xx GPUs currently don't need more than 64KB for
CP preemption record.

CRs-Fixed: 1019529
Change-Id: I3df22b7b282fb8ff3269f01b2b258318fc83cbcb
Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
2016-08-03 10:34:04 -06:00
Harshdeep Dhatt
3dd8da5917 msm: kgsl: Add array of page pointers to memdesc
This is done to improve the kgsl vmfault routine. Currently,
it traverses the sglist to find the faulted page, which takes
linear time. By having an array of all the page pointers,
this operation will be completed in constant time.
Also, allocate sgt only for mapping this memory to the GPU.

Since this optimization is not needed for secure/global or
imported memory, we will not keep this array but keep
the sgt instead.

CRs-Fixed: 1006012
Change-Id: I221fce9082da0bdd59842455221b896a33a6ce42
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
2016-08-03 10:34:03 -06:00
Deepak Kumar
8e3020fadb msm: kgsl: Don't allocate memory for microcode if it is already allocated
This change adds a check to avoid allocating memory for loading microcode
in case it is already allocated. This avoids memory allocation failure
for microcode during multiple tries by userspace to open the kgsl device
in case of errors.

CRs-Fixed: 1043490
Change-Id: I018ebdb0dab1fc13af8d85a273c1c8b477fa1e26
Signed-off-by: Deepak Kumar <dkumar@codeaurora.org>
2016-08-03 10:34:03 -06:00
George Shen
b35803e790 msm: kgsl: track GPU active time per frequency
Tracks GPU active time per frequency for GPU workload
profiling. The data will be output in
/sys/class/kgsl/kgsl-3d0/gpu_clock_stats
with one u64 value in microseconds per clock level.
For example:
cat  /sys/class/kgsl/kgsl-3d0/gpu_clock_stats
39392 29292 929292 929292 4040404

CRs-Fixed: 1011462
Change-Id: I5f2caa8b38d99ffd23f03c1dfed1efda273fc2fb
Signed-off-by: George Shen <sqiao@codeaurora.org>
2016-08-03 10:34:03 -06:00
Bingzhe Cai
b1bafc4fd8 input: touchpanel: Goodix GT915 driver cleanup
Code clean up that makes the driver more like a linux driver.
Add some error recovery to make sure driver will not crash when
error is occurs. Also have cleared the checkpatch errors on 4.4.

This patch is propagated from 3.4 kernel 'commit c2fcdcda743f
("input: touchpanel: Goodix GT915 driver cleanup")'

Change-Id: I3af425f5f0251ec576168f72a2059f85c3be4358
Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org>
Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
[abinayap@codeaurora.org: Fix checkpatch errors for 4.4 kernel
- check for sizeof(p_cfg_grp)/sizeof(p_cfg_grp[0]) that could
be ARRAY_SIZE(p_cfg_grp)
- check for sizeof(touch_key_array)/sizeof(touch_key_array[0])
that could be ARRAY_SIZE(touch_key_array)
- Comparisons should place the constant on the right side
of the test]
Signed-off-by: Abinaya P <abinayap@codeaurora.org>
2016-08-03 20:45:25 +05:30
Linux Build Service Account
60aacdb787 Merge "qseecom: Change format specifier %p to %pK" 2016-08-03 04:58:55 -07:00
Linux Build Service Account
59c7ae105f Merge "msm: mdss: hdmi: send info frame for HDR video streams" 2016-08-03 04:58:53 -07:00
Linux Build Service Account
39fc21c853 Merge "input: touchscreen: Change touch driver suspend code flow for XO shutdown" 2016-08-03 04:58:50 -07:00
Linux Build Service Account
e47e325359 Merge "input: touchscreen: correct probe error path for ITE tech driver" 2016-08-03 04:58:49 -07:00
Linux Build Service Account
13013e38e0 Merge "ASoC: wcd-spi: SPI driver for WCD audio codecs" 2016-08-03 04:58:47 -07:00
Linux Build Service Account
9161b760ca Merge "wcd_dsp_mgr: Add the WCD DSP manager driver" 2016-08-03 04:58:46 -07:00
Linux Build Service Account
c3a74e4be7 Merge "msm: ipa: fix IPA driver processing context delete logic" 2016-08-03 04:58:45 -07:00