Commit graph

608843 commits

Author SHA1 Message Date
Srinivas Ramana
dfce62a901 pinctrl: qcom: Add irq_enable callback for msm gpio
Introduce the irq_enable callback which will be same as irq_unmask
except that it will also clear the status bit before unmask.

This will help in clearing any erraneous interrupts that would
have got latched when the interrupt is not in use.

There may be devices like UART which can use the same gpio line
for data rx as well as a wakeup gpio when in suspend. The data that
was flowing on the line may latch the interrupt and when we enable
the interrupt before going to suspend, this would trigger the
unexpected interrupt. This change helps clearing the interrupt
so that these unexpected interrupts gets cleared.

Bug: 68261352
Bug: 77429706
Change-Id: I017badff8d5b993599d7e7240ed4702ff4b344ad
Signed-off-by: Srinivas Ramana <sramana@codeaurora.org>
Signed-off-by: Kyle Yan <kyan@codeaurora.org>
Signed-off-by: Mugata, Sreenivasa Rao <smugat@codeaurora.org>
Signed-off-by: Petri Gynther <pgynther@google.com>
2020-11-03 21:30:32 +01:00
Trevor Bunker
74725f6614 drivers: pinctrl: mask non-wakeup interrupts in suspend path
Bug: 30079159
Change-Id: If66a7ab642d28c7a42e0af337e388af4c1915677
2020-11-03 21:30:32 +01:00
Michael Bestas
cfcb62c9e5 slimbus: Add missing brackets in slim_change_existing_chans
Change-Id: I2f13656d0e8aa18213b54314f19fcd33a96751c4
2020-11-03 21:30:31 +01:00
Subhash Jadavani
e44e3d4cee scsi: ufs: synchronize between rls handler and clock scaling
Fix race condition between rls handler thread and clock scaling thread when
LINERESET indication is sent out from host controller. A known scenario is
when clock scaling thread has put link to hibern8 after gear scaling down
is done, if rls handler thread, scheduled because of LINERESET indication
from controller, starts to run now to scale gear up (PWM to HS), it would
fail as the link state is still in hibern8 state. This change fixes this
race condition by using write semaphore to prevent rls handler thread and
clock scaling thread getting chance to run simultaneously.

Change-Id: Ia1731c921c42155cacb43029d56491ddffcf2ee2
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
Signed-off-by: Can Guo <cang@codeaurora.org>
2020-11-03 21:30:31 +01:00
Subhash Jadavani
33f0ce8ba8 scsi: ufs: change the clock scaling polling period and up threshold
We have noticed that UFS load based clock scaling is ramping up to highest
frequency during low power usecases but never scales back to lower
frequency during the remaining usecase run period. This increases the
oveall power consumption for a given low power usecase. We analyzed UFS
data transfer pattern for different low power usecases and updated clock
scaling polling period & up threshold which helps with power numbers
without affecting performance numbers.

Change-Id: I74cf8a1f07d1b1a0ac112f28fc98a8a82cac1d28
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
2020-11-03 21:30:31 +01:00
Sayali Lokhande
c5e11ae58d scsi: ufs: Avoid deadlock in suspend and eeh_work
In case of an exception, there could be a deadlock:

eeh_work:
-002|schedule()
-003|spin_lock_irq()
-003|rpm_resume << pm_runtime_get_sync(hba->dev);
-004|__pm_runtime_resume()
-005|ufshcd_scsi_block_requests()
-005|ufshcd_exception_event_handler()

ufshcd_suspend:
-002|schedule()
-003|schedule_timeout()
-004|do_wait_for_common()
-004|__wait_for_common()
-004|wait_for_common()
-005|wait_for_completion()
-006|destroy_work_on_stack()
-006|flush_work(?) << eeh_work
-007|ufshcd_suspend()
-008|ufshcd_runtime_suspend()
-009|ufshcd_pltfrm_runtime_suspend()
-010|pm_generic_runtime_suspend()
-011|__rpm_callback()

Scenario looks like :
1.Hba->eeh_work starts to work and at the almost same
time ufshcd_runtime_suspend start to work by rpm core.
2.pm_runtime_get_sync in eeh_work remains pending as
rpm_status is RPM_SUSPENDING due to ufshcd_runtime_suspend.

To fix this, call pm_runtime_get_noresume() once eeh_work
is scheduled so that suspend cannot be invoked during
exception work.

