Commit graph

568696 commits

Author SHA1 Message Date
Yan He
5479fc7f28 msm: ep_pcie: update PCIe PHY register dump
Update the PHY register dump for PCIe Endpoint mode so that more
debugging information could be acquired in case of PHY failure.

Change-Id: I6b40df668d8a5c912547af701e8a2150db47452f
Signed-off-by: Yan He <yanhe@codeaurora.org>
2016-03-23 21:18:33 -07:00
Patrick Daly
f232630e10 soc: qcom: Add debugfs interface for enabling SOC debug events
Other processors/execution environments may support debug events. Implement
an 'smc instruction' based communications protocol and hook it up to
debugfs.

Change-Id: I3a99dfdac5df7edb874bd449d9abc5a929787758
Signed-off-by: Patrick Daly <pdaly@codeaurora.org>
2016-03-23 21:18:32 -07:00
David Collins
5fda6f8960 ARM: dts: msm: specify VDD_APCC CPR device properties for msm8996pro
Specify the MSM8996-Pro VDD_APCC CPR configurations.  This
includes a new corner mapping for the additional CPU frequencies
found on MSM8996-Pro as well as the voltage adjustments
appropriate for all of the frequencies.

Change-Id: Ia09252bf10ed81812bc8511136d97ca885de21a7
Signed-off-by: David Collins <collinsd@codeaurora.org>
2016-03-23 21:18:32 -07:00
David Collins
bb65d3eda4 ARM: dts: msm: update APM compatible property for msm8996pro
Specify an MSM8996-Pro specific APM device compatible string
for MSM8996-Pro boards.  This allows software to avoid imposing
various constraints during APM switching which are not required
for MSM8996-Pro chips.

Change-Id: I0664374ca347c0f66d95422cc9bfa4efb1a151ee
Signed-off-by: David Collins <collinsd@codeaurora.org>
2016-03-23 21:18:31 -07:00
David Collins
45dbf9c951 ARM: dts: msm: disable HMSS clock source overriding for msm8996pro
HMSS cluster clock source overriding is not required during APM
switching or VDD_APCC voltage changes on MSM8996pro chips.
Therefore, disable this feature for the APM and PM8994 S11
regulator device nodes.

Change-Id: I201373867a8f07742f6bf2794fa59fc1c4c34d74
Signed-off-by: David Collins <collinsd@codeaurora.org>
2016-03-23 21:18:30 -07:00
Shrenuj Bansal
b6200b61fb msm: kgsl: Properly enable bit 5 in CP_INIT mask
Use bit 5 in the CP_INIT_MASK to properly enable/disable
microcode workarounds.

Change-Id: I9f43c8c988c3179b3de2cce071339bc565b4a00d
Signed-off-by: Carter Cooper <ccooper@codeaurora.org>
2016-03-23 21:18:29 -07:00
Harshdeep Dhatt
e34ca145b3 msm: kgsl: Fix the snapshot mempool size calculation
The snapshot mempool size takes into account the memory
required for section headers. It was being calculated based
on old header structure. Update that to avoid corruption/
buffer overflow of the mempool memory.

Change-Id: I07274934e4c0dced707e03be3e31b2459e00d706
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
2016-03-23 21:18:28 -07:00
Ray Zhang
b131172459 ARM: dts: msm: change hx8394f GIP setting
There is a corrupted line displayed on top of the display in
some cases. It is introduced by insufficient charging time, so
fix it by revising panel's GIP setting.

Change-Id: Ic31f4a512b38a2f5e8c8419c1b72f0706cfc5ced
Signed-off-by: Ray Zhang <rayz@codeaurora.org>
2016-03-23 21:18:27 -07:00
Trilok Soni
7f0fe9c32e ARM: dts: msm: Add RTB support for msmcobalt
Add RTB (Register Trace Buffer) device tree entries for msmcobalt

