Handle notifications from parallel charger in GEN3 FG driver so
that ESR FCC control can be configured sooner based on parallel
charging status change. Without this, GEN3 FG driver can simply
wait on notifications from battery/USB power supply to move from
HW autonomous to SW controlled ESR FCC settings when parallel
charging is enabled which cause unwanted battery current spikes.
CRs-Fixed: 2119134
Change-Id: Ic4c473a6cc6062f2eaaebc68c30a1a51763c5dda
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
This reverts commit ba6bd90a30.
Perparing for taking more optimized patch suggested to upstream
for using smp_wmb() instead of smp_mb().
Change-Id: Idc4fbd884055d9a8f65f102862dd276abe54699d
Signed-off-by: Prateek Sood <prsood@codeaurora.org>
Charger driver expects USB driver notify -ETIMEDOUT always on
POWER_SUPPLY_PROP_CURRENT_MAXCURRENT on enumeration failure in case
of floating charger. This is to set ICL to value based on Rp in case of
floating charger. But currently driver is not notifying this, when floating
charger is disconnected and connected back. Due to this, device is charging
only with 100mA instead of current based on Rp value. Fix this by having
proper check and allow to notify in case of floating charger type.
Change-Id: Iee0c4d8faa7e25c8445b83784a782751e7148421
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
GPU speed-bin 2 supports fmax of 560MHz and DDR 1555MHz.
Add this config to MSM8996v3 to support required GPU fmax.
Change-Id: Ibdf9bb63c7d8f0e980fbf3c192d536adeaeec52d
Signed-off-by: Dumpeti Sathish Kumar <sathyanov14@codeaurora.org>
secure_pool_list is initialized during domain alloc and freed with domain
free.
commit e6a18bb617 ("iommu: free io pgtable during domain detach.") frees
the secure_pool_list as part of iommu detach sequence, and uses the same
list head as part of iommu attach. This uncovers an existing bug where
list was not being deleted from secure_pool_list and associated memory was
being freed. This resulted in invalid secure_pool_list head pointing to a
location already freed and resulted in kernel BUG of access after free
during iommu attach.
Call Trace:
arm_smmu_alloc_pages_exact+0x60/0x110
io_pgtable_alloc_pages_exact+0x48/0xb0
__arm_lpae_alloc_pages+0x48/0x1c0
arm_64_lpae_alloc_pgtable_s1+0x100/0x15c
alloc_io_pgtable_ops+0x54/0x88
arm_smmu_attach_dev+0x8cc/0x1144
__iommu_attach_device+0x3c/0xf4
[...]
Change-Id: I7d1b49030986da7f5d05b7e6cb9dc09079f20a41
Signed-off-by: Prakash Gupta <guptap@codeaurora.org>
There is no check before cache ops if the memory is marked secure.
This leads to stage 2 pagefault if a secure memory is passed to
IOCTL_KGSL_GPUMEM_SYNC_CACHE ioctl because kernel is not allowed to
do cache ops on secure memory. This can be avoided by returning
success immediately if the memory is marked as secure.
Change-Id: I215d77d2a488cdb00e8e18cfd38cddd9632fd9f6
Signed-off-by: Akhil P Oommen <akhilpo@codeaurora.org>
Using IS_ERR_OR_NULL instead of IS_ERR to also check for
null pointer.
Change-Id: If53a07db52a4d091693a49f9d084df7d4fbf257a
Signed-off-by: Vijay kumar Tumati <vtumati@codeaurora.org>