Change-Id: Ib212f71e22f063dad9c6ccca4aa8f7261e568b51
Signed-off-by: Asutosh Das <asutoshd@codeaurora.org>
Signed-off-by: Sayali Lokhande <sayalil@codeaurora.org>
2020-11-03 21:30:31 +01:00
Essential kernel team
0172172434 Fix bugs about step-chg-jeita
1. JEITA FV compensation cannot work
2. Cannot charge when battery capacity is 0%
3. Wrong debug message

Change-Id: I32ecb77b4c1dd8073cbf5aec070c3e6fcadc1dd2
2020-11-03 21:30:30 +01:00
Michael Bestas
7ba162b3ae ASoC: msm-cpe: Fix msm_cpe_lsm_ioctl_compat error handling
Change-Id: Iec6a12aaed4dce60f774c09264b8e566a17ce9d9
2020-11-03 21:30:30 +01:00
Nick Desaulniers
4c5f56392d Silences WLAN, PCIe, and CPU suspend state kernel messages
Bug: 27134656
Change-Id: I681ec2171472514489365ca4bfc4ef16d9b344fe
2020-11-03 21:30:30 +01:00
Michael Bestas
bbaf781af5 PM / devfreq: bw_hwmon: Add missing mutex unlock
Fixes 28aab0311c
"PM/devfreq: bw_hwmon: add mutex lock in polling interval case"

Change-Id: I84ccefedbc9d9c0d25806799451346b6a46bae90
2020-11-03 21:30:30 +01:00
Saravana Kannan
1e6da862cb PM / devfreq: memlat: Don't ignore extremely latency sensitive workloads
The ratio value that's compared against ratio_ceil tunable can be 0 for
workloads that are extremely latency sensitive. So, we can't ignore cores
that have a ratio of 0 (which was done to ignore idle cores). So, stop
ignoring cores with a ratio of 0 and instead check for instruction or
frequency being 0 to identify idle cores.

Change-Id: I8c6c14f374f016e6612c3b834589d065bad8f488
Signed-off-by: Saravana Kannan <skannan@codeaurora.org>
2020-11-03 21:30:30 +01:00
Maria Yu
76ed2e927d PM / devfreq: bw_hwmon: use unsigned parameter for bytes_to_mbps
In bytes_to_mbps function, the parameter is all unsigned,
so change the decleration of the function to include unsigned long
long to avoid compilation errors in 32 bit environment.
Also changed the return value as unsigned long to avoid
any data loss possible in 64 bit environment.

Change-Id: Ib3906bb4bc16086ae343764c5a718f6f005428c5
Signed-off-by: Maria Yu <aiquny@codeaurora.org>
2020-11-03 21:30:29 +01:00
Maulik Shah
ccb2777821 drivers: cpuidle: lpm-levels: Reset suspend wake time
During suspend alarm timer sends next wakeup time to
be programmed. Currently next wakeup time is not reset
upon wakeup. This causes unintended wakeups if there is
no alarm set during next suspend.

Reset suspend wake time during exit from suspend.

Change-Id: Ia0e5d08a4e5cdc71f6c2d884363b830de5ef88d5
Signed-off-by: Maulik Shah <mkshah@codeaurora.org>
2020-11-03 21:30:29 +01:00
Maulik Shah
fbd35805c8 cpuidle: lpm-levels: Do not predict LPM for isolated cpus
Prediction can select shallower low power mode for isolated
cpu based on historical data.

Do not predict LPMs for isolated cpus.

Change-Id: I998008ef3c578c1dccfacae8513a15dfbe397e16
Signed-off-by: Maulik Shah <mkshah@codeaurora.org>
2020-11-03 21:30:29 +01:00
Srinivas Rao L
c8e2fdb191 lpm_levels: Return true for CPU WFI mode allow check
As it's a general understanding across all architectures to have
a WFI (or equalivalent) mode always present and never disabled
for cpuidle, return true for CPU WFI mode allow check.

