This change adds mutex locks to avoid null pointer
dereference in case wpss unload is called
simultaneously from differenet threads.
Change-Id: I0d189d670976ffd6bffbbebb6ed37182d37d1fb3
CRs-Fixed: 4181357
ABC block should be disabled when encoder is being disabled to avoid
display hang when all driver clients have been closed.
Change disables ABC hardware block when encoder is disabled.
Change-Id: Idb41f5162b629ab1c0bdd85d906d9faa41f587fa
Signed-off-by: Sanskar Omar <quic_sansomar@quicinc.com>
(cherry picked from commit c011cb9be3b8763df939a3390924ccaf5a6d7c0e)
In the calculation method for TU, current code is using
pbn value which is after dsc overhead, correct it by
replacing with pbn_no_overhead.
Change-Id: I1158e32cacd04526aa69d2d2ec085548344f5b7f
Signed-off-by: Yahui Wang <quic_yahuiw@quicinc.com>
This reverts commit Ic818b40563c610918f1e4e918f598cefc5c082b2.
Reason for revert: Disable D-SMPS by default, it can be enabled via INI
when required, as was the case before.
Change-Id: Icafadc3ec82afad8971f70f17b05291646868047
CRs-Fixed: 4171036
Add PREVENT_PCI_LINK_RESUME(bit 14) in quirks to prevent
link resume, which can be used to simulate unrecoverable
PCIe link down.
It's a one-time configuration that will be cleared after
WLAN chip power off.
Usage:
echo quirks 0x4000 > /d/cnss/control_params
Change-Id: Ie497bfb7bb9d0e686599948195141fa76fb29a56
CRs-Fixed: 4180692
To avoid confusion, print xdump capabilities in following format:
<indicated>: <wl_over_bt> - <bt_over_wlan>
indicated: 1 means the capability has been set explicitly, 0 otherwise
wl_over_bt: 1 means collecting WLAN dump over BT is enabled, 0 otherwise
bt_over_wl: 1 means collecting BT dump over WLAN is enabled, 0 otherwise
Change-Id: Ib0e8bfd95ecf82e84e39513fcce8dca36ea4a997
CRs-Fixed: 4180626
Return value of qmi_txn_wait() indicates the number of bytes
decoded from QMI response.
Its caller should recognize non-negative return value as
success.
Change-Id: I04ec59c9bdd66bd14eb74440153ab7bf788cfbbb
CRs-Fixed: 4177030
Introduce the action 'xdump_bt_over_wl' for the existing
debugfs entry 'dev_boot' to facilitate the collection of
Bluetooth firmware dumps over WLAN.
Usage:
echo xdump_bt_over_wl > <debugfs_path>/cnss/dev_boot
To successfully execute this action, you must first enable
the feature 'Collect BT dump over WLAN' using the following
command and ensure that Wi-Fi remains enabled:
echo 2 > <sysfs_path>/cnss/user_config
Change-Id: I2a610e5d78e36a26af3132d6ab4ec14282efa6fd
CRs-Fixed: 4178495
During TPC power calculation, if AP advertises power constraint IE via
beacons, STA stores it and offsets it from the regulatory power limit
for that channel. But as per 802.11, this value needs to be offset from
country IE power instead. This logic causes further reduction of tx
power, hence remove the logic to offset value from power constraint IE
with the regulatory power limit.
CRs-Fixed: 4139560
Change-Id: Ie2b4ff4fb59c79c80e189e652c58f391f37cd525
In case host receive a bearer state switch request to non-WLAN
which is initiated by other modules, it moves the state to non-WLAN
without checking the status of the request.
If request was not accepted, then there is no need to change the
bearer state to non-WLAN.
Change-Id: I13f59fedab1d7de92a1c417f87cc9c94f726a8b8
CRs-Fixed: 4166198
When RX page pool buffers are forwarded by the network back to the
driver for TX, driver DMA maps the TX buffer but unmap during the
completion is skipped because the packet is still a page pool buffer.
This is leaking the IOVA address space, eventually no room will be
left for other DMA operations which results in DMA map failures.
Fix SMMU IOVA address leak in the TX completion path because of
page pool buffers.
CRs-Fixed: 4153855
Change-Id: I73468b3add2887f0093f770b1621dcc9c6054cd0
Currently in a case where only RX page pool is enabled, when RX page
pool buffers are forwarded by the network stack to the driver for
TX due to IP forwarding, it is resulting in a NULL DMA address mapping.
Since the RX page pool NBUFs have struct sk_buff::pp_recycle flag set,
driver will end up calling dma_sync_single_for_device() for taking
care of the cache ops in the transmit direction. When TX page pool
feature is not enabled, NULL DMA address will be passed to the
dma_sync_single_for_device() API resulting in assert.
Check the status of TX page pool feature before invoking
dma_sync_single_for_device() to fix this issue.
CRs-Fixed: 4145181
Change-Id: I8ddb8f020d9a9d9fe6d8d969a58ecbcad7b52062
(cherry picked from commit cb44c3edd5)
Use PE session channel width for peer association.
Validate and update any invalid channel width to
the maximum supported value.
Change-Id: Iac2b8368a0c51d2847786252a94212a08d6f7191
CRs-Fixed: 4161351
Check for potential overflow before using the ALIGN macro,
as it is not overflow-safe.
Change-Id: Iffa1b7a01a9e072fb748c93f6625d0f1a163d0f8
Signed-off-by: Anandu Krishnan E <quic_anane@quicinc.com>
(cherry picked from commit 96a6c4a8768f73ba9041c15511f0d5888507c8f4)
(cherry picked from commit 3a674559cd2e1ec5e04de8510d5bb3c60d8f9ad5)
Thread1 initiates fastrpc_req_mem_map and creates a map with a
reference count of 1. Meanwhile, Thread2 calls fastrpc_get_args,
and if take_ref is false, and it finds the same map with a
same reference count of 1. Subsequently, Thread1 encounters a failure
and triggering fastrpc_map_put, which decreases the reference count
and frees the map. However, Thread2 continues to use the map, leading
to issues because the map is already freed.
Change-Id: Ie7f58852d9e2d6b3655cf4a6ab45e8701aa46f87
Signed-off-by: Kaival Prajapati <quic_kaivpraj@quicinc.com>
(cherry picked from commit 92ac13b0ae)
Add range validation in wcd939x_xtalk_put() and wcd939x_xtalk_get()
to prevent out-of-bounds array access. The functions now return an
error if the provide index is outside the valid range.
Change-Id: I3975a6af8cddd73f7b1a9a6bd8bc1b3328977735
Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com>
During SAP CSA from DFS freq to Non-DFS freq, STA connect happens,
will try to move SAP out of DFS freq too, return failed for channel
switch in progress.
To void it, if found DFS SAP in channel switch in progress state,
wait for channel switch finished.
Change-Id: Icd6abf35a8243ec518dd1fb9d7b24198e262b73a
CRs-Fixed: 4170205
With the introduction of kernel version 6.13, the init_dummy_netdev
symbol has been made static and is no longer exported. Consequently,
drivers must now utilize alloc_netdev_dummy() to allocate and
initialize dummy network devices.
The current implementation defines the net_device structure as a
static instance within the driver. However, since alloc_netdev_dummy()
dynamically allocates and initializes the dummy netdev, assigning its
return value to a statically defined structure is incorrect and leads
to undefined behavior.
To address this, a pointer to a net_device structure should be added to
the host context. The driver should store the pointer returned by
alloc_netdev_dummy() in this new member. Additionally, appropriate
cleanup logic must be implemented to free the allocated dummy netdev
during driver teardown.
Change-Id: I1d234d003e3ba99e0d91727a09c228ec1a3822c4
CRs-Fixed: 4158403
With the introduction of kernel version 6.13, the init_dummy_netdev
symbol has been made static and is no longer exported. Consequently,
drivers must now utilize alloc_netdev_dummy() to allocate and
initialize dummy network devices.
The current implementation defines the net_device structure as a
static instance within the driver. However, since alloc_netdev_dummy()
dynamically allocates and initializes the dummy netdev, assigning its
return value to a statically defined structure is incorrect and leads
to undefined behavior.
To address this, a pointer to a net_device structure should be added to
the host context. The driver should store the pointer returned by
alloc_netdev_dummy() in this new member. Additionally, appropriate
cleanup logic must be implemented to free the allocated dummy netdev
during driver teardown.
Change-Id: I8eda57fd3ece411579f2d3eb2f1249c2905bbeac
CRs-Fixed: 4158431
In non-DBS HW, starting SAP on the same channel as NAN will fail.
To fix this, When checking the availability of the channel used to
start SAP, NDI and NAN Discovery should not be considered as home
channel, they do not interfere with SAP startup.
Change-Id: If14018a3519443e807de37e74a86bb3c25b3589c
CRs-Fixed: 4123320