| Commit message (Collapse) | Author | Age |
| ... | |
| |\ \ \ \ \ \ \ \
| |_|/ / / / / /
|/| | | | | | | |
|
| | |/ / / / / /
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Inside glink_open reference for channel context is only initialized,
but additional reference is not taken. It creates the possibility of use
after free if SSR happens before glink_open function completes.
Additional reference is taken to ensure context stay valid during
glink_open, even if SSR happens.
CRs-Fixed: 2031123
Change-Id: I94650d2f937416aff33a82073c4db76fab0d0e96
Signed-off-by: Dhoat Harpal <hdhoat@codeaurora.org>
|
| |\ \ \ \ \ \ \ |
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Glink_pkt_read calls glink_queue_rx_intent without mutex lock.
This result in race condition where glink_queue_rx_intent generates
same intent id for two intents.
Mutex lock is added to avoid race condition in glink_queue_rx_intent.
CRs-Fixed: 2026579
Change-Id: Iedb9a8874193479154ebb932fa8ff80703402215
Signed-off-by: Dhoat Harpal <hdhoat@codeaurora.org>
|
| | |/ / / / / /
|/| | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Driver register doesn't have to be synchronous with probe call
back. Keep the driver registered till unregister gets called and
never reset ops during probe failure.
CRs-fixed: 2029329
Change-Id: I61331c7f33b29b0bc4833a8e4c52ee94f17660e7
Signed-off-by: Anurag Chouhan <achouhan@codeaurora.org>
|
| |\ \ \ \ \ \ \ |
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Glink will return failure if there are no intents available
at the remote endpoint. Remove the GLINK_TX_REQ_INTENT flag
so that glink returns EAGAIN error code so that apr_tal
can retry.
CRs-Fixed: 2002511
Signed-off-by: Surendar karka <sukark@codeaurora.org>
Change-Id: I494bd26ed48ea2d80b1f76c8ee871ec76d428e4c
|
| |\ \ \ \ \ \ \ \ |
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
If no matching domains found in response to the request, return error
instead of going ahead with memory allocation which would lead to
other issues.
CRs-Fixed: 2025293
Change-Id: I327b3494812cddc643f6b355c04f85f4baa7c399
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
|
| |\ \ \ \ \ \ \ \ \ |
|
| | | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
If host driver fails to probed for the first time, and SSR/PDR
get triggered, as part of PD down uevent is sent to host driver
which inturn set recovery in progress which never gets reset
and the next time on FW Ready host driver is not able
to probe successfully
To fix this add a check if driver is probed or not
before sending the uevent.
Change-Id: Idceab059821c0b0e2a8806ad9fee5b6c75aec8c7
CRs-fixed: 2027920
Signed-off-by: Anurag Chouhan <achouhan@codeaurora.org>
|
| | |/ / / / / / / /
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
If FW is down irrespective of crash, a uevent
is sent to wlan host driver to indicate FW is down.
Change-Id: I9fe2a2a11178f72ea27150d74d93a1e411eac030
CRs-fixed: 2027902
Signed-off-by: Hardik Kantilal Patel <hkpatel@codeaurora.org>
Signed-off-by: Anurag Chouhan <achouhan@codeaurora.org>
|
| |\ \ \ \ \ \ \ \ \ |
|
| | | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
After wlan host driver probe failure and driver unload check the
memory leak and reset the memory pool.
CRs-Fixed: 2027407
Change-Id: Id6e413416ec7ea1d1bf0e69aab7eccb06de753d7
Signed-off-by: Hardik Kantilal Patel <hkpatel@codeaurora.org>
|
| |\ \ \ \ \ \ \ \ \ \ |
|
| | | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
Right now all the logs are dumped to IPC log buffer but there
are some logs which are logged most often and they overwrite log
buffer where in important logs required for debugging may be
lost. Create debug and verbose log level such that logs which are
logged most often and not as important as debug logs are moved to
verbose log level.
Change-Id: Iccab3e5485700efe71ffc85dc7c5f39b0872dfb4
CRs-fixed: 2025867
Signed-off-by: Prashanth Bhatta <bhattap@codeaurora.org>
|
| |\ \ \ \ \ \ \ \ \ \ \ |
|
| | |/ / / / / / / / / /
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
Enable Hardware based auto resonance calibration for LRA
mode for PM660.
Change-Id: Ic7902ba4b8665eda2623286dd0b1c3fdeb3895e5
Signed-off-by: Ankit Sharma <ansharma@codeaurora.org>
|
| |\ \ \ \ \ \ \ \ \ \ \ |
|
| | |/ / / / / / / / / /
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
spcom_handle_lock_ion_buf_command() should decrement ref count,
that is incremented by ion_import_dma_buf().
Change-Id: Ic7f814bd2791b4dbcf6356f64ad32ee85c6cb103
Signed-off-by: Amir Samuelov <amirs@codeaurora.org>
|
| |\ \ \ \ \ \ \ \ \ \ \
| |_|_|/ / / / / / / /
|/| | | | | | | | | | |
|
| | | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
Audio_notifier_late_init registers clients dependent on PDR to
correct service if registration to PDR on init fails.
There is a possible race condition when audio_notifier_late_init
and audio_notifier_register is called at same time. This may
cause manipulation of the same lists and critical data at the
same time. Add mutex lock to protect critical data.
CRs-Fixed: 2016927
Change-Id: Iec5190a93b390d46f47fd67fd79b1b83d7fe4b29
Signed-off-by: Rohit Kumar <rohitkr@codeaurora.org>
|
| |\ \ \ \ \ \ \ \ \ \ \ |
|
| | | |_|/ / / / / / / /
| |/| | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
There is a chance that glink channel memory can be allocated multiple
times if wdsp_glink_ch_info_init() is called from multiple threads.
Avoid this scenario by protecting the private data structure.
Change-Id: I04fc19232b0f128b36a00dc1e73a3bed03664a93
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
|
| |\ \ \ \ \ \ \ \ \ \ \ |
|
| | | |_|_|_|/ / / / / /
| |/| | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
The variable cb_data is accessed from parallel threads where one thread
can free it anytime, this creates use after free scenerio.
To avoid use after free cases cb_data is freed only when kref count
goes to zero.
CRs-Fixed: 2023620
Change-Id: I74225fc61f8ede03a40ff35d2b963d90c0d4689f
Signed-off-by: Dhoat Harpal <hdhoat@codeaurora.org>
|
| |\ \ \ \ \ \ \ \ \ \ \ |
|
| | | |_|_|/ / / / / / /
| |/| | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
Explicitly clear the subsystem loading address in case of any
memory failure. It will help to avoid any platform dependency.
Change-Id: I3be8f6318d68f02c02e637fc34f4a868e9fafa45
Signed-off-by: Gaurav Kohli <gkohli@codeaurora.org>
|
| |/ / / / / / / / / /
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
This patch move qmi handle destruction in a new function which is
executed in a worker thread and PD notification is issued in
blocking call. This avoid issue of late PD notification due to
delay in qmi handle destruction.
Change-Id: I0c7efa336f7849ffde95143e3a0134ebb9e33022
Signed-off-by: Avaneesh Kumar Dwivedi <akdwived@codeaurora.org>
|
| |\ \ \ \ \ \ \ \ \ \ |
|
| | | |/ / / / / / / /
| |/| | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
Initialize the local variable 'ret' which is returned
from the function.
Change-Id: Ie82e74ce55b622db924e353a6ea98323c7642fa6
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
Signed-off-by: Odelu Kukatla <okukatla@codeaurora.org>
|
| |\ \ \ \ \ \ \ \ \ \ |
|
| | |/ / / / / / / / /
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
Client name allocated dynamically during the registration
is not freed at the time of unregistration. This is
leading to memory leak issue. This patch fixes the issue
by freeing up the client name during unregistartion time.
Change-Id: I0fe75ce71fdf0ee9a1268d52ac244047cc3413d7
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
Signed-off-by: Odelu Kukatla <okukatla@codeaurora.org>
|
| |/ / / / / / / / /
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Free previously allocated memory in case of error to avoid
memory leak.
CRs-Fixed: 2022322
Change-Id: I297bd6ee1d75c039cacf8409b324c119f1b86875
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
|
| |\ \ \ \ \ \ \ \ \ |
|
| | | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
The system runs into a "undefined instruction" error when first core waking
out of power collapse tries to wakeup a core by writing to a GIC register.
When waking out of reset, the GIC SRE bit is reset, and any accesses to the
GIC ICC registers would result in a "undefined instructions". When a first
waking out of reset writes to a console, the console task is now marked as
unnable by the scheduler. If the console task is running on a different
CPU, this would trigger a IRQ_WORK IPI to the target CPU. Since the core is
waking out of reset, its SRE bit is cleared and any access to the GIC ICC
registers results in an undefined instruction abort.
Fix by removing logging from the idle path.
Change-Id: I476d4a4d082bb115128e1f54c931558e79fec567
Signed-off-by: Mahesh Sivasubramanian <msivasub@codeaurora.org>
|
| |\ \ \ \ \ \ \ \ \ \ |
|
| | | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
PIL boot failure if happened due to memory allocation failure then skip
clearing segments as there is nothing loaded in fw region.
Change-Id: If0c09dd47941be0d9fe42496db43365ece32f3e9
Signed-off-by: Avaneesh Kumar Dwivedi <akdwived@codeaurora.org>
|
| | | |_|_|_|_|/ / / /
| |/| | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
In existing implementation, we are clearing fw region when loading fails
midway. This is not in consonance with MBA design so differentiate
between modem and other PIL modules. While at it, rectify the data type
of subsys_state in qmi_client_info as well.
Change-Id: I985456fca42346947eac24df5bf66599dcbf4c53
Signed-off-by: Avaneesh Kumar Dwivedi <akdwived@codeaurora.org>
|
| |\ \ \ \ \ \ \ \ \ \
| |_|_|_|/ / / / / /
|/| | | | | | | | | |
|
| | |/ / / / / / / /
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
spcom_device_read() should check that filp->private_data is not NULL
before using it.
CRs-Fixed: 2016948
Change-Id: I663d31e69b1f170c4a125705f1e1a1fde4ed098b
Signed-off-by: Amir Samuelov <amirs@codeaurora.org>
|
| |\ \ \ \ \ \ \ \ \ |
|
| | | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
Remove use_play_irq and use_sc_irq flags as they are not really
needed. Interrupts can be obtained and registered always. Keep
the play interrupt enabled only for buffer mode.
Change-Id: Ie530819ed18b048d43d59dd7a0dc5f73cc3a9b70
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
|
| | | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
Currently, the driver does read-modify-write to registers in so
many places. It would be better to have a masked_write API to do
this. This also needs a change in the mask definitions used in
all places where these writes are made. Also, create separate
functions that deals with a particular configuration so that they
can be reused later.
Change-Id: Ice07297b1542640e82c7adc12d323258440edb77
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
|
| | | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
Fix the order of parameters passed into read/write APIs to make
it more readable. While at it, add a pr_fmt() to the driver to
get better log information. Also, change all dev_* APIs to pr_*
APIs for better logging.
Change-Id: Ib19f48ddbaeeb3af483ac472dabb44558a6b9e43
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
|
| | | |_|/ / / / / /
| |/| | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Currently MISC_TRIM_ERROR_RC19P2_CLK register is hardcoded to
read the trim error in 19.2 MHz RC clock. However, this can be
located differently in some PMICs. Add support to read it from
misc device as this register cannot be directly accessed from
haptics driver.
Specify the MISC peripheral and the clock trim error register in
haptics for pmi8998 and pm660 so that haptics initial drive code
can be adjusted based on error code properly.
Change-Id: I04d8dbac0f943c65272531647c54d3c1495331e7
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
|
| |\ \ \ \ \ \ \ \ \ |
|
| | |/ / / / / / / /
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
As pd_locator_work failed to locate Pd service, icnss is
unable to receive the PD events so shutdown never gets scheduled
and hence PD_RESTART bit is not set, with the FW_READY event if
PD_RESTART bit is not set icnss proceed to probe the wlan driver
Add a check to validate the wlan driver status before
calling wlan driver probe.
Change-Id: I15b09063154e87fb1574d2d2f1492da2ba84da3a
CRs-fixed: 2019254
Signed-off-by: Anurag Chouhan <achouhan@codeaurora.org>
|
| |\ \ \ \ \ \ \ \ \ |
|
| | |/ / / / / / / /
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
With the change 'commit 443b19badd47 ("icnss: Trigger recovery
only if PDR enabled")', wrong condition used to check if
PD restart not enabled. Correct the condition before
sending PD restart request.
Change-Id: I0729cebeb42d2c2b8e68f210ee9065f71a30cfad
CRs-fixed: 2018631
Signed-off-by: Anurag Chouhan <achouhan@codeaurora.org>
|