Change-Id: Ic55571488f845e4aaf997faaac3b2e0f22368d4e
Signed-off-by: Srinivas Rao L <lsrao@codeaurora.org>
2020-11-03 21:30:29 +01:00
Sultanxda
5ddfb5777c cpu: Silence log spam when a CPU is brought up
Change-Id: Ib9bc76270fedb8d620714faf45de58d5ecdcd64e
Signed-off-by: Sultanxda <sultanxda@gmail.com>
2020-11-03 21:30:29 +01:00
Ritesh Harjani
8c7501882b cfq: Give a chance to arm slice idle timer in case of group_idle
In below scenario blkio cgroup does not work as per their assigned
weights :-
1. When the underlying device is nonrotational with a single HW queue
with depth of > 5
2. When the use case is forming two blkio cgroups cg1(weight 1000) &
cg2(wight 100) and two processes(file1 and file2) doing sync IO in
their respective blkio cgroups.

For above usecase result of fio (without this patch):-
file1: (groupid=0, jobs=1): err= 0: pid=685: Thu Jan  1 19:41:49 1970
  write: IOPS=1315, BW=41.1MiB/s (43.1MB/s)(1024MiB/24906msec)
<...>
file2: (groupid=0, jobs=1): err= 0: pid=686: Thu Jan  1 19:41:49 1970
  write: IOPS=1295, BW=40.5MiB/s (42.5MB/s)(1024MiB/25293msec)
<...>
// both the process BW is equal even though they belong to different
cgroups with weight of 1000(cg1) and 100(cg2)

In above case as soon as the request from cg1 is completed and even
though it is provided with higher slice_idle=10, because of CFQ
algorithm when the driver tries to fetch the request, CFQ expires
this group without providing any idle time nor weight priority
and schedules another cfq group (in this case cg2).
And thus both cfq groups(cg1 & cg2) keep alternating to get the
disk time and hence loses the cgroup weight based scheduling.

Below patch gives a chance to cfq algorithm (cfq_arm_slice_timer)
to arm the slice timer in case group_idle is enabled.

With this patch result of fio(for above usecase) :-
file1: (groupid=0, jobs=1): err= 0: pid=690: Thu Jan  1 00:06:08 1970
  write: IOPS=1706, BW=53.3MiB/s (55.9MB/s)(1024MiB/19197msec)
<..>
file2: (groupid=0, jobs=1): err= 0: pid=691: Thu Jan  1 00:06:08 1970
  write: IOPS=1043, BW=32.6MiB/s (34.2MB/s)(1024MiB/31401msec)
<..>
// In this processes BW is as per their respective cgroups weight.

Change-Id: I2eb20e48d6fd8ee48e01f00c514a1ee1476fd19c
Signed-off-by: Ritesh Harjani <riteshh@codeaurora.org>
2020-11-03 21:30:28 +01:00
Prakash Gupta
948a50ab13 ion: ion_system_heap: update supported page-orders for ion pool
The supported mappings for ARMv8 are 1GB, 2MB, 64KB and 4KB. So 1MB
allocations from ion pool is not used for ARMv8 section map. Such
allocations end up being mapped as multiple 64K sections map, while still
using 1MB contiguous memory. In case of ARMv7s, page-order 9 allocations
are not used as section map.

Drop page-order 8 ion pool for builds using ARMv8 pagetables and page-order
9 ion pool for builds using ARMv7s.

Change-Id: Ifff2d8f1cf61ce443311d16c11b8edc191b27a22
Signed-off-by: Prakash Gupta <guptap@codeaurora.org>
2020-11-03 21:30:28 +01:00
Alex Naidis
32a2876cf9 msm: kgsl: Increase priority of RT thread
We need kgsl_worker_thread to preempt
all userspace surfaceflinger threads to
avoid a possible deadlock.

This will prevent the SF
threads from "stealing" cputime from
kgsl_worker_thread.
This is important, since kgsl_worker_thread
executes work which blocks SF from proceeding.

Change-Id: Ic4c9ca1f44ad8952ae2154a84ded7013244ca20d
Signed-off-by: Alex Naidis <alex.naidis@linux.com>
2020-11-03 21:30:28 +01:00
Suren Baghdasaryan
9740ce8c76 msm: kgsl: Stop slab shrinker when no more pages can be reclaimed
do_shrink_slab() scans each shrinker in batches of at most
batch_size (128) pages at a time until total_scan pages are
scanned or until shrinker returns SHRINK_STOP. Under heavy
memory pressure total_scan can be large (in thousands) and
kgsl_pool_shrink_scan_objects() ends up returning 0 after
all pages that were reclaimable are reclaimed. This results in
multiple calls to kgsl_pool_shrink_scan_objects() that do not
reclaim any memory. To prevent this kgsl_pool_shrink_scan_objects()
is modified to return SHRINK_STOP as soon as no more memory can
be reclaimed.