Change-Id: I0742e7c762ffdfdf32058af58bd47646ad361725
Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
2016-03-23 21:18:27 -07:00
Deven Patel
6b521fda9c drivers: mfd: use single read and write mode for i2c regmap config
i2c doesn't support bulk read and write. Enable the single read and write
option in regmap configuration for audio codec to operate correctly in
i2c mode.

Change-Id: I8d27826fe634c660c848a2a8db78f8a31ba16ed0
Signed-off-by: Deven Patel <cdevenp@codeaurora.org>
2016-03-23 21:18:26 -07:00
Sanrio Alvares
61059c4df0 ARM: dts: msm: Reuse MSM8996 includes for MSM8996pro
Reuse existing include files for MSM8996pro.

Change-Id: Iad8cab4cf28f7d71078e5206bc70ab4b16152f2d
Signed-off-by: Sanrio Alvares <salvares@codeaurora.org>
2016-03-23 21:18:25 -07:00
Derek Chen
81aa95aa8c ASoC: msm: add port mixer routing for quat_mi2s_rx
Add port mixer routing support from aux_pcm_tx to quat_mi2s_rx.

Change-Id: I6c72ab41123de4f4ab3a37bd23c37c58d689e509
Signed-off-by: Derek Chen <chenche@codeaurora.org>
2016-03-23 21:18:24 -07:00
Viraja Kommaraju
793b94b398 ASoC: Add check for pointer and array index
Add check for NULL pointer access and
array index boundary.

Change-Id: Ia12a28c43b99158a90d27eecd23bdfd4b42b346e
Signed-off-by: Viraja Kommaraju <virajak@codeaurora.org>
2016-03-23 21:18:23 -07:00
Laxminath Kasam
6494d49985 ASoC: apr: add API to read subsys state
As audio DSP can be running in lpass or modem
based on chipset, add API to get the subsys state
from apr_v2(lpass) and apr_v3(modem) accordingly.

Change-Id: I7a2b6f12574edcc5f609ce8ddf684a840f86d676
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2016-03-23 21:18:22 -07:00
Laxminath Kasam
c006b9ad3b ASoC: qdsp6v2: move AFE clock macros to header
As AFE clock version macros can be used
in other drivers, move them to header file.

Change-Id: Iae5717c181e81bf7a6161742e8d062d09bedfb78
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2016-03-23 21:18:21 -07:00
Abinaya P
94ce65be3c leds: leds-qpnp-wled: set overwrite bit for switching frequency
While configuring the switching frequency for WLED, we need to set
the overwrite bit as well so that the switching frequency change
will get reflected.

Change-Id: I3e7f67b76ac49c1d925a8e84ea1280160ee044bd
Signed-off-by: Abinaya P <abinayap@codeaurora.org>
2016-03-23 21:18:21 -07:00
Vidyakumar Athota
964f63a545 ASoC: wcd9335: fix pop during CLS-AB mode
Pop is observed during starting of the playback in CLS-AB mode.
Fix the pop issue by updating register sequence properly.

Change-Id: Iff17245e8a2b14354cc99150a57394ce81ec29b8
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2016-03-23 21:18:20 -07:00
Deepak Katragadda
870f781d2c clk: msm: clock-local2: Add support for branch clocks rate aggregation
There are cases when multiple branch clocks need to be able to
scale their RCG independently. The RCG should then be configured
to run at the maximum rate of all it's children clocks which are
enabled at that point. Add support for this.

Change-Id: I90b7a9a3007792f65e0292d375e409ce1dbf0c08
Signed-off-by: Deepak Katragadda <dkatraga@codeaurora.org>
2016-03-23 21:18:19 -07:00
Shiraz Hashim
38a6f0388b mm/memblock: call kmemleak only for logically mapped region
On 32bit, memblock_alloc_range_nid can return block of
memory from highmem. Ensure kmemleak is called only for
logically mapped region.

