Commit graph

570358 commits

Author SHA1 Message Date
Skylar Chang
52d3e4b266 msm: ipa3: add support for TX of sk_buff's with paged data
This support is needed to enable GSO (Generic Segmentation
Offload) on msmcobalt.

Change-Id: Id9949bef91835318a7b344753983eea0aeab7bdc
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
2016-05-25 14:23:15 -07:00
Skylar Chang
c2698360a7 ARM: dts: msm: enable WA for IPA channel 20 for msmcobalt
Update IPA node to not not use IPA channel 20 due to hardware limitation.

Change-Id: Id849055526bf70e0cc8161239b4530a7fc575744
CRs-Fixed: 1005061
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
2016-05-25 14:23:05 -07:00
Skylar Chang
026e7f985b msm: ipa3: fix odu debugfs
Fix a bug in IPA ODU where debugfs directory was deleted after
creation.

CRs-Fixed: 1015545
Change-Id: I5aad7032f3f8048216a41765f1cf91fde98f6ade
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
2016-05-25 14:22:55 -07:00
Skylar Chang
1461f9a12d msm: ipa3: WA for incorrect state retention for GSI channel 20
This change in a software workaround for a hardware limitation
to not use GSI channel 20.

CRs-Fixed: 1005061
Change-Id: I4ed9f1c6ad089f80dcd19762fda151ce1572f471
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
2016-05-25 14:22:46 -07:00
Zhen Kong
e454b281ea ARM: dts: Add qrng driver support for msmcobalt
Add qrng driver support for msmcobalt. This enables qrng
to be used from hlos side.

Change-Id: I2c808713aaac42345b97665a8990f5bbb9b9145e
Signed-off-by: Zhen Kong <zkong@codeaurora.org>
2016-05-25 14:22:35 -07:00
Veera Sundaram Sankaran
2870836ed8 msm: mdss: fix possible out-of-bounds and overflow issue in mdp debugfs
There are few cases where the count argument passed by the user
space is not validated, which can potentially lead to out of bounds
or overflow issues. In some cases, kernel might copy more data than
what is requested. Add necessary checks to avoid such cases.