Bug: 69931996
Test: tested using alloc-stress with additional traces

Change-Id: Ia48fc2c0d888c54ec9642c0b0962a70ca3cb4c5e
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
2020-11-03 21:30:28 +01:00
Deepak Kumar
e06f77fa89 Revert "msm: kgsl: Do not memset pages to zero while adding to pool"
This reverts commit 90d6246fca5f288606551c5d02af920bfeb05b9b.

To address the launch latency issue seen because of increase in
memory allocation time.

Change-Id: I147ca8607337541b7a29056b4bd1b46aa374c6e3
Signed-off-by: Deepak Kumar <dkumar@codeaurora.org>
2020-11-03 21:30:28 +01:00
Kyle Piefer
84526e8406 Revert "msm: kgsl: Disallow L2PC during wake up from SLUMBER"
This reverts commit 5344e5c78f5820dfa34cfcea4572d8e347a018ce.
The change negatively impacted performance.

CRs-Fixed: 2120475
Change-Id: Ib6ff329a3501e77d990c2e9502ed35e041f730c8
Signed-off-by: Kyle Piefer <kpiefer@codeaurora.org>
2020-11-03 21:30:27 +01:00
Johannes Berg
a6778e2010 BACKPORT: cfg80211: remove enum ieee80211_band
This enum is already perfectly aliased to enum nl80211_band, and
the only reason for it is that we get IEEE80211_NUM_BANDS out of
it. There's no really good reason to not declare the number of
bands in nl80211 though, so do that and remove the cfg80211 one.

Change-Id: Ifc56e6297146c9095432b757fabd0c463d7cc583
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Bug: 62057517
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
2020-11-03 21:30:27 +01:00
Pranav Vashi
3137062fac scsi: Fix size arguement clang error
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2020-11-03 21:30:27 +01:00
Nathan Chancellor
c5eab0c59b codecs: tfa9891: Hide self assign Clang warnings
Without much context to why these warnings even exist (especially with
the ambiguous comment "Avoid warning in user-space"), I'd rather play
it safe and not disturb the code but "fix" the warning.

Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2020-11-03 21:30:26 +01:00
Pranav Vashi
2bd5927b3b project_info: Fix size arguement clang error 2020-11-03 21:30:26 +01:00
Nathan Chancellor
bb336fb77e soc: qcom: qpnp-haptic_oem: Fix self assign Clang warnings
As pointed out by Josh in the comments of 60e5a5f0b974, this seems
like an addition that just isn't necessary. Self assign shouldn't
be necessary here so we'll just reverse the condition and eliminate
the self assignment.

Reviewed-by: joshuous <joshuous@gmail.com>
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
2020-11-03 21:30:26 +01:00
Nathan Chancellor
4d2289554a nfc: pn5xx: Fix enum-conversion warnings
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
2020-11-03 21:30:26 +01:00
Nathan Chancellor
8d44bd476f net: lan78xx: Avoid unnecessary self assignment
Clang warns when a variable is assigned to itself.

drivers/net/usb/lan78xx.c:940:11: warning: explicitly assigning value of
variable of type 'u32' (aka 'unsigned int') to itself [-Wself-assign]
                        offset = offset;
                        ~~~~~~ ^ ~~~~~~
1 warning generated.

Reorder the if statement to acheive the same result and avoid a self
assignment warning.

Link: https://github.com/ClangBuiltLinux/linux/issues/129
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2020-11-03 21:30:26 +01:00
Nathan Chancellor
0f1db4c593 touchscreen: fw_update_v7: Fix constant logical operand warning
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
2020-11-03 21:30:25 +01:00
Nathan Chancellor
1687df2690 project_info: Fix a section warning
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
2020-11-03 21:30:25 +01:00
Jean-Baptiste Théou
d5995fde16 ASoC: codecs: tfa9891: add error translation routine
Clang warns:

../sound/soc/codecs/tfa98xx/tfa_dsp.c:3155:9: warning: implicit conversion
from enumeration type 'enum Tfa98xx_Error' to different enumeration type
'enum tfa_error' [-Wenum-conversion]
        return err;
        ~~~~~~ ^~~