Change-Id: I4491f199437d8401071ba5f98a8b0eedbaf47b00
Signed-off-by: Shiraz Hashim <shashim@codeaurora.org>
2016-03-23 21:18:18 -07:00
Alex Sarraf
91742a04a3 ARM: dts: msm: Change pull bias for touchscreen I2C node
When touchscreen is in sleep state, GPIOs are still in use.
Change touchscreen I2C pull bias in sleep state to remove
current leak.

Change-Id: I0112eb6944579c6b10861f19376cf8edccd73891
Signed-off-by: Alex Sarraf <asarraf@codeaurora.org>
2016-03-23 21:18:17 -07:00
Chris Lew
26d8c657ca diag: Change to update the range correctly on a range mismatch
Setting message masks with tools outside of the initial range
causes a reallocation of the structure with the wrong size.
This change updates the sizes to the correct values.

Change-Id: I8bb0d0b77cd4d2417b10345b6e4b09ff29ba5f8c
Signed-off-by: Christopher Lew <clew@codeaurora.org>
2016-03-23 21:18:16 -07:00
Lakshmi Narayana Kalavala
1b668751e4 msm: camera: support dynamic query for ahb vote
Few of the camera modules need to run ahb at higher
voltages like nominal and turbo. Hence add support
to query the voltage corner corresponding the core clocks
and vote for the corresponding ahb voltage.

Change-Id: I75a0ac84d32180f0bd5ce892f35515510e4e2e5f
Signed-off-by: Lakshmi Narayana Kalavala <lkalaval@codeaurora.org>
2016-03-23 21:18:16 -07:00
Jonathan Wicks
b290459823 msm: kgsl: Add A5x support for CONTEXT_SWITCH_YIELD preemption
Enable CP to process yield packets placed in the IB2s.

Change-Id: I2fadfb108a2dc42f574b3f6ed2e667baddb7889c
Signed-off-by: Jonathan Wicks <jwicks@codeaurora.org>
2016-03-23 21:18:15 -07:00
Tony Truong
7daad880e2 msm: pcie: mask the aggregated interrupt status register
Aggregated interrupts that are configured to be masked should
not be reported in the interrupt handler. Thus, mask the status
value being read in the interrupt handler to filter them out.

Change-Id: I6b563955309795ac2b68c2527cbd763f9300a029
Signed-off-by: Tony Truong <truong@codeaurora.org>
2016-03-23 21:18:14 -07:00
Tony Truong
99e08a1be6 msm: pcie: update PCIe PHY clock scheme
Update the PCIe PHY clock scheme based on the
new settings.

Change-Id: I8c0049766e610bf5d7230fb1a8c531ba681db9c3
Signed-off-by: Tony Truong <truong@codeaurora.org>
2016-03-23 21:18:13 -07:00
Tony Truong
5e06e809da msm: pcie: update PCIe PHY DUMP sequence for mdmcalifornium
Update the PCIe PHY DUMP sequence for mdmcalifornium based on
new settings while maintaining backward compatibility.

Change-Id: I8711709dee73d9552c911d10a71e2081d789a51b
Signed-off-by: Tony Truong <truong@codeaurora.org>
2016-03-23 21:18:12 -07:00
Venkata Narendra Kumar Gutta
ed41926607 ASoC: msm: qdsp6v2: Don't register to modem for SSR callbacks
Voice driver doesn't create any sessions related to voice call
on modem and hence there is no clean up on APSS is required
when modem SSR is triggered. Cleanup the code in voice driver
which is executed during modem SSR.

CRs-Fixed: 955696
Change-Id: I7536162e49b0eb56f63e7c8e59e0c050123c05fe
Signed-off-by: Venkata Narendra Kumar Gutta <vgutta@codeaurora.org>
2016-03-23 21:18:11 -07:00
Tirupathi Reddy
33fa8b5095 regulator: cpr3: Enable thread aggregation for CPR4 controller
Enable CPR thread aggregation regardless of which threads are
enabled or disabled. Also, disable threads in hardware that
are not used.

