summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-07-12msm: mdss: fix QSEED3 bypass mode and lut cfg issuesAbhijit Kulkarni
This change enables the QSEED3 bypass mode in driver, until now if scaling was not required driver was falling back to default configuration. This change checks if scaling is not required on VIG pipes, driver only programs the pixel extension and configures the bypass mode in QSEED3. This change also corrects the LUT configurations for separable and circular filters. Change-Id: I17c8c3e422fd62feaada978ac2be48f891417db0 Signed-off-by: Abhijit Kulkarni <kabhijit@codeaurora.org> CRs-Fixed: 1036019, 1039433
2016-07-08ASoC: wcd9335: Fix traversing of source dapm widgetsSudheer Papothi
Parsing of audio routing in ASoC core has been changed in kernel 4.4 to use new variables. Update the codec driver to traverse to source dapm widget using new variables. Change-Id: I8c545248f23c73ff9fb470705f1c17175a8e4e0b Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2016-07-08mfd: wcd9xxx-irq: check if wcd9xxx_res irq is 0 before using itMeng Wang
During SSR, wcd9xxx_res irq lock is destroyed as part of resource cleanup. If driver tries to access wcd9xxx_res irq lock before it's initialized, it could cause crash. Check if wcd9xxx_res irq is 0 before using it to avoid crash. CRs-Fixed: 1003482 Change-Id: I959caf7b305e965b84e8204168194bbfda72dc52 Signed-off-by: Meng Wang <mwang@codeaurora.org>
2016-07-08ASoC: msm: Dynamic allocation of loopback sessionsSurendar karka
Allocate looback sessions dynamically and add support for multiple loopback sessions. CRs-Fixed: 986695 Change-Id: I4a0b0ed4f6679da016b1b460cb597bc7fa2afa12 Signed-off-by: Surendar karka <sukark@codeaurora.org>
2016-07-08defconfig: Add initial 32-bit defconfig for msmfalconSrinivas Ramana
Add initial defconfig file for booting msmfalcon Change-Id: I6935c6de9009532570e1becad4ef1c1ee095d7c4 Signed-off-by: Srinivas Ramana <sramana@codeaurora.org>
2016-07-08ARM: dts: msm: add Tri-color RGB LEDs on pmicobaltSubbaraman Narayanamurthy
Add RGB LEDs that are present on pmicobalt. These LEDs are used for applications like notification of charging indicator and other user defined applications. Since LPG channels 3,4 and 5 are assigned for Blue, Green and Red LEDs on pmicobalt, keep them enabled in device tree. CRs-Fixed: 1037821 Change-Id: I1a40bbe46e689d8c98f31cfef3a6743856288127 Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
2016-07-08arm64: topology: Export arch_get_cpu_efficiency APITrilok Soni
Export arch_get_cpu_efficiency API since it can be called by the modules. Update topology header file too. CRs-Fixed: 1038542 Change-Id: Ie2ab84b02a8fb4070a0e86f09f52db9aa4163003 Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
2016-07-08leds: qpnp-flash-v2: Fix safety timer configurationDevesh Jhunjhunwala
The mask and enable values being used are incorrect for the safety timer. Fix it. Also take this opportunity to update all relevant macros to use the GENMASK(h,l)/BIT(x) macros. CRs-Fixed: 1024187 Change-Id: Ibdd139c98aa289f1d6b8545b953e79a1187284e9 Signed-off-by: Devesh Jhunjhunwala <deveshj@codeaurora.org>
2016-07-08ARM: dts: msm: Add current property for flash-led for pmicobaltDevesh Jhunjhunwala
Add the qcom,current-ma property which is used to specify the default current value to be used for the flash and torch devices. This property is used by clients of the flash device. CRs-Fixed: 1024187 Change-Id: I3670eaa65efc9d1efb29fb30500fb9067885b446 Signed-off-by: Devesh Jhunjhunwala <deveshj@codeaurora.org>
2016-07-08leds: qpnp-flash-v2: Add operational current propertyDevesh Jhunjhunwala
Add the qcom,current-ma property to specify the operational current for the flash led. Also limit the minimum flash current to 25mA since currents below this value cause unstable flash operation. CRs-Fixed: 1033071 Change-Id: Ia133b6c0cf0c21484f61631f04cba0d1112c9d48 Signed-off-by: Devesh Jhunjhunwala <deveshj@codeaurora.org>
2016-07-08ARM: dts: msm: remove VMBMS feature for msmcobaltMeng Wang
VMBMS is used for accuracy improvement during voice call. It is not supported on msmcobalt. It is moved to FG driver, VMBMS is not needed anymore. Remove it from msmcobalt device tree. CRs-Fixed: 1038038 Change-Id: Ib01b649633ef8d7e15791fa9b1bd0d7a3fbffc5d Signed-off-by: Meng Wang <mwang@codeaurora.org>
2016-07-07usb: phy: qusb-v2: Add USB QUSB PHY for newer platformMayank Rana
This change adds USB QUSB PHY v2 driver which is compatible for USB QUSB PHY having major revision as 2. Change-Id: I1751352ebbe38d4b8c7886085d15043c2e5244f5 Signed-off-by: Mayank Rana <mrana@codeaurora.org>
2016-07-06ARM: dts: msm: Add torch nodes to flash-led for pmicobaltDevesh Jhunjhunwala
Add support for torch mode by adding torch nodes to the flash-led device for pmicobalt. Also update the dt-bindings documentation accordingly. CRs-Fixed: 1024187 Change-Id: I640106abcf05949f2570efd42f925f1f73bdaa81 Signed-off-by: Devesh Jhunjhunwala <deveshj@codeaurora.org>
2016-07-06msm: camera: Return HAL buffer to fix drain issuesHariram Purushothaman
Return the HAL buffer to avoid drain issue and provide the get buf by index interface so clients can get buffer based on index. CRs-Fixed: 1018651 Change-Id: I20329a6834f5f1498388c39b1dd95db2896b3239 Signed-off-by: Hariram Purushothaman <hariramp@codeaurora.org>
2016-07-06qcom-charger: qpnp-smb2: expose AICL settled current through USB psyNicholas Troast
There is a requirement to expose the settled input current limit via a power supply property. Add it. Change-Id: I1a7b77e3a64da245afd0c4f73c8d04627a061ada Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2016-07-06usb: xhci: Add helper APIs to return xhci dma addressesHemant Kumar
dma address of secondary event ring, transfer ring and device context base address are required to pass to remote entity. Remote entity uses these addresses to program xhci controller registers. Change-Id: Ie0756d646a396a11b41b93e886bca9aff636ee5d Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2016-07-06usb: xhci: Add support for secondary interruptersHemant Kumar
Implement APIs to dynamically allocate and free secondary event rings based upon interrupter number. Also add exported APIs in usb core layer which allows secondary event ring management via remote processor entity. Change-Id: I5ee7d44d6cad8e35e22d3c1a027a1eec5d208585 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2016-07-06sound: usb: Add helper APIs to enable audio streamHemant Kumar
Adding helper API to find usb substream context information using card number, pcm device number and direction. This usb substream is used to enable/disable by issuing SET_ALT command to device. Also add disconnect call back to perform any clean up required. Change-Id: I252f5171bd94b5ab096eb1a2f053f29a8c049c3b Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2016-07-06ASoC: pcm: Update RX shutdown sequencePhani Kumar Uppalapati
Update RX shutdown sequence so that codec path gets tear down first followed by cpu dai. This will avoid slim port underflow/overflows when slim data protocol is changed. Change-Id: I6e3582fa010d18d4e0ccfde319dfc4d81af1351f Signed-off-by: Phani Kumar Uppalapati <phaniu@codeaurora.org>
2016-07-06ASoC: core: Fix possible NULL pointer de-referenceBhalchandra Gajare
Fix the soc_find_component function to make sure either the of_node or the name is provided to compare against the registered components to fix possible NULL pointer de-reference. CRs-fixed: 925138 Change-Id: Ic1f02c341c06cadcfe6de638ff6c86e51845e59f Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
2016-07-06icnss: Add support of enable HW debug from module parameterYuanyuan Liu
Add support of enable HW debug feature from ICNSS module parameter. The setting will be passed to WLAN FW through QMI during subsequent WLAN enable. Change-Id: I02036d79fca38ff9ac71c70de8aa144b9cfb2f59 CRs-Fixed: 980027 Signed-off-by: Yuanyuan Liu <yuanliu@codeaurora.org>
2016-07-06msm: mdss: hdmi: fix deep color enable and audio clockTatenda Chipeperekwa
Enable deep color only for msmcobalt platform. Furthermore, adjust the pixel clock reported to the audio driver when deep color is enabled so that it matches the clock configured when the interface is turned on. CRs-Fixed: 1034047 Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org> Change-Id: I48a767f7673defe60156c305e39f1ce4aa44306b
2016-07-05msm-core: Move get_user out side critical sectionMaulik Shah
get_user is not needed inside critical section. Move it outside to avoid kernel crash due to sleeping function called from invalid context. Change-Id: I29a54dca6620dc75356067ce6ff9a0931b4d0724 Signed-off-by: Maulik Shah <mkshah@codeaurora.org>
2016-07-05msm: mdss: dsi: update ULPS entry/exit sequenceAravind Venkateswaran
Disable low power receiver and contention detection receiver (LPRX and CDRX) along with lane LDOs when entering ULPS. Similarly, enable LPRX, CDRX and the lane LDOs when exiting ULPS. This fixes some issues where ULPS exit was failing resulting in the display panel becoming unresponsive. CRs-Fixed: 1035315 Change-Id: I3ed7eeb463aff6c77962d4f1d46b27e7fb5dd103 Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
2016-07-05msmcobalt: fix channel configuration for SLIMBUSShiv Maliyappanahalli
Channel count for SLIM_RX_6 port cannot be set since get_port_idx() returns invalid port id which resulting in invalid channel configuration for headset usecase. Fix by adding SLIM_RX_6 case in get_port_idx(). Change-Id: Iadd3e995d044198c711f744c11b62cec2f7902c0 Signed-off-by: Shiv Maliyappanahalli <smaliyap@codeaurora.org>
2016-07-05msm: mdss: dsi: enable LPRX and CDRX only for logical data lane 0Aravind Venkateswaran
The low power receiver (LPRX) and contention detection receiver (CDRX) need to be enabled only for the physical data lane corresponding to the logical data lane 0. Modify the code to implement this while accounting for any possible data lane swap configurations. CRs-Fixed: 1035315 Change-Id: I0082109fc3c0a56af3f181ae0b063c56aa7095f2 Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
2016-07-05ARM: dts: msm: Add node for QSEE IPC IRQ bridge for msmcobaltArun Kumar Neelakantam
Add the device for bridging an Inter-Processor Communication(IPC) interrupt from a remote subsystem directed towards Qualcomm Technologies, Inc. Secure Execution Environment(QSEE). CRs-Fixed: 1021749 Change-Id: Ib86b3f70a71f222f0ddc1ea49c75cd7d94c47546 Signed-off-by: Arun Kumar Neelakantam <aneela@codeaurora.org>
2016-07-05ARM: dts: msm: add jdi landscape panel for msmcobaltIngrid Gallardo
Add required settings for command mode and video mode jdi lanscape panels in msmcobalt CDP/MTP. Add panels to the list of supported panels so they can be selected at runtime from kernel command line. Change-Id: Iae1361997653784c4248b0d2ed2a7deac3bc4d4b Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-07-05ARM: dts: msm: configure display 5v panel supply GPIO for msmcobaltIngrid Gallardo
Add support to configure the gpio51 that controls the 5v supply required by multiple panels. Change-Id: I45e190261330ffe2f742ae0c460fc53270e165c2 Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-07-05thermal: tsens: Enable TSENS controller health monitorSiddartha Mohanadoss
Temperature sensor (TSENS) driver health monitor periodically sets a very low temperature threshold on the critical trip zone and polls to check if the trip is set. This is done on a deferred workqueue and helps provide indication on the health of the TSENS controller. Change-Id: I4b16db429fead5c731dec289f0360682c92775b8 Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
2016-07-05ARM: dts: msm: Update TSENS sensors for msmhamsterSiddartha Mohanadoss
Temperature sensor (TSENS) driver provides clients ability to read on-die temperature sensors. Update the total number of sensors supported for msmhamster on TSENS controller 1 and corresponding sensor controller index. Change-Id: I8c9ba4ed230c94d124f9c02e9e18a77cdb6befa5 Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
2016-07-05thermal: tsens: Enable TSENS for msmhamsterSiddartha Mohanadoss
Temperature sensor (TSENS) driver provides ability to thermal clients to read from on-die temperature sensors. msmhamster supports reading from 20 on-die temperature sensors and clients can set temperature thresholds and receive notification. Change-Id: I57e98f2182d0c44e9c7cffec3528bb926a878fb8 Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
2016-07-05ARM: dts: msm: Disable TSENS on RUMI and SIM platformSiddartha Mohanadoss
Temperature sensor (TSENS) driver supports perodic monitoring of the TSENS controller and can cause a false positive on RUMI and SIM platform if the temperature values are not valid. Therefore disable the driver on these platforms. Change-Id: I9d38f6f1580eafef9de841418b9a9f022ef30b69 Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
2016-07-05ASoC: msm: q6dspv2: add SLIMBUS6 RX routings for Slimbus 7/8Banajit Goswami
Slimbus TX 7 and 8 would need to be connected to Slimbus RX 6 for different use cases using loopback in AFE. Updated necessary routings for supporting the loopback. CRs-Fixed: 1036018 Change-Id: I46c797a6550884bf42a2d7763590047d2e750906 Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
2016-07-05msm: thermal: Add support to monitor only one tsens for MX restrictionManaf Meethalavalappu Pallikunhi
Currently VDD MX restriction feature monitors all tsens for low temperature condition. Some targets which has higher MX restriction thresholds shows frequent interrupts from multiple sensors causing power impact. Add support to monitor only one sensor for VDD MX restriction feature. Add an optional device tree property "qcom,mx-restriction-sensor_id" to specify sensor id for monitor. If not defined, monitor all tsens for VDD MX restriction. Change-Id: Ib709b00c27f43c2603ac8a08b75f2fbd5800983b Signed-off-by: Manaf Meethalavalappu Pallikunhi <manafm@codeaurora.org>
2016-07-05defconfig: arm64: msm: Add defconfigs for QSEE IPC IRQ bridgeArun Kumar Neelakantam
Enables the drivers for bridging an Inter-Processor Communication(IPC) interrupt from a remote subsystem directed towards Qualcomm Technologies, Inc. Secure Execution Environment(QSEE). CRs-Fixed: 1021749 Change-Id: I7406d49369ccf3951f95f72136195a3630789453 Signed-off-by: Arun Kumar Neelakantam <aneela@codeaurora.org>
2016-07-05ARM: dts: msm: Fix interrupt type for a few IRQsMitchel Humpherys
The interrupt types for a few SMMU IRQs are incorrect. Fix them. CRs-Fixed: 1037068 Change-Id: Ic45e1ec592bf0503d456ad1029e32dfea5d63bf1 Signed-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>
2016-07-05defconfig: arm64: enable run queue stats driver for msm chipsetsRunmin Wang
Enable the run queue stats driver to support IRQ balancer. CRs-Fixed: 1033709 Change-Id: I38694774013625d514fc9812b4b28c36f4a2471e Signed-off-by: Runmin Wang <runminw@codeaurora.org>
2016-07-05drivers: GICv3: remove isb() from IAR read functionSatya Durga Srinivasu Prabhala
As per the GICv3 requirement, ISB or other context synchronization operation is needed only during System register writes. CRs-Fixed: 1035275 Change-Id: Ifbe4d974a295b90a511aa10bde5797a1f71972fc Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
2016-07-05msm: mdss: skip panel type node change during resolution switchVeera Sundaram Sankaran
The panel type sysfs node indicates the type of panel that is currently in use, either video or cmd mode. This is updated after every dynamic switch. Currently, this node is updated to an invalid value during dynamic resolution switch. Skip the setting as the mode is not changed during resolution switch. Change-Id: Ic002ad587eeade068561c0e9f1d29aeb1689ada5 Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-07-05msm: mdss: hdmi: fix clock parsingTatenda Chipeperekwa
Fix the clock parsing logic to remove the hard coding of clock names in the HDMI driver. Update the clock parsing logic to rely on reading the clock configurations from the device tree and update the HPD and CORE power modules appropriately. CRs-Fixed: 1032282 Change-Id: Ia7324f6443b3db5d55113a221dc0791bb5a38799 Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
2016-07-05ARM: dts: msm: Add SPS node for msmfalconRama Krishna Phani A
Add SPS module to device tree. SPS (Smart Peripheral System) enables the support of all BAMs in the system which provide DMA functionality to various peripherals. Change-Id: I4f71ba8115f009028ae4ddf6a7847d1885b4458c Signed-off-by: Rama Krishna Phani A <rphani@codeaurora.org>
2016-07-05msm: mdss: force revalidate layers after resolution switchVeera Sundaram Sankaran
Avoid skipping validation for all layers during ATOMIC_COMMIT validate call after dynamic resolution switching. Though the configs remain the same for few layers, revalidation is required based on the new resolution as the src_split and other settings might have changed. Change-Id: I3f1f2e09c90e8ff1a6380e35ed9e980b5c2be46c Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-07-05msm: mdss: handle used_buf during overlay off with invalid switch stateVeera Sundaram Sankaran
There might be cases where driver gets the resolution switch request followed by suspend or adb shell stop. In such cases, since the ctl parameters are already reconfigured, driver skips the NULL kickoff during overlay off due to invalid switch state. This leads to memory leak as the used_bufs are left intact. Fix by moving the used_bufs to free_list, so that memory can be freed later and also leaves the buffer list clean. Change-Id: I80c6ad2dc85da0427ac7ba1c127f0aa044a81c09 Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-07-05msm: mdss: add dynamic resolution switch support during handoffVeera Sundaram Sankaran
Add support to handle dynamic resolution switch request during cont-splash handoff, even before driver receives the first commit. The cmd_panel_on is ideally called right before the first kickoff, if the panel is not already on. Make explicit panel_cmd_on call during reconfigure to match with the ctl_stop/ctl_start done during the process of switching. This would make sure complete cleanup and re-configuration of the ctl is done. Change-Id: I98469b14284195caaf17a616137a0502e0e398cf [veeras@codeaurora.org: Resolved conflicts in mdss_mdp.h] Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-07-05msm: mdss: match pixclock calculation for videomode and fb varVeera Sundaram Sankaran
When multiple panel timings are available and enumerating videomode list, pixclock is calculated using htotal, vtotal and refresh rate. But fb var struct is populated with actual pixclock value calculated by DSI. This pixclock mismatch would cause issues, when usermode does GET_VSCREENINFO/PUT_VSCREENINFO. Fix by using the same pixclock calculation for both structures. Change-Id: I42bfc40b5904ec80f20b296e3b4610ca3b2c5ee0 [veeras@codeaurora.org: Resolved conflicts in mdss_fb.c] Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-07-05msm: mdss: add capability to parse multiple panel roi alignmentVeera Sundaram Sankaran
Add device tree parsing logic to parse multiple panel alignment roi for different panel resolutions. Add alignment roi as part of the panel timing struct, so that it would be updated whenever resolution switch happens. Change-Id: I14ee1a4947312c4c36927adcbffad847f9062fd6 Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-07-05msm: mdss: add dynamic resolution switch support for DSC panelsVeera Sundaram Sankaran
Reconfigure the DSC parameters and DSI stream according to the new resolution. Mandate the first frame after dynamic resolution change for DSC panels to be full frame updates. Send PPS command based on the device tree entry before or after the switch commands. Fix device tree parsing of DSC parameters within the switch timing node. Add sub-nodes in target specific device tree to configure target specific timing and switch commands. Change-Id: I6aa5f8f972b16645b219bf6274036b6e5dac6dda Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-07-05msm: mdss: validate current switch state before commitAdrian Salido-Moreno
If mode switch is currently in progress, then proper state machine of calls is expected. If these calls are not observed then it could lead to issues during display commit, because of incomplete update. Add checks for current mode switch state to prevent improper state during commit. Change-Id: I31dae6e15761fc745efd79edbe1070af992db904 Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org> Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-07-05msm: mdss: handle blank while mode switch in progressAdrian Salido-Moreno
When display is getting blanked while mode switch in progress, we cannot have additional kickoff trigger for cleanup as the state hasn't been properly transitioned. Instead we can clear the state and destroy control path to start clean on next update. Change-Id: I34af01550d79e0d7d465f2c7f873508c296160dd [veeras@codeaurora.org: Resolved conflicts in mdss_mdp_overlay.c] Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org> Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>