Fix use-after-free of rt_tbl in __ipa_del_flt_rule
by checking if the rt_tbl is already freed.
Change-Id: I09541f65f474dc42f262c603d99f6bbcbb0ce8ec
Signed-off-by: Goutam Bose <gbose@codeaurora.org>
There is a chance that incoming skb can is NULL in TX direction.
Add proper check to avoid any NULL ptr access issue.
Change-Id: I8bd4524e20ddefb4bd30a3ca4a09b65370b9b4ae
Signed-off-by: Praveen Kurapati <pkurapat@codeaurora.org>
Add changes to check if rmnet_ctl support present
or not.
Change-Id: Ic99811ffcedbe474eeb80637e61901b55e448372
Signed-off-by: Praveen Kurapati <pkurapat@codeaurora.org>
Quota indication is not yet supported on WLAN Iface.
Add check to return if the request comes for WLAN Iface.
Change-Id: Ib183d0ed21a87f6f759af8d4e5bc4093dffd9374
Signed-off-by: Praveen Kurapati <pkurapat@codeaurora.org>
In some cases GP_INT1 interrupt not receiving even GSI FW send the
interrupt. In those cases cases reading the flow control command return
code to check completion.
Change-Id: I329550ab94af9caac870c6050761d3701f0517cd
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
Caller function passing the constant value converting to int
pointer will cause the problem. Adding changes to use right casting
to avoid compilation issue.
Change-Id: I8440f16e4e53e0788c2d1eae35f4b6ebf3178ead
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
Updated the pointer type cast with valid data type.
Change-Id: Ibd1f87eab0aac78551f307534508cfa84eae988a
Signed-off-by: Raghavendar rao l <rlomte@codeaurora.org>
With u16 variable not fitting the higher ring size. So
adding changes to change ring type to u32.
Change-Id: I8443508fee8eb5180d5300611bc01bc4df68bcbd
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
With u16 variable not fitting the higher ring size. So
adding changes to chnage ring type to u32.
Change-Id: Ib16e2426071c642f7e25beb022661dfa914cd0c4
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
For some targets lowlat support is not present.
Add changes to check if low lat support is present
or not. Also for 32-bit targets observed count shift error.
Added proper checks to overcome the issue.
Change-Id: Iab3b7d460b48ce8ff4e98da297eb2e7b69e3db13
Signed-off-by: Praveen Kurapati <pkurapat@codeaurora.org>
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>
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>
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>
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>