When stop is called for doze mode, there is a race condition
between the stop thread and the retire signal work queue.
Fix race condition by making sure that driver waits for the
retire fence before calling the stop.
Change-Id: Icd9d5b14e4138e747f9483458da7ddb89f515c03
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
Migrate tasks function is used by both hotplug and cpu isolation. During
hotplug all the cpus are stalled (in stop machine) while tasks are being
migrated. However, this is not the case during cpu isolation. A task
that was counted as a pinned thread might have been migrated off the
cpu. Take this into account when checking whether we have completed
moving all tasks off the runqueue.
Also ignore warning about tasks moving off the run-queue for isolation
use case.
Change-Id: I5c5f25eb9b1eaf0605b606a65e0ac86996fa5f27
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
Cluster cpu list traversal is not properly protected against removal of
element by a separate thread. Add proper locking to ensure an element
cannot be removed while accessing the list.
In addition ensure we don't end up in a livelock never exiting the loop
due to hotplug continuously moving elements to the end of the list.
Change-Id: Ie98fe48c2f4fdd0244573229b77ee9823df9e214
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
There is a current leakage on S5 and LDO XO RF rail during
BT sleep. To prevent the current leakage, L7A/L17A/L25A
should be on during BT sleep. So, change L7A/L17A/L25A LDOs
from pin control version to SW control not to follow HW_EN2.
RFCLK2 has not been turned off during sleep and caused
extra current penalty. For RFCLK2 to follow HW_EN2 pin control,
clk_rf_clk2_pin should be used.
Change-Id: Ie316941535f62afd75eac21280061b489e9196c1
Signed-off-by: Sungjun Park <sjpark@codeaurora.org>
Max downscale factor for UBWC format is 4.0, and max downscale factor
for TP10/TP10_UBWC format is 2.0, and should be based on source format.
Also we need to add downscale factor capability reporting to allow
usermode driver to select correct scaling setting.
CRs-Fixed: 1086805
Change-Id: Id92eabf03c8dace1c0ff801504b8591e9121782d
Signed-off-by: Benjamin Chan <bkchan@codeaurora.org>
Currently, a flag is set when the empty SOC interrupt fires to
indicate SOC 0 to the users. This is not cleared when the battery
voltage goes up. This needs to be fixed. Remove the flag and use
the realtime status of BATT_SOC peripheral to decide it. To make
that even more robust, validate the battery voltage with the
cutoff voltage. While at it, add a print in the driver's probe to
print the battery SOC and voltage. This will be helpful to debug
different battery charging scenarios.
CRs-Fixed: 1086715
Change-Id: Icbbe0d4ab74c6f9bf6f2278a11020a9bc6c41930
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
By default skip_extended_resume_delay module parameter
allows to skip extra 40ms delay upon usb bus resume.
This delay was added on top of host bus resume which
is driven for 20ms. Skipping extra delay reduces over
all bus resume latency.
Change-Id: I31a83abc057c345f29d204a63e7571b880678e69
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
Since usleep_range provides better accuracy in
comparison to msleep. This helps in reducing
the latency of host bus resume.
Change-Id: Ie8d5231327fcc27ab2a28542e0d96687abb9aace
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
Add support for TX path COPP calibration according to
app type configuration
CRs-fixed: 1015476
Change-Id: I0bcbfadb0c1a22529863a5c4b8cc5c53a1028915
Signed-off-by: Derek Chen <chenche@codeaurora.org>
The physical dimensions are used to determine the DPI in the
framework. If these dimensions are not provided, the framework
assumes a default DPI value which may not be suitable for the
current panel and lead to some apps drawing incorrectly.
Change-Id: Ib14c5b9121190dded5071ff60ecf0be8e5e5c232
CRs-Fixed: 1079438
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
Fix the wlan host driver compilation error for the msmcobalt and msmfalcon
32 bit target. Enable QCOM_IRQ_HELPER config flag to expose IRQ balancer
APIs for msmcobalt and msmfalcon 32bit target.
CRs-Fixed: 1088388
Change-Id: Ieb72bd3779c3b9a372b469f3f7f571fc22294099
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
Today raw packet allocation is done every time when driver
is processing HW responses. For some reasons in system,
if this allocation takes long time, forward threads may
timeout. Hence allocate this memory one time and use it
while processing responses.
CRs-Fixed: 1086284
Change-Id: I1cca3f4cef34abd36b095b7ee0f32333c88fb939
Signed-off-by: Praneeth Paladugu <ppaladug@codeaurora.org>
In function glink_core_register_transport, deinit function for qos
configuration is called before initializing qos configuration.
Call to glink_core_deinit_xprt_qos_cfg function is removed.
CRs-Fixed: 1088375
Change-Id: Ifffab071efed56541e763e4f6f51aa45d7a6678b
Signed-off-by: Dhoat Harpal <hdhoat@codeaurora.org>
start and end must be page aligned while calling
flush_tlb_kernel_range else the last page may get
missed while invalidation.
Change-Id: Ibaab202c47a475623e197a13191b2fed638ce20b
Signed-off-by: Shiraz Hashim <shashim@codeaurora.org>
Add battery profile for QRD interposer msmcobalt to
make sure FG could load it and work as expected.
CRs-Fixed: 1086571
Change-Id: I6ca20cbd29b9a7bd45a78321ea0f65b74450e8c1
Signed-off-by: cyizhao <cyizhao@codeaurora.org>
Correct the camera dtis place to support multiple chipset
version for msmcobalt skuk device.
Change-Id: I20e12bc1597ad15cb3dc9c3ef18d81d039931e07
Signed-off-by: Wei Ding <weiding@codeaurora.org>
No need to assert and return fault on
address overlap with respect to SMMU
enabled case.
Address overlap does not cause any
functional failure.
Change-Id: I5b0faa6e021f2463635e13625072e159ba558907
Acked-by: Mohammed Javid <mjavid@qti.qualcomm.com>
Signed-off-by: Utkarsh Saxena <usaxena@codeaurora.org>
On some platforms, QUSB PHY's DVDD related power supply (LDO) is
not always ON. Hence when this power supply is switched off, QUSB
PHY's register configuration is not retained. QUSB PHY state
is unknown when required LDOs are turned ON with USB cable connect
case and may interfere charger detection. Hence use suggested sequence
which involves resetting QUSB PHY and performing few set of QUSB PHY
register configuration to bring QUSB PHY into non-driving mode.
Also it is required to disable QUSB2PHY level shifter by writing to
TCSR_QUSB2PHY_CLAMP_DIG_N_1P8 register during disconnect to avoid
leakage current. Hence add support for the same.
Change-Id: I30b8488a1c19815601e6a1c5bcbdeed53715f8fa
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
The ramdump driver uses the device pointer during ramdump read.
This change passes in the device pointer for memshare during
ramdump create and moves the call to the probe function.
CRs-Fixed: 1079523
Change-Id: I687696dbedfa0ce7e6053d70291a7beb6f81f82e
Signed-off-by: Manoj Prabhu B <bmanoj@codeaurora.org>
Modify the clock_gcc dummy clock to use the real clock controller for all
global clock controller clients.
Change-Id: Iac989d3c9312654b599d8299206e5478ca454861
Signed-off-by: Taniya Das <tdas@codeaurora.org>
Add IMEM PIL entry to save relocatable address of images
loaded by PIL.
Change-Id: Ie09c8ae431cc7da4c8cd745d9c6d018e6a256158
Signed-off-by: Gaurav Kohli <gkohli@codeaurora.org>
Add IMEM PIL entry to save relocatable address of images
loaded by PIL.
Change-Id: I79acd047c7e414ed19a2f992f8ff801b63c8a2ad
Signed-off-by: Gaurav Kohli <gkohli@codeaurora.org>
This reverts 'commit 7112993181 ("input: touchscreen: synaptics v1.1")'
This change is not needed in 4.4 kernel.
Change-Id: I89ab8f353bc04bc0a04d5f5a6993e8e8e5ebbd2e
Signed-off-by: Abinaya P <abinayap@codeaurora.org>
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>