Change-Id: I969cb4b49d42577eca9902b1a26c71d40443efea
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
2016-03-23 21:18:10 -07:00
Rajesh Bondugula
922b17221e msm: camera: sensor: Update default CCI settings to 37.5Mhz
Update CCI settings for 100Khz, 400Khz and 1Mhz I2C
frequency with upgraded CCI frequency of 37.5 Mhz.
Disable clock stretching for 1Mhz I2C frequency and enable
for custom frequency.

Change-Id: Ib28eacc09028c0e2f3e36259f04b71fe0b827bf8
Signed-off-by: Rajesh Bondugula <rajeshb@codeaurora.org>
2016-03-23 21:18:10 -07:00
Chun Zhang
5316a9576e input: touchscreen: maxim_sti: remove SPI data swap in byte
SPI bus driver did data swap to address big-little endian conversion.
However, recent change in bus driver removes this conversion to align
with hardware peripheral design. Therefore, touchscreen driver sets
SPI bits per word to 16 in order to achieve best data transfer
performance and remove this swap.

Change-Id: Id24417e5afe055315b4c173961509aa7d6806034
Signed-off-by: Chun Zhang <chunz@codeaurora.org>
2016-03-23 21:18:09 -07:00
Karthikeyan Ramasubramanian
3eec48ca88 soc: qcom: ipc_router_glink_xprt: Queue receive intents appropriately
Currently IPC Router queues receive intents as soon as an intent request
is received. Queue a receive intent only if the current pool of
receive intents does not meet the request.

CRs-Fixed: 938394
Change-Id: I6c7a471bf0ed4a4e42f4c42126477de5ee4056a7
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@codeaurora.org>
2016-03-23 21:18:08 -07:00
Sudheer Papothi
e125c08ab8 ASoC: wcd9335: Increase slimbus clock gear for HPF settings
Increase slimbus clock gear for setting of Tx HPF(High pass filter)
cut off frequency properly. Change will ensure Tx HPF cut off
frequency will applied in the codec.

Change-Id: I7d7c3243c63cd3b9242a15344ecdae89ec9ee977
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-03-23 21:18:07 -07:00
Subbaraman Narayanamurthy
98d79920c8 regulator: qpnp-labibb: do not disable IBB when entering TTW mode
Currently when entering touch-to-wakeup (TTW) mode, IBB module
is disabled as part of the regulator_disable sequence before
applying the settings needed for SWIRE control in TTW mode.
This causes adversary effects such as droop in the VDISN
voltage rail.

To avoid this, as per the hardware documentation, do not disable
IBB module through IBB_ENABLE_CTL when LABIBB regulators are
disabled and entering TTW mode. Instead, just enter TTW mode and
mark the regulators disabled. Normal mode settings will be
applied when the regulators are enabled again as before.

While at it, add a centralized function qpnp_ibb_mode() to write
to IBB_ENABLE_CTL register.

CRs-Fixed: 952847
Change-Id: I74c6ba411091d146ab5719c2d72d6385fa90af21
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
2016-03-23 21:18:06 -07:00
Archana Sathyakumar
40fe32a315 lpm: Add sysfs node to display total sleep time
Add sysfs node to query the total sleep time of a cpu since debugfs node
is not exposed to the userspace service.

Command:
cat /sys/module/lpm_stats/cpu0/total_sleep_time_secs
cat /sys/module/lpm_stats/cpu1/total_sleep_time_secs
cat /sys/module/lpm_stats/cpu2/total_sleep_time_secs
cat /sys/module/lpm_stats/cpu3/total_sleep_time_secs

CRs-fixed: 935207
Change-Id: I45be0a8be29932816aa42e097657a2a60933b986
Signed-off-by: Archana Sathyakumar <asathyak@codeaurora.org>
Signed-off-by: Mahesh Sivasubramanian <msivasub@codeaurora.org>
2016-03-23 21:18:05 -07:00
Krishna Chaitanya Devarakonda
277fb0f7d0 msm: mdss: add support for dedicated WB mixer
In some MDP revisions, the layermixer which is
attached to writeback block, is dedicated. It cannot
be used for interfaces. Adding support to take care
of mixer allocations for WB and rotator paths,
for such MDP hardware.

