The thermal mitigation and battery temp control can overwrite
the ibat max value each other. So this patch remove the possibility
of overwrite ibat max value by mitigation and battery temp control.
Change-Id: Ib0f7bf2b8bd2e474d1d9c76bd5100b05310cb048
There was a bug on setting the report mode, breaking other bit fields.
Due to this, the firmware jitter filter was disabled, causing
some noises. Expect more stable position report with this correction.
Change-Id: I14f48c39f654e5771eaf8b5a2e6a2fd0c713a3ee
Change the resolution to exact size, which is 2560-1 x 1536 -1 and
reduce the threshold for reduced report mode so that more accurate data
can be reported to framework to improve browser scroll effect.
This should work with firmware jitter filter enable.
Change-Id: I7a36c3dbdc38ec402749577dda515f81d27a6557
- Reddish component will be reduced by E4~E6 register.
- Strong edge will be smoothed by E2 register.
Change-Id: I17e9e53c5c0e8d82426922a6a6dc4fc7c26c1fd7
The genirq layer expects a 0 in case of failure. The current code is
returning -ENXIO for an error.
Fix it.
Change-Id: I0985f12477d472f4fbef525f7b04fed9bf593686
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
Signed-off-by: Ajay Dudani <adudani@codeaurora.org>
We need to monitor the battery status periodically.So change the message
level and simplify the information.
Change-Id: Ia010ad220875f6863b3cdf1835cf6a4afc555935
This patch solves the problem of recognize usb link when the TA is slow to
connect.
Change-Id: I9ebd118a53175a272117a75b5a5a1554da9c3d8b
Signed-off-by: Iliyan Malchev <malchev@google.com>
ASoc: msm: Add low latency playback and recording support.
commit 99bf09c1284610eaee3efda9d2cc694b6df313b9
- Add lowlatency pcm driver for Playback and Recording.
- Add support in target board files
- Add Recording Path to Multimedia5 FE DAI
- Add support in routing, platform, machine drivers
- Add low latency interfaces support in ASM and ADM drivers.
Change-Id: I40a09c472e7428f025e3244faa3a9ce65c146d15
It was observed that while charging the reported soc sometimes reaches
100% before end of charging happens. At other times it does not reach
100% at end of charge and a abrupt jump to 100% soc happens.
Fix this by linearly increasing soc based on battery charge current
after constant voltage phase is reached. Constant voltage phase is
reached when battery voltage reaches the max value.
Also once constant voltage phase is reached and the voltage or charge
current decreases keep reporting the earlier soc. This could be because
of a transient system load.
Change-Id: I7f04219f782d04cde95dd78c554ae5bbf1880f59
The "adjust_soc" algorithm where we change the open circuit voltage
(ocv) in steps so that the state of charge (soc) starts approaching
the estimated soc, causes nonlinearity in the soc curves if an incorrect
resistance value is fed to the algorithm.
As battery ages and temperature changes, it is hard to estimate the
exact battery resistance.
So to fix the nonlinearity, limit the amount by which the ocv is
changed. Make it proportional to the current, i.e. change ocv by
small amounts in light load and let it change by proportionally
large amounts in heavy load situations.
Also, make the point where the soc is adjusted configurable via platform
data instead of forcing it to 25%.
Change-Id: I8a09af51af4958e429ff275dbb48151c2948e04e
When a strong battery is removed, it was seen that the battery voltage
lines on the phone take about five to six seconds to go below 2.1volts
where the pmic resets all the battery backed registers.
If a new battery is plugged in within this time the driver will force
the shutdown soc on this battery which is incorrect.
Compare the shutdown soc with the calculated soc and if they are
different than a configurable limit, simply discard the shutdown soc
and use the calculated soc.
Change-Id: Ic1ce32c78346e7310b54087b03b2ee24ad6715b7
The dynamic UUC algorithm changes the UUC as load, state of charge and
temperature changes. This uncontrolled behaviour causes unacceptable
jumps in state of charge numbers.
Replace the dynamic UUC algorithm with a simple average current based
UUC. The average current is calculated by remembering the load for last
few (16) samples. Also to maintain a reasonable UUC while charging, a
load of 300mA is assumed.
Note that the first time UUC is calculated we don't have load samples
and in that case the instantaneous current is used.
Since we now don't change the UUC with respect to max possible load
(itest), the usage of this value is removed. Also instead of failure
voltage we introduce cutoff voltage which represents the loaded voltage
by which the battery should be reported 0%.
Change-Id: I831cea14c0670bbb61e6d7808ad336c5dbc33022
msm: board-8064: Enable NLDO TCXO workaround for APQ8064
commit bbc92bcf117385d1a69b872e1f412c7946246334
APQ8064 targets utilize a TCXO; therefore, enable the
rpm-regulator driver TCXO workaround so that they may be
properly enable and also not incur a power hit due to TCXO
being stuck on.
Change-Id: Iacba4de76590dcbcef46dc07b11c7e2fc0bb41fc
CRs-Fixed: 375809
msm_fb: display: change implementation of updating mdp_clk and blt mode
commit 496f928dd8cdd2b1b554c379d9336e2e902e0540
Currently mdp clk and bw requests are predefined in a 4-entry table
passed from the board file, and the logic to decide which level to use
is mainly based on source resolution. This patch is intended to
address several issues with this approach.
One major issue is clk and bandwidth depends on seperate things, and
need to be considered seperately. e.g. with mdp composition of
multiple pipes, bw request may be high but clk requirement may still
be low. The current approach that binds these two things together
causes inefficiency of power.
Another major issue is that there is no logic to calculate mdp clk
requirement of a single pipe based upon panel clk and downscale
parameters. Further the worst case of mdp clk should be determined by
all pipe usage. Without proper logic, many underrun have been
experienced, and blt mode may not be enalbed properly.
Also mdp_clk or blt mode update must be on right timing especially
between these two pathes: overlay play and pan display. In the
situations of performance from high to low or from low to high clk and
blt must be handled properly to avoid underruns.
In a summary, to support many different panels and targets and
complicated mdp pipe usage(mdp composition), mdp driver related to clk
and bw needs to be implemented differently. This patch is to seperate
clk and bw, and maily to deal with mdp clk and blt. Later increasing
granuity of bw will be added.
Change-Id: I0cda9597e130192cd224e2943711c8063bfc1a0a
msm: Rename pmem variables and macros
commit 05e58816e60e9c51480397203405a59daeb0edca
Since MSM no longer uses PMEM, the variables, macros, and kernel
config (CONFIG_KERNEL_PMEM_EBI_REGION) relating to PMEM should be
renamed to something more generic.
Change-Id: Ie3d3faad79565b858dd98c69672d5004e30afe67
gpio: msm: Make msmgpio a platform device
commit b1cc493ae3745e18c025cddc51775c4ae8763751
The gpio driver was not a true platform driver and hence wasn't
supported by device tree. This patch fixes that for non-DT targets
by making sure the device gets added early on during board init.
For DT-targets, adding the gpio-controller property for the device
makes sure the msmgpio device gets probed.
This change is done for all TLMM_v2 targets (msm8660 and future)
TLMM_V1 targets remain unaffected.
Change-Id: I4b291e09db331b65c2b1917ec1ac2e94f0c6eb44
coresight: switch to use coresight core layer code
commit 3b0ca8840d6846d64433d957b376bd554d1afa39
Switch all CoreSight drivers to start using the new CoreSight core
layer code. Remove obsolete qdss code.
Change-Id: Ie4a7a7775c1eefdc25d47efdd5b8732978e10167
usb: msm_otg: Enable VBUS MPM interrupt
commit 87f202f6391ddafc89250bf61a20631b9ee301f0
When otg_control is set to OTG_PHY_CONTROL and PMIC interrupts are
not used for VBUS notification, a cable connection will fail to
wake up the device from VDD minimized low power mode. The MPM needs
to be configured to wake up the system when the USB_PHY_OTGSESSVLD
interrupt is triggered. As this interrupt may vary by SoC populate
it in the msm_otg_platform_data->mpm_otgsessvld_int member in the
various board files.
Change-Id: Ib0890ead7423e4df59a0d21fbeaed4cebdf61458
CRs-fixed: 376740
msm: mdm: change the gpio pull value of mdm2ap_status after bootup
commit 269aa60fb98b322882e7a67fbfe24a458421cce0
The mdm2ap_status gpio has been known to fluctuate in
its value during mdm bootup if set to PULL_NONE, so set
it to PULL_DOWN when the gpiomux is initialliy installed.
However, it needs to be reset to PULL_NONE after the mdm
is booted up in order to reduce leakage current.
Change-Id: I45390061fbaf5ac97239fd2abb8cd0cd7b7ee5ea
CRs-Fixed: 368433
CRs-Fixed: 379343
The tool type checking for pen was incorrect.
Sometimes finger touch produces the same condition as PEN which is
width major and minor are all zero.
This wrong detection change the tracking ID, resulting in two finger
touch report even when single touch is used.
Fix the tool type to finger since mako will support only finger.
Change-Id: I4c7631b77fed677d27d430986d70407af3406aca
There is a problem when is_active_chg_plugged_in API check active_chg_plugged_in
with active_path for TA in unplug_check_worker. So we used the_chip->usb_present
for TA detection correctly due to the same usb port.(USB_IN->USB_OUT->DC_IN->DC_OUT).
Change-Id: If51923ba12e6496bf63123104a158d34cad377b0
This is expected to prevent missing wireless charger state.
The bms needs to know if anything is connected to the wireless charging.
Change-Id: Ie97130cc515d19ab17b67267d9aca7588c1fff72
The battery temperature should be controlled for safty.
So this patch indroduce lge's battery temperature control.
Change-Id: I4fc3512dd86353c951b95847db89e45c4fce5880
The battery temperature should be controlled for safty.
So this patch indroduce battery temperature control.
Change-Id: Ia00e7ce5bf697591be2da94f9a7c2960738642d5
We need to tune the board specific adcmap parameters
So need functions to set specific parameters.
void pm8xxx_set_adcmap_btm_threshold(void *pts, int size)
void pm8xxx_set_adcmap_pa_therm(void *pts, int size)
void pm8xxx_set_adcmap_ntcg_104ef_104fb(void *pts, int size)
Change-Id: Ie78c11f5fb998ecc456defa3c8e3e7a3e0b9b45f
1. separate mako specific codes from bms-batterydata.c into
board-mako-pmic.c
2. update battery data infomation
- rbatt_sf table
- pc_temp_ocv table
- default_rbatt_mohm
Change-Id: I7509d44312783494e2642be08bcca2aeb2326274
Slimbus clients can specify multiple add/remove channel requests
through control_ch API, followed by reconfiguration request (also
known as "commit request"). Clients may rely on the reconfiguration
request to actuate the channel activation/removal and not the
control-channel API.
So the channel reference should be decremented during reconfiguration
request, and not control_ch API.
CRs-Fixed: 389518
Change-Id: Id6ff57c6a4cad878e35004937fb08daf3b9afe7b
Signed-off-by: Sagar Dharia <sdharia@codeaurora.org>
Conflicts:
drivers/slimbus/slimbus.c
Signed-off-by: Ajay Dudani <adudani@codeaurora.org>
With mutiple clients able to use the same channel, it is not correct
assumption that a channel was active due to satellite client's
reconfiguration only. So during sub-system restart of a satellite,
rely on satellite-reconfiguration vote for a channel instead of
channel status to remove channels that were setup by the satellite
before sub-system restart.
CRs-Fixed: 389514
Change-Id: I825381f15cb55396fece5b390d395c7f0a7580ff
Signed-off-by: Sagar Dharia <sdharia@codeaurora.org>
Signed-off-by: Ajay Dudani <adudani@codeaurora.org>
git clone git://codeaurora.org/external/wlan/prima.git
git checkout jb_rel-3.1.7.11
prima: WLAN Driver Release 3.1.7.11 for JB
Initial version of the JB Release driver
Resolved touch malfunction when large object,
such as palm, is on the touch device when the system
is resumed by power key.
Noise immunity is also improved.
Change-Id: I020b861a8b1ad909ae7f00aed34de3b6da47367a