../sound/soc/codecs/tfa98xx/tfa_dsp.c:3215:9: warning: implicit conversion
from enumeration type 'enum Tfa98xx_Error' to different enumeration type
'enum tfa_error' [-Wenum-conversion]
        return err;
        ~~~~~~ ^~~
../sound/soc/codecs/tfa98xx/tfa_dsp.c:3267:9: warning: implicit conversion
from enumeration type 'enum Tfa98xx_Error' to different enumeration type
'enum tfa_error' [-Wenum-conversion]
        return err;
        ~~~~~~ ^~~

@neobuddy89: adapted for oneplus-msm8998

Change-Id: I4d1d428f0306bbe6bb25d8beab8a74307aaeadf7
Signed-off-by: Jean-Baptiste Théou <jb@essential.com>
2020-11-03 21:30:25 +01:00
Pavankumar Kondeti
c3f9f6c48b core_ctl: Consider high irq loaded CPU as busy
Currently a CPU is considered as busy if it's utilization in
the last window exceeds busy threshold. A CPU loaded with
hardirqs/softirqs does not necessarily have high utilization.
Isolating such CPUs may hurt performance as it involves waking
up the CPU frequently from deep c-state. Prevent isolating
high irq loaded CPUs by considering them as busy.

Change-Id: I169b69f6003eb59a126c8a16b67b65be2aa7af40
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
2020-11-03 21:30:25 +01:00
Sultan Alsawaf
6b791ecbcd treewide: Fix code issues detected using GCC 8.2.0
Use the latest version of GCC to take advantage of improved static analysis.
These issues appeared as warnings from the compiler.

Many of these fixes are for clearly incorrect code; compiler warnings
should not be taken lightly.

Signed-off-by: Sultan Alsawaf <sultan@kerneltoast.com>
2020-11-03 21:30:25 +01:00
Pranav Vashi
7d9b389db3 drivers: Fix up disabling CONFIG_OEM_FORCE_DUMP
* Can't believe @OnePlusOSS pays for this shit to their engineers.

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2020-11-03 21:30:24 +01:00
Dan Pasanen
a3f1ecf78a power: don't ever reboot to verity red
* We get it, shit's broken. We're flashing custom stuff, shit's bound
  to break. Don't pop this annoying screen up, we're not even using
  verity anyway.

Change-Id: Icd77b70ec1df9108a4ba9e7fd8cb9623b35b78db
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2020-11-03 21:30:24 +01:00
Michael Bestas
0ed91aca25 power: reset: Move in_panic handling out of dload mode
* Some devices might want to use that logic
  without enabling download mode

Change-Id: Idd4a2cc8a47041740f8d4e9f43bffd84fae5830d
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2020-11-03 21:30:24 +01:00
Paolo Valente
89190bd929 block: cgroups, kconfig, build bits for BFQ-v7r11-4.4.0
Update Kconfig.iosched and do the related Makefile changes to include
kernel configuration options for BFQ. Also increase the number of
policies supported by the blkio controller so that BFQ can add its
own.

Signed-off-by: Paolo Valente <paolo.valente@unimore.it>
Signed-off-by: Arianna Avanzini <avanzini@google.com>
2020-11-03 21:30:24 +01:00
Daniel Micay
9ffe929d8a add toggle for disabling newly added USB devices
Based on the public grsecurity patches.

Change-Id: I2cbea91b351cda7d098f4e1aa73dff1acbd23cce
Signed-off-by: Daniel Micay <danielmicay@gmail.com>
2020-11-03 21:30:24 +01:00
Alex Naidis
97e80dde8b binder: Disable debug mask
According to Google we should set this to 0
as there is excessive logging in specific usecases
which has a negative impact on latency.

Change-Id: If03401694c2b746b5e2111cb5daafa8eab169e29
Signed-off-by: Alex Naidis <alex.naidis@linux.com>
2020-11-03 21:30:24 +01:00
Corey Tabaka
62f386dc23 ANDROID: binder: Switch binder_deferred_lock to a spinlock.
Avoid delays in binder transactions due to preemption of
binder_deferred_func() with binder_deferred_lock held.

Bug: 66914906
Test: boots; binder tests pass; trace analysis in bug
Change-Id: I1a89ba15b27e43552890292f135a5e2d969231e2
Signed-off-by: Corey Tabaka <eieio@google.com>
2020-11-03 21:30:23 +01:00
kote
f6188b64ec Improve binder stability
Improve binder stability