Change-Id: I9df51cf419c1dae3d2ce10597017a05dca1023a8
Signed-off-by: Krishna Chaitanya Devarakonda <kdevarak@codeaurora.org>
2016-03-23 21:18:04 -07:00
Krishna Chaitanya Devarakonda
1f6940fa9c msm: mdss: Add mdss capabilities for msmgold
Add MDSS version info along with other capabilities
for msmgold.

Change-Id: Ia4602fdaf29bad28dffab4bb08a43a6eb6f32178
Signed-off-by: Krishna Chaitanya Devarakonda <kdevarak@codeaurora.org>
Signed-off-by: Kalyan Thota <kalyant@codeaurora.org>
Signed-off-by: Jayant Shekhar <jshekhar@codeaurora.org>
2016-03-23 21:18:04 -07:00
Jayant Shekhar
24f4f57184 msm: mdss: Add mdss capabilities for msmtitanium
Add MDSS version info along with other capabilities
for msmtitanium.

Change-Id: If9544098e8bb7f4b0d8198a931e5a7ef8eb561d4
Signed-off-by: Jayant Shekhar <jshekhar@codeaurora.org>
2016-03-23 21:18:03 -07:00
Kalyan Thota
d6d2450a70 msm: mdss: add xlog for debug in ping_pong timeout
Add addtional debug info to know the commit count
on pingpong timeout.

Change-Id: I1f40a5eee1a14efbf03487db9d398e04cd2e6f7c
Signed-off-by: Kalyan Thota <kalyant@codeaurora.org>
2016-03-23 21:18:02 -07:00
Ajay Singh Parmar
da4d92394d msm: mdss: hdmi: use hardware hot plug trigger
On receiving hot plug power off event, switch off 5V
regulator in case cable is still connected to sink to
receive disconnect hardware interrupt. Do not issue
software based disconnect event in this case as it can
cause different modules to go out of sync resulting in
unstable system.

Change-Id: I19d82b62e8ad507458abd21a8a71fbcae8adefec
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2016-03-23 21:18:01 -07:00
Sachin Bhayare
727dad9a94 msm: mdss: remove dsi-v2 file compilation from 8909.
For MSM8909 28nm DSI phy is used and dsi-v2 support is not needed.
So disabling dsi-v2 compilation for MDP3.

Change-Id: I7410c434debf119ddad2f6dd8052aabf31c0db6a
Signed-off-by: Sachin Bhayare <sachin.bhayare@codeaurora.org>
2016-03-23 21:18:00 -07:00
Sachin Bhayare
92650b303e msm: mdss: fix MDP3 compilation
Add missing header file, remove unused header file
and structure element mdp3_img_data.

Change-Id: I6a12a65f3ccb622927c3b69d599856299e7b8e65
Signed-off-by: Sachin Bhayare <sachin.bhayare@codeaurora.org>
2016-03-23 21:17:59 -07:00
Aravind Venkateswaran
5bcd9e74b2 msm: mdss: dsi: ensure lanes are idle prior to ULPS entry
It is possible that the ULPS entry request can potentially overlap with
the last DCS command that was sent out on the link. This is more likely
if the DCS command was sent in LP mode. In such cases, the panel could
see some issues in the LP transmission which may trigger an error when a
BTA is done subsequently. To address this, ensure that the lanes are
idle by checking that all active FIFOs are empty and the all active data
lanes are in stop state.

