During recovery, there are cases where in WLAN driver running on
APPS can access CE register causing exceptions because of
hardware in reset state. Fix the issue by not resetting the
hardware in WLAN firmware during recovery but halt the CE and MAC
and reset the hardware only when reinitialization starts. For
this to work, wcn3990 ath10k driver needs to keep the clock and
regulator votes so that WLAN hardware will not go into weird
state because of not resetting it but cutting the resources.
Change-Id: I765fd4aaa2fea6f41f4760564b8d1cb8c3d9651b
Signed-off-by: Govind Singh <govinds@codeaurora.org>
Adding new submodule for lased LED and APIs to
support register WRITE/READ operations.
Change-Id: I7e6dc27a01985c223be791b16e6b7da4bbc1be74
Signed-off-by: Vijay kumar Tumati <vtumati@codeaurora.org>
In certain conditions, after the battery SOC reaches 100%, SOC is
not getting updated during discharging. Based on the hardware
recommendation, adjust the Ki coefficient for full SOC so that
SOC can be updated faster during discharging.
While at it, remove prev_charge_status variable which is not
used really.
CRs-Fixed: 2089555
Change-Id: I54b7d86529c21c016ab777053895ccda9c7a2b35
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Add new parameters to account for different MCUs that can
be used with this driver. These devices have different reset
sequences and number of bits per word supported via SPI. Add
bindings for the mpc5746c controller and make the reset signal
optional.
Change-Id: I616dd3cfedf18a6e21683e1c07551c57c62a675d
Signed-off-by: Gustavo Solaira <gustavos@codeaurora.org>
This driver creates Network device of type CAN
and processes tx and rx frames that it sends and
receives over SPI protocol.
Change-Id: I54a8665d1b9eda7e9b1ff695bd67de312c410195
Signed-off-by: Gustavo Solaira <gustavos@codeaurora.org>
Signed-off-by: Abinaya P <abinayap@codeaurora.org>
Currently, SOC linearization is done when SOC masking feature is
enabled to spread out the drop in SOC across a wider range and
for better user experience. Make this configurable through a DT
property "qcom,linearize-soc" so that the user can enable it as
and when required.
Change-Id: Ic9f5f04f4e872d7804152c17206a8b204de3a9c1
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Minidump is concise and bare minimum dump to enable technology
teams to debug most of subsystem issues. This change adds required
driver code changes to provide support of subsystem minidump.
Increase PIL timeout to give MBA more time for encryption
and decryption for modem segments.
Change-Id: I1d04a9306ce507bc610777bc476197f26c1e18ac
Signed-off-by: Avaneesh Kumar Dwivedi <akdwived@codeaurora.org>
Need to read register block length from the DTSI and populate
into the catalog to support register debug dumping. Also add a
name string to each of the blocks for debug purposes.
CRs-Fixed: 2005394
Change-Id: Ia2299a51d649942b9335bc023d098d9c4882f1de
Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
Usually, DC path is connected to a wireless charger. It is advisable
to disable qnovo when charging wirelessly.
Disable qnovo for dc path unless a property in device tree is set to
specifically enable qnovo for dc path.
Change-Id: I4ca475f30ca0a564f533b4ed8bcd55cfb5da291f
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
Update the TUNE2 parameter by adjusting the programmed tune2 value
with the correction value, if mentioned in dtsi to improve rise/fall times.
In case efuse register value is zero after correction, write previous TUNE2
register value as it is instead of writing hardcoded value. And correction
value should be between [-10 5] in order to take into consideration while
updating TUNE2 register with fused value.
Change-Id: Iaf61705bfd0c7b2cb62de8816c912f05876f001c
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
Add the required device tree files to support all the platforms
with SDM636 and SDA636.
Change-Id: Iff673b1626acb2bb83c0b7706b118e24919c3934
Signed-off-by: Srinivas Ramana <sramana@codeaurora.org>
This new driver is meant to be a cross-platform abstraction
layer for utilizing the underlying hypervisor system.
This API can be accessed from both user and kernel sides.
The intended users of this are the multimedia drivers who want
to communicate with the host OS to use the multimedia hardware.
Conflicts:
drivers/soc/qcom/Kconfig
drivers/soc/qcom/Makefile
include/uapi/linux/Kbuild
Change-Id: I37743df490d14249a9d378225771367750899eb0
Signed-off-by: Edward Lee <eleekimk@codeaurora.org>
Signed-off-by: Yimin Peng <yiminp@codeaurora.org>
Create support for early mounting of system and vendor partitions
in the kernel on msm8996 platforms.
Change-Id: I3caf26d3e2a371ccd63a2823fe3e487461a8dd08
Signed-off-by: Anthony Mah <amah@codeaurora.org>
Force probing the sdhc1 bus even if it is not the boot device
by reading the device tree property qcom,force-sdhc1-probe.
Enables using the primary port for other use cases even when
the board is not using eMMC for boot.
Change-Id: I2a2b9d6a51037641720bdfd3107b2fadf385d7b5
Signed-off-by: Gustavo Solaira <gustavos@codeaurora.org>
Add compatible flags for CAN controller and HSM chip to use them
with the spidev driver from user space.
Change-Id: I154c29b6c912cac2560333ef635aa4a542fd1985
Signed-off-by: Gustavo Solaira <gustavos@codeaurora.org>
Modularize the wcnss power up sequence like wcnss voltage
regulator enable/disable sequence and voltage regulator
current and voltage level parsing method. Remove hack code
from the power wcnss power process and enable/disable
the power resource if it's defined in the wcnss device node.
Update the debug logs to track the exact state of the power
state during device bootup. Remove the unnecessary logging
for the optional resource request fails during device bootup.
CRs-Fixed: 2086414
Change-Id: I30b1e2196eb9d1c933275f3db34ca0ff5664ea3b
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
Some PMICs software drivers (PM660) require the TP revision
information to implement specific logic. Add an optional
property qcom,tp-rev-valid to check if support for TP REV is
available in the REVID peripheral for the PMIC.
Change-Id: Ia7a344e60bedcc6fb28d9ed9f18dc29a3d7f4fd7
Signed-off-by: Rama Krishna Phani A <rphani@codeaurora.org>
Changes to vote for camera clocks so as to maintain clock vote
when early camera transitions from LK to kernel.
Changes to vote off also included once early camera shuts down.
Change-Id: Ic7fc15d706b4c9009abd70db4773c3355e5fbbdd
Signed-off-by: Rahul Sharma <sharah@codeaurora.org>
Increase the boost headroom to 200mV. Also add a device tree
property to make the headroom configurable.
Change-Id: Ibc932f191e64824ba948153a7ae80f109ffcdff9
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
Add battery profile data and pinctrl changes that are specific to svr835
v2 board.
Change-Id: I85c5e7ce7e88655da5637d2e5bc14ce8593b09d0
Signed-off-by: Sathish Ambley <sathishambley@codeaurora.org>
Acked-by: Rajesh Bharathwaj <rajeshbharathwaj@codeaurora.org>
Add a devicetree "disable-wake-on-touch" property support
to disable GPU wake up on touch input events. This will
help save power in case of unintended taps and swipes,
for example, when the screen is wet.
Change-Id: I35768dc78c473272472aaf9c0e09e66d75817b2c
Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
The wcn external gpio configuration has moved to WLAN firmware
code. To avoid the gpio resource request conflict and power offload
failure between wcnss platform driver and WLAN firmware.
Remove external gpio configuration from the wcnss platform driver.
Change-Id: Iaef979437d9e48d66a5e9e2fc88bc5783fed7480
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
The wcnss wlan module power up sequence has been changed.
To add support for the wcnss new power up sequence configured
3.3v external GPIO in wcnss platform driver.
Add check for the target to support the 3.3v external gpio for
the wcnss power up and routine to control the gpio like gpio
init, enable, disable for the device power management in different
state of the wcnss wlan device.
CRs-Fixed: 2065396
Change-Id: Ie6b79415b670522aa0abee58a23a31cffec76f5a
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
The WLAN dual band support vary from target to target
and to enable/disable dual band support for a particular
target the wcnss platform driver read the wlan hardware
qfuse register and export the dual band capability info
to wlan host driver to enable/disable this dual band feature.
Add export symbol for dual band capability info.
CRs-Fixed: 1115909
Change-Id: I7dc26435e3ac0ac1eec71f0e334878b35e25224d
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
It is a hardware requirement to increase snoc clock frequency
in HID sniff mode due to low wlan throughput. To provide this,
add support to enable and disable snoc clock.
Update the voltage regulator configuration API as per upstream
kernel.
CRs-Fixed: 1101377
Change-Id: I1130353bf861ca31792c40ef51243497788ed56d
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
The auto-calibration logic checks if the current WLED sink
configuration is valid. It iterates through each sink
and checks if it causes an OVP fault. Based on this
information it detects and enables the valid sink
configuration.
Define 'qcom,auto-calibration-enable' to enable
auto-calibration.
CRs-Fixed: 2011194
Change-Id: If5e31d98db3e5dcab188a9d420f8f0e33bf2c16f
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
Add support for switch latency property to add
additional delay if switch is present.
Change-Id: Ia64a79d5ec51d3abb66cebd0a187349711c96af2
Signed-off-by: Rama Krishna Phani A <rphani@codeaurora.org>
Add a PM QOS request to disallow L2PC during wake up
from SLUMBER state. This is required to improve queue
to submit time for first set of GPU commands which results
in GPU wake up.
Change-Id: Iad1a6dfdf9e1fe034eef4fae526138d724bdd3eb
Signed-off-by: Gaurav Sonwani <gsonwani@codeaurora.org>