Signed-off-by: kote <kote@oneplus.com>
(cherry picked from commit de863ae927163ea5ead37229f7483f08e4f2b818)

Change-Id: Ie7635b674e79c60ab237ed46ad6e120d53692dfe
2020-11-03 21:30:23 +01:00
Sultan Alsawaf
890f9ea2b8 staging: sync: Don't copy fence names by default
Copying fence debug names for frequent users of sync fences causes a
measurably significant portion of CPU time to be spent on this strlcpy.

#ifdef out the sync fence name copy by default to improve performance.

Signed-off-by: Sultan Alsawaf <sultan@kerneltoast.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2020-11-03 21:30:23 +01:00
David Lin
8860a743e9 mfd: wcd9xxx: disable slimbus register access for debugfs
This patch disables default slimbus access exposed through debugfs.

Bug: 67430947
Change-Id: Iaf1b7cdf638dbc6e6de3681b8418f1840b94ccad
Signed-off-by: David Lin <dtwlin@google.com>
2020-11-03 21:30:23 +01:00
David Lin
9643278ce2 msm: mdss: fix inconsistent mutex_lock
drivers/video/fbdev/msm/mdss_mdp_overlay.c:5280
__handle_overlay_prepare() warn: inconsistent returns
'mutex:&mdp5_data->ov_lock'

Change-Id: Iac6acb5fb84331949637258a55733b8be94690eb
Signed-off-by: David Lin <dtwlin@google.com>
2020-11-03 21:30:22 +01:00
David Lin
c56f56a251 msm: memshare: relaese mutex if req client id is not found
This fixes the smatch warning below:

drivers/soc/qcom/memshare/msm_memshare.c:570 handle_alloc_generic_req()
warn: inconsistent returns 'mutex:&memsh_drv->mem_share'.

Bug: 35898203
Change-Id: I86f3d77c9bb471b1bc26360e11e378fa3d1a3f66
Signed-off-by: David Lin <dtwlin@google.com>
2020-11-03 21:30:22 +01:00
David Lin
f0e5b9bd6f thermal: qpnp-adc-tm: release lock upon disable_chan_meas failure
This fixes the smath warning below:

drivers/thermal/qpnp-adc-tm.c:2943 qpnp_adc_tm_disable_chan_meas() warn:
inconsistent returns 'mutex:&chip->adc->adc_lock'.

Bug: 35898203
Change-Id: I149ed4868cd4754246b3b8845a0af7f1f08c0931
Signed-off-by: David Lin <dtwlin@google.com>
2020-11-03 21:30:22 +01:00
David Lin
77e86943a6 qcom: qmi: release mutex upon qmi_svc_event_notifier_register error
This fixes the following smatch warning:

drivers/soc/qcom/qmi_interface.c:2019 qmi_svc_event_notifier_register()
warn: inconsistent returns 'mutex:&temp->svc_addr_list_lock'.

Change-Id: I2ada7d79a0ac6b6a14abad0cb463af491dd1c319
Signed-off-by: David Lin <dtwlin@google.com>
2020-11-03 21:30:22 +01:00
David Lin
5c51468273 i2c-msm-v2: allow i2c_adapter to retry on arbitration lost
In case of error on lost arbitration, the host should at least attempt
to retry in case if the bus error is transient (i.e., from signal
interference or misbehaved devices). Use the default 2s timeout setting.

Bug: 35439882

Change-Id: Id9bd5a5ea764405401588220a2d2bf0fd85111f7
Signed-off-by: David Lin <dtwlin@google.com>
2020-11-03 21:30:22 +01:00
David Lin
985ceb51d2 msm_rng: fix issue with unbalanced clk_put
This patch fixes the following coccicheck errors:

msm_rng.c:335:2-8: ERROR: missing clk_put;
clk_get on line 282 and execution via conditional on line 333
msm_rng.c:335:2-8: ERROR: missing clk_put;
clk_get on line 285 and execution via conditional on line 333

Bug: 35898203
Change-Id: Id6e0854ec11f95fe2bf7f887876535e2d8e74d22
Signed-off-by: David Lin <dtwlin@google.com>
2020-11-03 21:30:21 +01:00