CRs-Fixed: 961817
Change-Id: Ia2575f06762f6bc847f64fb70e96a275712d9135
Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
2016-03-23 21:17:58 -07:00
Aravind Venkateswaran
039af32693 msm: mdss: dsi: validate ULPS config requests
In the current implementation, ULPS entry/exit requests are placed
whenever DSI link clocks are disabled/enabled. However, certain
optimizations can be done avoid unnecessary transitions such as for
cases when clocks are turned off briefly prior to panel
initialization/uninitialization, and then turned right back on to send
the panel on/off commands. Add these optimizations and avoid ULPS
configuration for such cases.

CRs-Fixed: 961817
Change-Id: Ie6c666b91e86697c37e0a557f9ba47811392ae90
Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
2016-03-23 21:17:58 -07:00
Tatenda Chipeperekwa
2b04658c0d msm: mdss: hdmi: retain clock state after successful handoff
When HDMI is selected as the primary interface, we want to
retain the HDMI clock state after a successful handoff to ensure
that the interface continues to send data to the sink. We achieve
this by maintaining the HDMI PHY status when we detect that
handoff is in progress.

Change-Id: I0aaefc96d63b9eaf3928c11b5dab51cce99e1dc3
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
2016-03-23 21:17:57 -07:00
Tatenda Chipeperekwa
d915167333 msm: mdss: hdmi: update panel power state for all hdmi use cases
Update the panel power state after the HDMI transmitter core is
powered on for all HDMI use cases (external and primary). This
will enable other entities (e.g. Audio driver) to query the correct
power state during boot up.

Change-Id: Ie6765880e9e9d9d6f087c1726d331ef2dd632cad
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
2016-03-23 21:17:56 -07:00
Tatenda Chipeperekwa
36266455ac Revert "msm: mdss: hdmi: tear down audio at bootup if already started"
This reverts commit b591582c5b5bf2ddee5e3857629bd7f39b8bdffa
("msm: mdss: hdmi: tear down audio at bootup if already started").
The programming sequence to tear down audio (as implemented on
MSM8994 platform) included directly writing to LPASS registers.
However, on 8996, TZ does not allow access to LPASS registers
from the APPS side.

Change-Id: I19c6c0d5f5019ea78463a2d0fbdbddd92edf7ab0
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
2016-03-23 21:17:55 -07:00
Ajay Singh Parmar
bf1475554b msm: mdss: clean up ctl during cont splash resolution change
During boot-up, if continuous splash screen is enabled, handoff
will populate the controller and other structures after reading
hardware info. If there is a resolution switch, clear the
handoff data so that the data can be reconfigured with new
resolution info.

Change-Id: Ia524136283711e95879936603bb53c5e8f263ea6
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
2016-03-23 21:17:54 -07:00
Tatenda Chipeperekwa
5fa6ce79b2 clk: qcom: mdss: set the hdmi vco clock rate
Set the VCO rate properly during handoff. This VCO rate can be
used during suspend-resume to reconfigure the PLL.

Change-Id: Ib67d68f28aa5bd3a09bf7bcc5802ee3b7af342ee
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
2016-03-23 21:17:53 -07:00
Tatenda Chipeperekwa
4a53d45f4b msm: mdss: hdmi: add pin-control and splash enable
Initialize the splash enabled flag when HDMI is primary.
This is required during probe time so the HDMI driver can
add pin-control vote, enable regulators, enable GPIOs and
enable clocks.

Change-Id: Iaaf3d983512619bda753b12e3d80ee8efe32d810
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
2016-03-23 21:17:52 -07:00
Ajay Singh Parmar
88af065f71 msm: mdss: hdmi: protect hpd power from multi-thread access
HPD (Hot Plug Detect) can be powered on or off by down stream
device like MHL or slimport driver based on cable connection
triggered by user. In response to that, HDMI transmitter power
on and off is triggered in a different thread. There can be
a race condition with transmitter power on/off and HPD power
on and off with fast plug in/out. Protect these functionalities
using mutex to avoid such race conditions and keep the HDMI state
machine in valid state.

Change-Id: I7fa8de10b96ca3cf674a0b7cf83b0f96cc177509
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2016-03-23 21:17:52 -07:00