Change-Id: Ifa42fbd475665a0ca581c907ce5432584ea0e7ed
[veeras@codeaurora.org: Resolve conflicts in mdss_debug.c]
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-05-25 14:22:26 -07:00
Subash Abhinov Kasiviswanathan
b97da4469b net: Warn for cloned packets in ingress path on SMP systems only
GRO is currently enabled only on SMP systems so move the check for
cloned packets from commit b8a7d12f33ecba4 ("net: Warn for cloned
packets in ingress path") within CONFIG_RPS to prevent printing an
unnecessary warning on single core systems.

CRs-Fixed: 1006937
Change-Id: Ib8cb979136def6696861a7835bcde763dabe874f
Signed-off-by: Subash Abhinov Kasiviswanathan <subashab@codeaurora.org>
2016-05-25 14:22:16 -07:00
Gaurav Singhal
6ddfbd7d4f ARM: dts: msm: Add nfc device to msmcobalt
DT changes for nfc are required on msmcobalt describing
the GPIO behavior for the nfc controller chip.

Modified dtsi files for MTP and CDP device.

Change-Id: Id19733e6e075a427c4aa745b5bedc93f29a2dd4f
Signed-off-by: Gaurav Singhal <gsinghal@codeaurora.org>
2016-05-25 14:22:05 -07:00
Kishor PK
05bd41f94e trace: prevent NULL pointer dereference
Prevent unintended NULL pointer dereference in trace_event_perf.

Change-Id: I35151c460b4350ebd414b67c655684c2019f799f
Signed-off-by: Kishor PK <kpbhat@codeaurora.org>
Signed-off-by: Srinivasarao P <spathi@codeaurora.org>
Signed-off-by: Charan Teja Reddy <charante@codeaurora.org>
2016-05-25 14:21:54 -07:00
Divya Ponnusamy
231003b137 msm: kgsl: Avoid race condition in ioctl_syncsource_destroy
If the ioctl syncsource_destroy is accessed by parallel
threads, where the spinlock is acquired by threads after
getting syncsource, then the simultaneous processes try
to remove the already destroyed syncsource->refcount by
the first thread that acquires this spinlock. This leads
to race condition while removing syncsource->idr.

Avoid separate lock inside getting syncsource, instead
acquire spinlock before we get the syncsource in
destroy ioctl so that the threads access the spinlock
and operate on syncsource without use-after-free issue.

Change-Id: I6add3800c40cd09f6e6e0cf2720e69059bd83cbc
Signed-off-by: Divya Ponnusamy <pdivya@codeaurora.org>
2016-05-25 14:21:42 -07:00
Sunil Khatri
d7cd1d2051 msm: kgsl: Correction of VBIF debug bus data in snapshot
The debug bus information for VBIF block was not dumped
correctly for A5XX GPU during the snapshot dump.

Change-Id: I75089e210a6fc72683dcf98cdd4da9d6ab3e6fcf
Signed-off-by: Sunil Khatri <sunilkh@codeaurora.org>
2016-05-25 14:21:31 -07:00
Osvaldo Banuelos
75eedba41c regulator: cpr3-regulator: support corner bands with no adjustments
Corner bands used on CPRh controllers may not necessarily define
per-online-core or per-temperature adjustments. Do not
attempt to program adjustments on corner bands whose sdelta
tables do not have either core-count or temperature based
adjustments defined.

Change-Id: I87d18778fef81671c5e7cc261cc70ce07c662933
CRs-Fixed: 1020505
Signed-off-by: Osvaldo Banuelos <osvaldob@codeaurora.org>
2016-05-25 14:21:21 -07:00
Osvaldo Banuelos
2c0842299d regulator: cpr3-regulator: support step quot for CPRh controllers
The step quotient is used for target quotient adjustment when
sdelta table margins are used. Add support for fixed or dynamic
step quotient for CPRh controllers to allow per-core-count and
per temperature adjustments to work in conjunction with
closed-loop operation.

Change-Id: I6b9d663b44c96dafba26ad25bcfc4b61c8c86d56
CRs-Fixed: 1020505
Signed-off-by: Osvaldo Banuelos <osvaldob@codeaurora.org>
2016-05-25 14:21:10 -07:00
Runmin Wang
b386224e95 soc: qcom: print raw data for gladiator error registers
Dump the value in gladiator error registers in raw format.

CRs-Fixed: 1019798
Change-Id: I7bccd68866457bb0635ae5166ec935f9e82ba760
Signed-off-by: Runmin Wang <runminw@codeaurora.org>
2016-05-25 14:20:59 -07:00
Trilok Soni
1acab1571a edac: cortex: Update the error strings to reflect Kryo2xx processor
Update the single and double bit error strings to reflect the Kryo2xx
silver and gold processors.

CRs-Fixed: 1020529
Change-Id: Ia4f54bfee8111f9f039f772a8bcc7c9a0400d5aa
Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
Signed-off-by: Runmin Wang <runminw@codeaurora.org>
2016-05-25 14:20:48 -07:00
Naseer Ahmed
dbe16a2725 ARM: dts: msm: add extra destination scaler properties for MSMcobalt
This change adds maximum input and output width for destination scaler.

CRs-Fixed: 988990
Change-Id: I9a4b9701e078fa39783f33f023eef2da75c1c162
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2016-05-25 14:20:36 -07:00
Naseer Ahmed
687db9c75e msm: mdss: Adding support for destination scaler
Destination scaling is a new hardware feature in MSM mdss 3xx hw. When user
mode enabled the destination upscaling, framebuffer will get upscaled
and then transmitted to the primary panel.

CRs-Fixed: 988990
Change-Id: I19aa5983316bec4a87811c8aa8b54f770001c45f
Signed-off-by: Benjamin Chan <bkchan@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2016-05-25 14:20:24 -07:00
Sagar Gore
e215162bb2 ARM: dts: msm: Change csi clock voting from ispif node
ISPIF hardware also needs csi clock along with vfe clock, but csi
hardware controls clock rates hence changed clock control type
so that ispif won't alter clock rate set by csi.

CRs-Fixed: 972998
Change-Id: I6a99fa6961e9205d7d9ccb470873c26adde8a91f
Signed-off-by: Sagar Gore <sgore@codeaurora.org>
Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
2016-05-25 14:20:13 -07:00
David Collins
b31b0103f0 thermal: qpnp-temp-alarm: update thermal callback parameters
Change the type of temperatures in the qpnp-temp-alarm driver
from unsigned long to int.  This ensures that the driver can be
compiled successfully when the following commit is in place
which changed temperatures in the  thermal framework from
unsigned long to int: commit 17e8351a77 ("thermal: consistently
use int for temperatures").

Change-Id: I38c637936b398f2fb1665c8233ed5e49e83bf296
CRs-Fixed: 1019272
Signed-off-by: David Collins <collinsd@codeaurora.org>
2016-05-25 14:20:01 -07:00
Shubhraprakash Das
646d81bc9d defconfig: msm: Remove incorrect ISPIF version
ISPIF version was incorrectly defined in the defconfig
used for 8996, remove it.

CRs-Fixed: 1020515
Change-Id: I2c1fb7dcc698142f9ce42f40164521b8a78268e1
Signed-off-by: Harshal Trivedi <htrivedi@codeaurora.org>
Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
2016-05-25 14:19:39 -07:00
Jing Zhou
6e32a05ecd msm: camera: isp: Fix warning and errors based on static analysis
This change fixes the warning/errors from static analysis

CRs-fixed: 992942
Change-Id: Iaf90ab4c1d17f903d03458d76cab1b4c0a5c8836
Signed-off-by: Jing Zhou <jzhou70@codeaurora.org>
2016-05-25 14:19:28 -07:00
Satya Durga Srinivasu Prabhala
dc43d3a1c5 arm64: defconfig: update config options for msm-perf_defconfig
update config options for msm-perf_defconfig to match with options
on 3.18.

CRs-Fixed: 1013947
Change-Id: I7df9aeb55a95185077c679a217ed8772eb83c8b9
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
2016-05-25 14:19:17 -07:00
Satya Durga Srinivasu Prabhala
3ace2642ee arm64: defconfig: update config options for msmcortex-perf_defconfig
update config options for msmcortex-perf_defconfig with required
options.

CRs-Fixed: 1013948
Change-Id: If024f55095a951329976b6c2736ad5760eae1f4f
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
2016-05-25 14:19:04 -07:00
Hemant Kumar
77f6fd8044 usb: pd: Add support to notify plug orientation via extcon
Policy engine needs to provide the plug orientation upon
type-c cable plug in. qmp phy driver needs to program phy
lane based upon this information.

Change-Id: Idd236136c9f0a9163b4ae7a8405c412f1d69ca9e
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2016-05-25 14:18:53 -07:00
Hemant Kumar
20b1701b73 usb: phy: qmp: Configure phy lane based on plug orientation
In order to support super speed mode using type-c cable, phy
driver needs to programe the phy with appropriate lane based
upon plug orientation.

Change-Id: I893c0b729015cd22791d168453309168246961e2
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2016-05-25 14:18:40 -07:00
Hemant Kumar
e89026c0e2 usb: dwc3: Add support handle type-c plug orientation
Register callbacks for plug orientations in order to
cache the current plug orientation reported by extcon.
This allows super speed phy driver to configure the
appropriate lane upon phy initialization.

Change-Id: I906005680b4cc90cc38dc3d403beebf7aa515ad7
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2016-05-25 14:18:30 -07:00
Nicholas Troast
8a53f7d7fa qcom-charger: qpnp-smb2: disable Type-C factory mode
Type-C factory mode is unreliable and causes the Type-C mode to be
incorrectly detected in some cases. Disable it.

CRs-Fixed: 1019313
Change-Id: I5f66be80899c33816c886df526db9e50d7e9aff9
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2016-05-24 17:58:18 -07:00
Vikash Garodia
5c0174be77 msm: vidc: Add SEI extradata
The change extend the support in video driver
to enable few SEI extradata. Also update the
extradata menu V4L2 control with all the
available list of extradata.

CRs-Fixed: 1007521
Change-Id: I6d060afb48aca34c2bb54221c5babc0ac55aff7c
Signed-off-by: Vikash Garodia <vgarodia@codeaurora.org>
2016-05-24 17:58:06 -07:00
Amir Levy
8f0763f7c7 msm: ipa3: add ipa_mhi to ipa_clients
As part of of IPA driver refactoring a separation has been made
between IPA core driver and the IPA clients.
MHI specific code in ipa_mhi.c has been transferred to a new file
called ipa_mhi_client.c.
IPA clients drivers are the interface between IPA core driver
and external drivers. Specifically, ipa_mhi driver is the
interface between the MHI driver and IPA core.

CRs-fixed: 989505
Change-Id: Iebcde6d233ff8580aa83b1885f1e8a01644dd1f4
Signed-off-by: Amir Levy <alevy@codeaurora.org>
2016-05-24 17:57:55 -07:00
Abhijit Kulkarni
ea0cd50692 msm: mdss: Defer wb probe until mdss probe done
Defer wb driver probe until mdss probe is completed, this is
required for supporting bin parts where multimedia hw is not
functional.

CRs-Fixed: 993024
Change-Id: Ic21c25a33a8b2430903e9c1f3d339022551d81d6
Signed-off-by: Abhijit Kulkarni <kabhijit@codeaurora.org>
2016-05-24 17:57:44 -07:00
Oleg Perelet
0909f0a311 msm: kgsl: Create sysfs entry to control GPU NAP state
Create sysfs entry to have option to disable software clockgating
NAP state.

CRs-Fixed: 973565
Change-Id: I2376f10161040dbf426887ce146ac597f401153f
Signed-off-by: Oleg Perelet <operelet@codeaurora.org>
2016-05-24 17:57:35 -07:00
Zhen Kong
f9c4cdc99c defconfig: msmcortex: enable qcom hw crypto drivers
enable qcom hw crypto drivers for msmcortex

Change-Id: Ic2b623bf871bc3918d3d58f99966ac7f746d7b8a
Signed-off-by: Zhen Kong <zkong@codeaurora.org>
2016-05-24 17:57:25 -07:00
Zhen Kong
d6791c9499 crypto: msm: Update Kconfig to enable hw crypto driver for msmcobalt
Update Kconfig to enable qcom hw crypto driver for msmcobalt

Change-Id: Iab07f3dd933a9faf8a7ada737c9e9389d185d6e3
Signed-off-by: Zhen Kong <zkong@codeaurora.org>
2016-05-24 17:57:14 -07:00
Vijayavardhan Vennapusa
4a09bafb4c USB: dwc3: debugfs: Add boundary check in dwc3_store_ep_num()
User can pass arguments as part of write to requests and endpoint number
will be calculated based on the arguments. There is a chance that driver
can access ep structue that is not allocated due to invalid arguments
passed by user. Hence fix the issue by having check and return error in
case of invalid arguments.

Change-Id: I060ea878b55ce0f9983b91c50e58718c8a2c2fa1
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
2016-05-24 17:57:04 -07:00
Prashanth Bhatta
3cc4528523 icnss: Remove unused APIs
Remove unused APIs icnss_register_ce_irq &
icnss_unregister_ce_irq. These APIs are divided into multiple APIs
to provide flexibility to WLAN driver.

Change-Id: Icd56b61a372cb18e6600617184d8b185b78ce99d
Signed-off-by: Prashanth Bhatta <bhattap@codeaurora.org>
2016-05-24 17:56:54 -07:00
Patrick Daly
2c92401807 soc: qcom: watchdog_v2: Support userspace watchdog
Provide a hw guarantee that a userspace watchdog process receives cpu time.
Move ping_other_cpus() prior to waiting for the userspace signal in order
to minimize the effect of a late userspace pet on the safety margin.  The
safety margin is the difference between the workqueue's timer interval and
the bite interval.

Change-Id: I715cf7ad7975c6e020458f623262dc02927795a7
Signed-off-by: Patrick Daly <pdaly@codeaurora.org>
2016-05-24 17:56:40 -07:00
Shashank Mittal
b77ff68c63 ARM: dts: configure trigout function for gpio 58
GPIO 58 is connected to CTI2's trigout 4. Add node to configure this gpio
when trigout 4 of CTI2 is mapped on msmcobalt.

Change-Id: I064c208557bc7b74bcb342fea76df9c9e10c8405
Signed-off-by: Shashank Mittal <mittals@codeaurora.org>
2016-05-24 17:56:30 -07:00
Zhen Kong
8bfa5da1a2 ARM: dts: Add qcedev & qcrypto drivers support for msmcobalt
Add qcedev and qcrypto driver support for msmcobalt.
This enables crypto engine to be used from hlos side.

Change-Id: I5d2861bdb934ac0224fa73b59b350d0d360f5c95
Signed-off-by: Zhen Kong <zkong@codeaurora.org>
2016-05-24 17:56:18 -07:00
Aravind Venkateswaran
a365cd3292 ARM: dts: msm: add support for nt35597 DSC panels on msmcobalt
Add necessary GPIO and regulator bindings for nt35597 DSC (command
and video mode) panels on msmcobalt CDP. Add these panels to the
list of supported panels so that they can be selected at runtime
from kernel command line.

CRs-Fixed: 1019289
Change-Id: Ie3a2da3c306bc8a85aaf1495afb365c38cf805aa
Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
2016-05-24 17:56:07 -07:00
Aravind Venkateswaran
e11d690e0f ARM: dts: msm: add nt35597 dual dsi cmd mode panel for msmcobalt
Add gpio, regulator and other required settings for nt35597 dual-dsi
command mode panel for msmcobalt CDP. Add this panel to the list of
supported panels for msmcobalt to allow selecting this panel at runtime
using kernel command line.

CRs-Fixed: 1019289
Change-Id: If5e6a6b0d7753e3fc83ed6df5d866a62eb5cd60b
Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
2016-05-24 17:55:56 -07:00
Shubhraprakash Das
fc037663f5 ARM: dts: msm: Add extra clocks for ispif node for msmcobalt
Add extra clocks required for ispif node and fix the order of
clocks.

CRs-Fixed: 987962
Change-Id: Id0f46265b10fa06f71a9085aa302536c5f14d295
Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
2016-05-24 17:55:43 -07:00
Tony Truong
15ed672eb9 msm: pcie: add support to get PCIe port PHY sequence from DT
PCIe PHY varies between each chipset. Thus, the port PHY init
sequence on each of these chipsets are also different. Therefore,
add the support to read PCIe port PHY init sequence from devicetree.

Change-Id: I92969b7b59a64018b80470566567887248ced2bd
Signed-off-by: Tony Truong <truong@codeaurora.org>
2016-05-24 17:55:34 -07:00
Shashank Mittal
c3ab6387ba soc: qcom: set default enable for MSM_JTAGV8
Enable MSM_JTAGV8 config if CORESIGHT_SOURCE_ETM4X is selected.
This will make sure that ETM registers are properly saved and restored
across CPU power collapse.

Change-Id: Iafc718d5fe3ee392836035c7d301ad2ed6d5f148
Signed-off-by: Shashank Mittal <mittals@codeaurora.org>
2016-05-24 17:55:24 -07:00
Devdutt Patnaik
a75c7c67bd usb: gadget: Iterate over all IN EPs for allocation of TX FIFOs
GSI EPs are assigned to the last 2 IN EPs. While allocating
the TX FIFO sizes we need to iterate over all IN EPs to correctly
allocate larger TX FIFOs for GSI accelerated endpoints.
Update the logic from using min_t(int, dwc->num_in_eps,
cdev->config->num_ineps_used + 1) to just use dwc->num_in_eps.
The EPs that are not enabled will be given the default TX FIFO
size while the ones that are enabled are given TX FIFO sizes
based on the burst size configured for that EP.

Change-Id: Ie9a21544966fb54cf9920e9c719309cc66157846
Signed-off-by: Devdutt Patnaik <dpatnaik@codeaurora.org>
2016-05-24 17:55:14 -07:00
Hemant Kumar
d920806870 extcon: Add support for USB connector speed
This allows extcon to notify the USB controller driver
to enumerate host/peripheral in high or super speed mode.

Change-Id: I425087a02b680a5a1bc0579fd4d1410eb92d8e4c
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2016-05-24 17:55:03 -07:00
Patrick Daly
cf5a632479 soc: qcom: watchdog_v2: Change completion to wait_queue
Prepare for future changes which will require waiting on several
conditions prior to petting the watchdog.

Change-Id: I1a62b6ec73e7cd581a535316029956ea7ce23ba0
Signed-off-by: Patrick Daly <pdaly@codeaurora.org>
2016-05-24 14:26:37 -07:00
Benet Clark
7c71a4d3c7 msm: mdss: Set dither matrix len to 0 for default configuration
When default dither is configured at boot, the default dither matrix
should be used. In order to use the default dither matrix, the len
parameter should be set to 0.

CRs-Fixed: 1010839
Change-Id: I2ed58d3e61ca4c64cf72569541fc6ee7f6ba651f
Signed-off-by: Benet Clark <benetc@codeaurora.org>
2016-05-24 14:26:36 -07:00
Aravind Venkateswaran
1d4e56bab0 msm: mdss: dsi: add ulps support for DSI PHY v3
Implement the recommended programming sequence for configuring the DSI
lanes to Ultra-Low Power State (ULPS) for the DSI PHY v3.

Change-Id: I5dc7d8ed4407df5baa94e069b00897086bd02ab8
Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
2016-05-24 14:26:35 -07:00
Bhalchandra Gajare
703d92d617 ASoC: wcd_cpe_core: Connect to input AFE port during LSM start
Currently the AFE input port is connected to LSM while sending operation
mode parameter to CPE. It is possible that in certain cases, the operation
mode does not need to be sent at all. In such case, the input port still
needs to be connected. Fix this by moving the connection to AFE input port
during LSM_START so everytime LSM is started, it is connected to the
correct AFE port.

CRs-fixed: 1012715
Change-Id: I6dbc344d5d7063c7cfd2fb29c2c39fdee1250bbf
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
2016-05-24 14:26:34 -07:00
Osvaldo Banuelos
d9d99a4c5e input: qpnp-power-on: modify the bit range to store restart reason
Use 7 bits in SOFT_RB_SPARE PON register to store device
restart reasons.

Change-Id: I136c0d3583cef15b3ba22fbf6b8acbe014f9e8ab
CRs-Fixed: 1019225
Signed-off-by: Osvaldo Banuelos <osvaldob@codeaurora.org>
2016-05-24 14:26:34 -07:00