In some scenario before enabling the WDI pipe setup QUOTA monitor
command sending to uC which leading to NULL pointer access.
So adding changes to setup uC event from connect wdi API and sending
set QUOTA monitor and BW monitor commands to if uC setup event
ring completed.
Change-Id: I82e27d58b0ba153e5139cf9b4d849edafd979bc4
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
Adding changes to avoid unclocked access in shutdown notifier.
Increasing the IPA clock vote before saving the IPA registers.
Signed-off-by: Sivakanth vaka<svaka@codeaurora.org>
Adding changes to avoid unclocked access in shutdown notifier.
Increasing the IPA clock vote before saving the IPA registers.
Signed-off-by: Sivakanth vaka<svaka@codeaurora.org>
Clear IEOBs as part of CH stop for channels with MSI IRQ type
Change-Id: I7b9af7f385b0876fc2f43314bd3588110911a021
Acked-by: Nadav Levintov <nadav@qti.qualcomm.com>
Signed-off-by: Sivan Reinstein <sivanr@codeaurora.org>
In SSR scenario while teardown the pipe there could be possibility to
receive the UL data to avoid queuing the data checking for disconnect
InProgress flag.
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
Change-Id: I73397e51e6e7affae71313d08356f809788db484
Adding changes to avoid unclocked access in panic notifier.
Increasing the IPA clock vote before saving the IPA registers.
Change-Id: Ie055ffa844df45b8a65603190495bc2d1cc3f84a
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
In SSR scenario while teardown the pipe there could be possibility to
receive the UL data to avoid queuing the data checking for disconnect
InProgress flag.
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
Change-Id: I73397e51e6e7affae71313d08356f809788db484
In some cases for updating the return code in SCRATCH register taking
time after raising the global interrupt. Adding changes to wait for
some time read the SCRATCH register again and also printing the
test bus registers and Q6 channel state in failed scenario.
Change-Id: I4112a2290739daa79629f718d9725258518aba4c
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
In suspend scenario while checking channel empty scenario
updating the event ring RP pointer from direct register, it
may cause mismatch in reading in polling context. To avoid
discrepancy reading RP pointer DDR location.
Change-Id: Ie198ea9ace033e31463acd974f10dccdcac45c55
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
Add GSI profiling stats data and the GSI FW version to debug fs.
Change-Id: I5749339f5ec9656e636a512668025bb09a97a3ec
Acked-by: Nadav Levintov <nadavl@qti.qualcomm.com>
Signed-off-by: Sivan Reinstein <sivanr@codeaurora.org>
configure the HOLB timer value to zero in SSR scenario to avoid
USB stall issue.
Change-Id: I23f91c4a2bff2cb3b330d4354e81acc9460d1936
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
configure the HOLB timer value to zero in SSR scenario to avoid
USB stall issue.
Change-Id: I23f91c4a2bff2cb3b330d4354e81acc9460d1936
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
For wdi channels we have different logic to moniter
channel health as compared to gpi channels. Now
adding changes on existing channel stats api to
capture health for wdi channels.
Change-Id: Ice99e5aee40e3cc30545d2dfd95d6e85007d8c9d
Signed-off-by: Piyush Dhyani <pdhyani@codeaurora.org>
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
After configuring WLAN CONS ep or USB ep there is a chance
of IPA hardware stall, if WLAN ep or USB ep is not pulling
data fast enough. So, set holb on WLAN CONS ep and USB CONS
ep to avoid stall.
Change-Id: I370165ce197181eaac999df2d8abea517c9e9bd4
Signed-off-by: Piyush Dhyani <pdhyani@codeaurora.org>
Use read memory barrier before reading event from event ring.
Since ring is shared resource between IPA h/w and IPA driver
dma_rmb is used to ensure memory write is complete before
reading from driver.
Change-Id: If2b86ee1acecbdfc75beb327eb60f876e6915d8f
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
Observing use after free issue during teardown WAN pipe if we
receive the incoming packet. Adding check channel in right state
before access base address.
Change-Id: I29a611693b78637811fe45abea93d9ed3e6f54e5
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
While handling the suspend interrupt due aggregation timeout
possible to IEOB interrupt will be delayed. To handle this
scenario adding changes to decrement clock in delays work queue.
Change-Id: I4b9afebf5a9582f6c94aa5a9cd2eb0904b7171b8
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
After halt command timeout verify return code to check command
operation completed or not. If return code success continue further
otherwise return error.
Change-Id: I07ac56d5200163d7d1f8087ce807cd6cd4ebcebc
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
We observe the IPA RX stall due to the DEAGGR_ERR_IRQ
of PACKET_SIZE > FRAME_SIZE on WAN PROD pipe.
In IPA, some of de-aggregation error handling checks
are dependent on the syspipe_err_detection config bit.
Adding IGNORE_MIN_PKT_ERR bit for WAN PROD as well based
on recommendations.
Change-Id: Ie0fe8f52a1e63750e3db7f2b3fcf42790505fa88
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>