Wakelock is not supported by default.
If it is not supported, use wakeup_source instead.
Change-Id: Iae27c6fc6c8f3fd6c0129f0869ae734cec59c067
Signed-off-by: haojl2 <haojl2@motorola.com>
Reviewed-on: https://gerrit.mot.com/1366919
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Jianqi Yang <yangj@motorola.com>
Submit-Approved: Jira Key
Dual Battery slgorithm also needs the same AICL rerun.
Otherwise the ICL can drop and stay too low to recharge.
Change-Id: I97236a1342f24c46d14047dd0c1f6cdacd994ddb
Signed-off-by: Kenny Kessler <kenny.kessler@motorola.com>
Reviewed-on: https://gerrit.mot.com/1366736
SME-Granted: SME Approvals Granted
SLTApproved: Slta Waiver
Tested-by: Jira Key
Reviewed-by: Ryan Lattrel <ryanl@motorola.com>
Reviewed-by: Kenneth Kessler <kennykessler@motorola.com>
Submit-Approved: Jira Key
It is found that the USB settled ICL drop down when battery
charging is disabled for full charge, but the ICL does not
adaptively increase for incremental system load or recharge.
In that case, it draws current from battery even a charger
is attached.
In order to recover from that situation, rerun AICL is an
effective way to recover the USB ICL.
Change-Id: Ic08691817bb51276187db558cdd5addd07fc85f0
Signed-off-by: Yonghua Yan <yanyh2@motorola.com>
Reviewed-on: https://gerrit.mot.com/1364085
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Kenneth Kessler <kennykessler@motorola.com>
Submit-Approved: Jira Key
As the h/w JEITA is enable by default, which will impact
the thermal charge profile in qpnp-smbcharger-mmi driver,
so disable it.
Since the h/w JEITA is not used, and mmi thermal charge
profile is used, the battery health in qpnp-smbcharger-mmi
driver should be used as the battery health property.
Change-Id: I53b8a7739f6c94307e076aad6e9234a3149db494
Signed-off-by: Yonghua Yan <yanyh2@motorola.com>
Reviewed-on: https://gerrit.mot.com/1362570
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Kenneth Kessler <kennykessler@motorola.com>
Submit-Approved: Jira Key
Enable class fingerprint only when multi fingerprint sensor enabled.
Do not change if only has one fingerprint sensor.
Change-Id: I90c85ba3399241d7652f164603cf7f571ab98118
Signed-off-by: haojl2 <haojl2@motorola.com>
Reviewed-on: https://gerrit.mot.com/1356399
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Reviewed-by: Jianqi Yang <yangj@motorola.com>
Submit-Approved: Jira Key
Tested-by: Jira Key
motorola/kernel/modules/drivers/input/misc/fpc_fps_mmi/fpc1020_tee.c:
Change device_create() calling to device_create_with_groups() calling.
To make KOBJ_ADD uevent to be aware of sysfs node creating,
device_create_with_groups() but not device_create() should be called.
Change-Id: Idc85caedc7ad770791b893f4c4d65753e2e9b1c6
Reviewed-on: https://gerrit.mot.com/1352027
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Jialei Hao <haojl2@motorola.com>
Reviewed-by: Guobin Zhang <zhanggb@motorola.com>
Submit-Approved: Jira Key
Reviewed-on: https://gerrit.mot.com/1356391
Reviewed-by: Jianqi Yang <yangj@motorola.com>
This sys entry shows current fingerprint vendor.
This info is useful if multi fingerprint vendor exist in one product.
Change-Id: I77a97745802c30bb319ed3b62fc222101f6ac6ff
Signed-off-by: haojl2 <haojl2@motorola.com>
Reviewed-on: https://gerrit.mot.com/1340583
SME-Granted: SME Approvals Granted
SLTApproved: Slta Waiver
Tested-by: Jira Key
Reviewed-by: Jianqi Yang <yangj@motorola.com>
Submit-Approved: Jira Key
Reviewed-on: https://gerrit.mot.com/1322013
As fingerprint HAL need read and write fpc1020 sys entries, so those
sys entries need change owner and group to system.
If DLKM is used, after rmmod and insmod fpc1020 kernel module again,
owner and group will be root again for those sys entries.
One way to fix this is set those sys entries owner and group in
uevent.rc.
uevent.rc need be triggered by a device add uevent. So create a
fingerprint class device and move original sys entries to a class device
Change-Id: I890eb93a616973e2a454be0fea494206c066cc25
Signed-off-by: haojl2 <haojl2@motorola.com>
Reviewed-on: https://gerrit.mot.com/1340582
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Jianqi Yang <yangj@motorola.com>
Submit-Approved: Jira Key
Reviewed-on: https://gerrit.mot.com/1318460
moto touch firmware update need some sys entries to accomplish this work
Add those entries.
Change-Id: Ib6789e04ba888f9ee53b7cbc00abe981b8f707c8
Signed-off-by: haojl2 <haojl2@motorola.com>
Reviewed-on: https://gerrit.mot.com/1346254
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Jun Weng <wengjun1@motorola.com>
Reviewed-by: Jianqi Yang <yangj@motorola.com>
Submit-Approved: Jira Key
Reviewed-on: https://gerrit.mot.com/1356397
Add touchscreen class sys entries.
Those entries contains IC info, which is used by FW upload
and CQA test.
Change-Id: Ie599eb3974ebc0e1ff8df1b14e25acc9b52172a6
Signed-off-by: haojl2 <haojl2@motorola.com>
Reviewed-on: https://gerrit.mot.com/1342368
SME-Granted: SME Approvals Granted
SLTApproved: Slta Waiver
Tested-by: Jira Key
Reviewed-by: Jianqi Yang <yangj@motorola.com>
Submit-Approved: Jira Key
Reviewed-on: https://gerrit.mot.com/1356395
If FOCALTECH_TOUCH_IC_NAME defined in device.mk, use this to select
different IC.
Default option is ft8719
Change-Id: I9ef108d26d1fc8aae8f63f7d2b65fff0680633e9
Signed-off-by: haojl2 <haojl2@motorola.com>
Reviewed-on: https://gerrit.mot.com/1341266
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Jianqi Yang <yangj@motorola.com>
Submit-Approved: Jira Key
Reviewed-on: https://gerrit.mot.com/1356394
This issue is due to the race between power_supply_changed()
and smb_mmi_power_supply_changed().
First, power_supply_changed() holds the battery wakelock and
releases the wakelock if battery supply change work is scheduled.
And then, qpnp-smbcharger-mmi driver set the supply changed flag
to be true, call smb_mmi_power_supply_changed() and wait for
battery supply change work completion, where it does not release
the wakelock as the supply changed flag becomes true.
Finally, the battery wakelock will not be released any more.
Change-Id: I57f4728cb6510acce004d5d84489695035c10eaf
Signed-off-by: Yonghua Yan <yanyh2@motorola.com>
Reviewed-on: https://gerrit.mot.com/1357520
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Kenneth Kessler <kennykessler@motorola.com>
Submit-Approved: Jira Key
NXP patch to fix (CR)
Issue description:
No sound issue has been found in handheld mode
in one of Moto Projects, SurfNa project(tfa9871,
driver code Ver6.5.0). About 1/600 chance
root cause:
If set SBSL=1, the AMPE usually can be AMPE=1 automatically.
But sometimes can’t be set AMPE=1 by itself.
So AMPE must be set to 1 manually in code.
Dependency on automatic AMPE setting is not a wise way.
In driver 6.5.0, there’s no code to set AMPE during profile switch,
but boot up sequence has already been added.
Solution:
Add AMPE=1 operation in profile switching
Change-Id: I3de27e826d39c93f2d011d0f9d8fe9877e8efc89
Signed-off-by: guoyf2 <guoyf2@lenovo.com>
Reviewed-on: https://gerrit.mot.com/1358094
SME-Granted: SME Approvals Granted
SLTApproved: Slta Waiver
Tested-by: Jira Key
Reviewed-by: Zhengming Yao <yaozm1@lenovo.com>
Reviewed-by: Xiangpo Zhao <zhaoxp3@motorola.com>
Submit-Approved: Jira Key
Cirrus has their own code release branch. and these branches are
not compatible each other. audio team can't branch off motorola
kernel modules
Note: cs4012 and msm-cirrus-playback had not beeen moved away.
Change-Id: Ib14bf3c5a5cfaa9c363a59c4ba0f871e11e9c92a
Signed-off-by: huangys <huangys@motorola.com>
Reviewed-on: https://gerrit.mot.com/1350673
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Guobin Zhang <zhanggb@motorola.com>
Submit-Approved: Jira Key
Thermal Engine uses the charge_control_limit to trigger
the charge mitigation, so set it to be writable.
Mot-CRs-fixed: (CR)
Change-Id: Ie529b0969c46afcfb190c5524fe862059522385c
Signed-off-by: Yonghua Yan <yanyh2@motorola.com>
Reviewed-on: https://gerrit.mot.com/1353035
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Kenneth Kessler <kennykessler@motorola.com>
Submit-Approved: Jira Key
Reviewed-on: https://gerrit.mot.com/1355886
There is no need to do boost reverse recovery if the usbin
has already been in suspend state.
Meanwhile, this avoids the incorrect usbin suspend state
being written back after boost reverse recovery if usbin is
in suspend state before boost reverse recovery through
force_chg_suspend in factory test.
Mot-CRs-fixed: (CR)
Change-Id: Id172860862482d4f9e19505320e854b17a7610ce
Signed-off-by: Yonghua Yan <yanyh2@motorola.com>
Reviewed-on: https://gerrit.mot.com/1352348
SME-Granted: SME Approvals Granted
SLTApproved: Slta Waiver
Tested-by: Jira Key
Reviewed-by: Kenneth Kessler <kennykessler@motorola.com>
Submit-Approved: Jira Key
Reviewed-on: https://gerrit.mot.com/1355885
If use QC battery as the "battery" supply, the sysfs nodes charger_rate
and age will have no way to access the mmi smbcharger chip struct, as
it can only obtain the QC battery supply driver data.
Mot-CRs-fixed: (CR)
Change-Id: I6388c1bd951ee3aa9288c8dda15602f72b275dd3
Signed-off-by: Yonghua Yan <yanyh2@motorola.com>
Reviewed-on: https://gerrit.mot.com/1346435
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Huosheng Liao <liaohs@motorola.com>
Reviewed-by: Kenneth Kessler <kennykessler@motorola.com>
Submit-Approved: Jira Key
Reviewed-on: https://gerrit.mot.com/1355883
Use force voter for factory FCC and ICL configuration during
factory test in case the configuration is overridden by SMB5
charger driver.
Mot-CRs-fixed: (CR)
Change-Id: I8647b42b6ca420a02312198fb56c7ee09edfbde3
Signed-off-by: Yonghua Yan <yanyh2@motorola.com>
Reviewed-on: https://gerrit.mot.com/1345281
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Huosheng Liao <liaohs@motorola.com>
Reviewed-by: Haijian Ma <mahj8@motorola.com>
Reviewed-by: Kenneth Kessler <kennykessler@motorola.com>
Submit-Approved: Jira Key
Reviewed-on: https://gerrit.mot.com/1355881
The heartbeat_work breaks and output error log when accesses
the DCIN status register for presence detection.
As the DCIN is not supported in PMI632 chip and the address
at 0x14XX is undefined, so it return -ENODEV when access it.
So for PMI632 chip, just consider it as successful with data
0 returned for DCIN presence check.
Mot-CRs-fixed: (CR)
Change-Id: Id459296ec20bb679e1803b820be1bd288a1cdc75
Signed-off-by: Yonghua Yan <yanyh2@motorola.com>
Reviewed-on: https://gerrit.mot.com/1342040
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Kenneth Kessler <kennykessler@motorola.com>
Submit-Approved: Jira Key
Reviewed-on: https://gerrit.mot.com/1355879
When the System Suspends the running last reported SOC needs to
be reset. The reason is that the SOC could have moved a large
amount while sleeping. The curretn SOC needs to be recalculated
so that the changes is noticable to the User upon wakeup.
To do this keep track of the Suspend state as well as the fact
that the heartbeat has not run yet after a Suspend. The
WAS_SUSPEND bit will track this and then be cleared once the
heartbeat gets past the point that the information is not longer
needed. For Dual Batteries, this will force the last_reported_soc
to be updated with the current calculation rather then trying
to Monotonically adjust it slowly.
Change-Id: I0de830df74720f0f26f8f7a7cfcba7698f6a6dd6
Signed-off-by: Kenny Kessler <kenny.kessler@motorola.com>
Reviewed-on: https://gerrit.mot.com/1355819
SME-Granted: SME Approvals Granted
SLTApproved: Slta Waiver
Tested-by: Jira Key
Reviewed-by: Curtis Porter <porterc@motorola.com>
Reviewed-by: Kenneth Kessler <kennykessler@motorola.com>
Submit-Approved: Jira Key
root cause:
incorrect NXP AMPE reg value when power on
fix:
if AMPE==0 and PWDN ==0, force set AMPE value to 1
Change-Id: Ib7605261b76cac3238b5fa23a7d74a091f0b5ffd
Signed-off-by: guoyf2 <guoyf2@lenovo.com>
Reviewed-on: https://gerrit.mot.com/1356869
SME-Granted: SME Approvals Granted
SLTApproved: Slta Waiver
Tested-by: Jira Key
Reviewed-by: Yunfei Guo <guoyf2@motorola.com>
Reviewed-by: Zhengming Yao <yaozm1@lenovo.com>
Reviewed-by: Xiangpo Zhao <zhaoxp3@motorola.com>
Submit-Approved: Jira Key
Add a kcontorl for the Noise Generator sample rate select.
Patch came from vendor (Cirrus).
Mot-CRs-fixed: (CR): approach won't work with youtube in background
Change-Id: If4dc2ec707e679da23e31740bf071d3e1f7d311a
Signed-off-by: Paul Handrigan <Paul.Handrigan@cirrus.com>
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
SLTApproved: Slta Waiver
Reviewed-by: Konstantin Makariev <kmakariev@motorola.com>
Submit-Approved: Jira Key
Reviewed-on: https://gerrit.mot.com/1354957
Change the device id of a part to the device name.
Patch came from vendor (Cirrus).
Mot-CRs-fixed: (CR): approach won't work with youtube in background
Change-Id: I6ca0f03da34bffe4025b49d5e1913b03c4b9a70e
Signed-off-by: Paul Handrigan <Paul.Handrigan@cirrus.com>
Tested-by: Jira Key
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Reviewed-by: Konstantin Makariev <kmakariev@motorola.com>
Submit-Approved: Jira Key
Reviewed-on: https://gerrit.mot.com/1354956
Change the dsp firmware control to switch AoU and AoU concurrent
firmware.
Patch came from vendor (Cirrus).
Mot-CRs-fixed: (CR): approach won't work with youtube in background
Change-Id: I8822e02f8b4aa229dee187c89297f43e4c111e0f
Signed-off-by: Paul Handrigan <Paul.Handrigan@cirrus.com>
Tested-by: Jira Key
SME-Granted: SME Approvals Granted
SLTApproved: Slta Waiver
Reviewed-by: Konstantin Makariev <kmakariev@motorola.com>
Submit-Approved: Jira Key
Reviewed-on: https://gerrit.mot.com/1354954
Add enum to select the rate for the Noise Generator.
Patch came from vendor (Cirrus).
Mot-CRs-fixed: (CR): approach won't work with youtube in background
Change-Id: I056bc0eb204d5f3feef61ee7066cc5b4c59427a6
Signed-off-by: Paul Handrigan <Paul.Handrigan@cirrus.com>
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Konstantin Makariev <kmakariev@motorola.com>
Submit-Approved: Jira Key
Reviewed-on: https://gerrit.mot.com/1354953
At power-up the USB should be suspended for 50 ms to clear
any issues that might have occurred during boot. This will
be handled in the probe when NOT in factory mode. Stability
racks are reporting discharged batteries and the cause appears
to be ICL is at minimum before probe occurs. This should allow
for a clean start on each boot.
Change-Id: I66817f5a74f8161fbf1c3023c42ae72e994d8fa2
Signed-off-by: Kenny Kessler <kenny.kessler@motorola.com>
Reviewed-on: https://gerrit.mot.com/1349801
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Curtis Porter <porterc@motorola.com>
Reviewed-by: Ryan Lattrel <ryanl@motorola.com>
Reviewed-by: Kenneth Kessler <kennykessler@motorola.com>
Submit-Approved: Jira Key
Always log touch events while running in factory mode. This will
allow for easier debugging of factory issues.
Change-Id: I348164021d590e40751ba3c456245c3349a4d53a
Signed-off-by: Konstantin Makariev <hcv867@motorola.com>
Reviewed-on: https://gerrit.mot.com/1347015
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Konstantin Makariev <kmakariev@motorola.com>
Submit-Approved: Jira Key
When FW upgrade happens, regmap might change. This makes access
to test reporting invalid and thus DLKM needs to reload. However,
if touch IC's power state does not allow successful I2C
communications, DLKM will never properly initialize. This change
introdices 2 things:
* waiting for valid power state to load DLKM
* new state "loading" that allows to hold on power state change
during DLKM load
Note: It has been evaluated for test reporting DLKM only at this
time. Long term it would need to apply to all DLKMs.
Change-Id: I86f1ab6b815053e499b01a655fccf517d1e9addc
Signed-off-by: Konstantin Makariev <hcv867@motorola.com>
Reviewed-on: https://gerrit.mot.com/1346820
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Konstantin Makariev <kmakariev@motorola.com>
Submit-Approved: Jira Key
- send tfa cal just on speaker mode.
if set tfa cal on handset mode, algorithm no ready,
afe_callback will return fail
and set this_afe.status to 1,
once other modules want to get the status at the same time,
will get the fail status.
the call on handset screne,
open capture pcm low probality to get the status
at the same time, so open capture pcm fail,cause call no sound.
so send tfa cal just on speaker mode.
nxp smart pa is bypass on handset mode.
Change-Id: Ib977fc68d48931d8617ec4339dc5494da9986ca4
Signed-off-by: liaohj <liaohj@lenovo.com>
Reviewed-on: https://gerrit.mot.com/1339597
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Wanlong Zhou <zhouwl@motorola.com>
Reviewed-by: Hujun Liao <liaohj@motorola.com>
Submit-Approved: Jira Key
Demo Mode was a pending feature on MOD 5G and Olson. This patch
allows it to work on both devices, as well as being compatible with
any other device that uses this same driver.
Change-Id: I99f117485faf27a01890c6433a6ece77ab755cfd
Signed-off-by: cmsantos <cmsantos@motorola.com>
Reviewed-on: https://gerrit.mot.com/1281220
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Kenneth Kessler <kennykessler@motorola.com>
Submit-Approved: Jira Key
The DC ICL needs to be set via the DTS entry. Also the Charge
current when the source is DC should be lower so use a default
500 mA rate.
Change-Id: I7f04e1601b657cf3a4ff58614b309426026c150a
Signed-off-by: Kenny Kessler <kenny.kessler@motorola.com>
Reviewed-on: https://gerrit.mot.com/1337904
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Ryan Lattrel <ryanl@motorola.com>
Reviewed-by: Cesar Augusto Marcelino dos Santos <cmsantos@motorola.com>
Reviewed-by: Kenneth Kessler <kennykessler@motorola.com>
Submit-Approved: Jira Key
In the constant current charging stage, we made a power compensation
strategy to improve the charging efficiency.
this patch is for optimize the power compensation strategy, so that
it can avoid the disturbance of thermal mitigation policy.
and it can help improve the accuracy of the battery fuel gauge
Change-Id: I404f63da75c93ca409b6bb5c7d581f62ba415f6c
Signed-off-by: xuwt2 <xuwt2@lenovo.com>
Reviewed-on: https://gerrit.mot.com/1336218
SME-Granted: SME Approvals Granted
SLTApproved: Slta Waiver
Tested-by: Jira Key
Reviewed-by: Jianqi Yang <yangj@motorola.com>
Submit-Approved: Jira Key