Commit Graph

72443 Commits

Author SHA1 Message Date
cheese Service
c5925b09c8 Merge "msm: camera: isp: Fix incorrect bound check for ife out resource id" into camera-kernel.lnx.7.0 2024-07-26 02:35:29 -07:00
Anuj Khera
acef017b76 cnss2: Add support to check if IPA and WLAN share common dma pool
Add support to check if IPA and WLAN share a common dma pool
and based on that take descision to map the rx buffers or not
in IPA use case scenarios

Change-Id: I5d684db1cffc9f04b962cf7bdf0305b7d5e1df23
CRs-Fixed: 3878739
2024-07-25 16:38:52 -07:00
QCTECMDR Service
9721a792a0 Merge "video-driver: Made changes as per encoder configuration review" 2024-07-25 10:54:20 -07:00
Kaushal Sanadhya
cfe7735d45 kgsl: Enable AHB timeout detection for gen_8_3_0
Define noc_timeout_us for gen_8_3_0 GPU to enable AHB timeout detection.

Change-Id: I421c10b0cf5bb4b2b7b9e37f87ed0cf602b59f9a
Signed-off-by: Kaushal Sanadhya <quic_ksanadhy@quicinc.com>
2024-07-25 04:17:57 -07:00
Nijun Gong
bbf4e9cd00 cnss2: wait and cancel dms work before dms deinit
During cnss unload or error quit, cnss_dms_deinit() is called to
perform dms client deinit. When dms sever quit, modem also send event
to cnss to schedule dms client restart with dms_del_server(). The two
processes are asynchronous so qmi_handle_release() may be entered
twice and cause qmi->sock to be used after free.

To avoid this race condition, call cnss_cancel_dms_work() before
cnss_dms_deinit() to guarantee the two processes not run concurrently.

Change-Id: I291c1d0bdead190549dcbbb2c4b7aa65a68196d7
CRs-Fixed: 3875961
2024-07-25 04:09:49 -07:00
sarath varma ganapathiraju
0dbde6cfa3 asoc: lpass-cdc: disable clk when they are enabled
Check if clk is enabled before disabling it to avoid
warning log during adsp SSR.

Change-Id: I916af6f9efacfe3d08e0b05dcc0c6023944369d2
Signed-off-by: sarath varma ganapathiraju <quic_ganavarm@quicinc.com>
2024-07-25 03:23:52 -07:00
Gururaj Pandurangi
97f3bdc18e qcacmn: Modify length check for vendor IE in prb rsp parser
Reduce the OUI length to 2 bytes for vendor IE to include
just the OUI and the type and omit the body as it is not
mandatory.

CRs-Fixed: 3842063
Change-Id: I42f1b2d6c57da82f859b9917a1e5229273f75263
2024-07-25 02:27:56 -07:00
QCTECMDR Service
cfd8b01ad3 Merge "dsp-kernel: Handle memory leak in fastrpc file free" 2024-07-25 02:06:23 -07:00
Akash Gajjar
841bca1984 disp: msm: sde: enable uidle support for milos target
This change enables the uidle feature support for milos target.

Change-Id: I3f8633b623d69467010639b48e47a2455f64c55b
Signed-off-by: Akash Gajjar <quic_agajjar@quicinc.com>
2024-07-24 22:53:46 -07:00
QCTECMDR Service
f60913a38d Merge "qcedev: fix UAF in qcedev_smmu" 2024-07-24 20:42:23 -07:00
QCTECMDR Service
7b4afec1e5 Merge "securemsm-kernel: smcinvoke: Decrement the server object ref count in mutex context" 2024-07-24 18:26:23 -07:00
Surya Prakash Sivaraj
fa75e6cc25 qcacmn: Add scan utility to get BV ML IE
Add a scan utility to get the basic variant ML IE
from the scan entry.

Change-Id: I741665ea7ca0d99014e37bddda50ae4eaa334b33
CRs-Fixed: 3857501
2024-07-24 06:59:34 -07:00
Ravindra Konda
d2812c25e5 Release 5.2.1.92M
Release 5.2.1.92M

Change-Id: Idf66dbeb8dd85d19d3d997c05bcad72c52fc16f1
CRs-Fixed: 774533
2024-07-24 06:58:48 -07:00
Surya Prakash Sivaraj
20838d9db3 qcacld-3.0: Do not send ML-probe to non-ML AP
This change reverts the hard-coded downgrade of non-ML
APs to 11ax from I9471c5b211f9480877c9c2475eaef93071b82734.

Instead, do not send ML-probe or ML IE in assoc request, if
the AP does not support MLO. This keeps the connection as
11be.

Also, cleanup the unused variables in bss description and
keep it 4-bytes aligned.

Change-Id: I1aa681ecce04615f88d563c07d9c7e2ef10c1b92
CRs-Fixed: 3857042
2024-07-24 06:58:47 -07:00
QCTECMDR Service
beff0c7ec3 Merge "asoc: update curr_micbias2 val with mb->micb2_mv" 2024-07-24 00:59:52 -07:00
QCTECMDR Service
b030905bec Merge "asoc: codec: wcd9378: increase delay for gpio reset" 2024-07-24 00:59:52 -07:00
QCTECMDR Service
b1ab81cc12 Merge "asoc: add logs for KPI test" 2024-07-24 00:59:52 -07:00
Ravindra Konda
d752daae23 Release 5.2.1.92L
Release 5.2.1.92L

Change-Id: I5888829e9278db916cd0bfec54621533ca8d209d
CRs-Fixed: 774533
2024-07-24 00:58:14 -07:00
Vijay Raj
6b467392ce qcacld-3.0: Add band check to differentiate between AP types during roaming
In the api cm_roam_mgmt_frame_event(), the received frame info
is differentiated between legacy and MLO AP on the basis whether
the current vdev is a ML vdev or not. This results in undesired
logging of result during MLo to legacy AP roam failure case as
the vdev is still the ML vdev as it is maintaining the current
connection with the ML AP while the frame info data received
from FW is for legacy AP.

Add a band check when processing the roam frame info data
received from the FW as band info in roam frame data follows
the following format:
1. 0: if the FW tried to roam to a legacy AP
2. when tried to a MLO AP, it will represent the link it forms
   association. The format as follows:
   * BIT 0: When it is associated on 2 GHz link
   * BIT 1: When it is associated on 5 GHz link
   * BIT 2: when it is associated on 6 GHz link

Change-Id: I7854ef368776ba11d4cdc8aca28ac86c8c2f4efa
CRs-Fixed: 3866223
2024-07-24 00:58:13 -07:00
Srinivas Dasari
ba77f5622c qcacld-3.0: Send only CHAN_LIST to fw when FCC command is received
Currently, host driver updates the corresponding
info(6 GHz band disable/enable) to regulatory when the DRIVER
cmd SET_FCC_CHANNEL is received. It also updates the complete
RSO_CONFIG to firmware as band has changed. Firmware roaming
state machine gets restarted as all RSO params got updated.
But there is no need to update the complete RSO config as only
band has changed. This can avoid firmware roaming restart.

So, send only CHAN_LIST to fw when SET_FCC_CHANNEL command is
received.

Change-Id: I209ba1f50ec1e08767ab7384cc266864d412f523
CRs-Fixed: 3871985
2024-07-24 00:58:08 -07:00
Gaurav Jindal
10386fd4da msm: camera: isp: Get valid csid id
This change helps to get valid csid id incase
of any IFE is disabled and accessing csid hw caps
with the help of csid id.

CRs-Fixed: 3863667
Change-Id: I57ff8acaaf15b347a69883a54937376843fcd848
Signed-off-by: Gaurav Jindal <quic_gjindal@quicinc.com>
Signed-off-by: Karthik Dillibabu <quic_kard@quicinc.com>
2024-07-24 11:49:34 +05:30
Atiya Kailany
5fe2c8d7e8 msm: camera: core: Add buffer length check to prevent overflow
Previously, context user dumps lacked sufficient checks, risking
buffer overflows. Added length checks for dump headers to ensure
enough buffer space before copying header and exact data from
all kinds of request lists.

CRs-Fixed: 3846871
Change-Id: I02d01af54c9985e5642c31b979c0590494fd5775
Signed-off-by: Atiya Kailany <quic_akailany@quicinc.com>
Signed-off-by: Haochen Yang <quic_haocyang@quicinc.com>
2024-07-23 22:53:39 -07:00
jinguiw
d3fa7f131d msm: camera: ope: check cpu buffer offset and cmd buf idx
No check for cpu buffer offset, which may lead to out of cpu buffer
map. No check for cmd buffer index, which may lead to out of bound
or negative index. Adding check for cpu buffer map offset and
adding check for cmd buffer index.

CRs-Fixed: 3864084
Change-Id: I39494b0a9f323cb5569d37a0c033b2eaf8fbd32c
Signed-off-by: jinguiw <quic_jinguiw@quicinc.com>
2024-07-23 22:51:52 -07:00
Li Sha Lim
78b92d2c5a msm: camera: isp: Fix incorrect offset validation in __cam_isp_ctx_dump_event_record
sizeof(struct cam_isp_context_dump_header) only accounted for once
instead of num_entries times for minimum offset needed when dumping
event record of isp context.

CRs-Fixed: 3865205
Change-Id: I6db25ba2dc4022c2582493aadc4875f9bf9ddb62
Signed-off-by: Li Sha Lim <quic_lishlim@quicinc.com>
2024-07-23 22:50:36 -07:00
jinguiw
ca7146fbc8 msm: camera: icp: io buf config num validation
There are only limitations for CAM_BUF_IN and CAM_BUF_OUT in
config validation, but there will be CAM_BUF_IN_OUT type also.
In process io config, both CAM_BUF_OUT and CAM_BUF_IN_OUT types
are in out_map_entries. No limitation for CAM_BUF_IN_OUT will
lead to out of bound for out_map_entries. This change adds check
for num of io config need in out_map_entries to avoid
out of bound risk.

CRs-Fixed: 3857308
Change-Id: I69163a4264d226d617cbe4f37ba1deb4e6434e31
Signed-off-by: jinguiw <quic_jinguiw@quicinc.com>
2024-07-23 22:48:45 -07:00
Haochen Yang
065d3b2d85 msm: camera: icp: Add checking for invalid index
This change adds extra checking for frame_info_idx to
avoid accessing invalid items in the array.

CRs-Fixed: 3863925
Change-Id: I9f2350aa7d3da35108d26e50ed5198255fc4237a
Signed-off-by: Haochen Yang <quic_haocyang@quicinc.com>
2024-07-23 22:46:36 -07:00
Li Sha Lim
46d5fc4132 msm: camera: isp: Fix incorrect offset validation in __cam_isp_ctx_dump_in_top_state
Each call to cam_common_user_dump_helper consumes
sizeof(struct cam_isp_context_dump_header) in memory.
Currently, this check is not accounted before each call
to common user dump is made in this function. This change fixes it.

CRs-Fixed: 3864098
Change-Id: I66cab5055b085660fb15ff25707fa4ae97403740
Signed-off-by: Li Sha Lim <quic_lishlim@quicinc.com>
2024-07-23 22:44:12 -07:00
Nirmal Abraham
12886c36c4 msm: camera: jpeg: Avoid UAF in jpeg driver
The cam_mem_cpu_put_buf function called immediately after
cam_jpeg_add_command_buffers can cause UAF. To avoid this,
get the in_out param reference in jpeg enc bottom half
and update the out size param.

CRs-Fixed: 3848801
Change-Id: Ib484ad388f0dd356a481a7fede40b9898f713c63
Signed-off-by: Nirmal Abraham <quic_c_nabrah@quicinc.com>
2024-07-23 22:33:54 -07:00
Ravindra Konda
5dfa8db1b5 Release 5.2.1.92K
Release 5.2.1.92K

Change-Id: I33a7d6b9614d0ccb9a66df6409eb202c7a69360d
CRs-Fixed: 774533
2024-07-23 21:46:50 -07:00
Jinwei Chen
14f566eeb2 qcacld-3.0: Fix invalid dp_intf accessing when delete dp_vdev
scenario:
(1) P2P GO interface is getting down, dp_intf is deleted.
(2) dp_vdev has not been freed as it's waiting peer_unmap
for self bss peer.
(3) once host received peer_unmap, bss peer get freed and
trigger dp_vdev deleting, the callback vdev->vdev_del_notify
will try to access dp_link->dp_intf->dp_ctx, invalid dp_intf
is used.

Get dp_ctx by dp_get_context() as dp_intf might be invalid already
when dp_vdev deleting happen.

Change-Id: I8c36b124d11f7fd8acaeb066e08865092ad02ab2
CRs-Fixed: 3866027
2024-07-23 21:46:49 -07:00
Ramesh Nallagopu
73d3d93c95 dsp-kernel: Handle memory leak in fastrpc file free
fastrpc file free return if session context is NULL. PM QOS request
memory free doesn't happen before this return, which leads to memory
leak. Do memory cleanup to handle this scenario.

Change-Id: I819ba74a7a0b3e2974df552fad8aca55a892df87
Signed-off-by: rnallago <quic_rnallago@quicinc.com>
2024-07-23 14:28:57 +05:30
Daniel Perez-Zoghbi
7bf467d930 qcedev: fix UAF in qcedev_smmu
External researcher found UAF in qcedev_smmu.c on an error condition in
qcedev_check_and_map_buffer. When an error occurs, we free binfo, but it
is still kept in the registeredbufs list. The fix removes it from the
list before freeing binfo.

Change-Id: I0327e456bd46106b12c36a5a21305407aae428dd
Signed-off-by: Daniel Perez-Zoghbi <quic_dperezzo@quicinc.com>
2024-07-22 21:03:04 -07:00
Yu Wu
877e934a3a disp: msm: dp: park link clock before disconnecting
In DP simulation mode, DP link clock's parent is driven
by usb pll clock, in case usb is disconnected during
DP simulation, those registers driven by DP link clock
cannot be accessed any more. In that case, put xo clock as
DP link clock's parent to keep the registers driven by
link clock still be accessible.

Change-Id: I2bbe6b92052284c7825f80348818d00557312a10
Signed-off-by: Yu Wu <quic_zwy@quicinc.com>
2024-07-23 10:27:36 +08:00
Ravindra Konda
d74498c278 Release 5.2.1.92J
Release 5.2.1.92J

Change-Id: I6613533dd91c02d03258c4425d9480edc9a8c360
CRs-Fixed: 774533
2024-07-22 02:36:45 -07:00
Asutosh Mohapatra
706918edc7 qcacld-3.0: Enable Adrastea compilation on parrot66
Make changes to enable Adrastea compilation for
parrot66 target.

Change-Id: Idc388f545e45ea0b9b2a40a0fd2cbc0987108a1a
CRs-Fixed: 3870247
2024-07-22 02:36:45 -07:00
Linux Build Service Account
110735449b Merge dfcbf74486 on remote branch
Change-Id: I96fff508d542c4c14459f122b4cfd1e1b5ea174e
2024-07-21 23:15:43 -07:00
Linux Build Service Account
ec377a993b Merge 06c05ba719 on remote branch
Change-Id: I8db32ae2d34eb3cb03f63fa319223245a2b0ab9a
2024-07-21 22:51:39 -07:00
Linux Build Service Account
57edf8f3e7 Merge ace5a84ff5 on remote branch
Change-Id: Ib5312cdd620bce864522ff334efcd8f48fb4f838
2024-07-21 22:40:20 -07:00
Linux Build Service Account
d0aff24e75 Merge 65c163e410 on remote branch
Change-Id: I5437d3a0aeaf620754c37ed002df40944235a253
2024-07-21 22:39:48 -07:00
Linux Build Service Account
add9bd398a Merge 1ee56f827d on remote branch
Change-Id: Ic1731aa97cad1bbf906b3bb4b240de14dcdab0dd
2024-07-21 22:37:46 -07:00
Linux Build Service Account
7dc8e0970b Merge 2fc88a6251 on remote branch
Change-Id: Ideb5a320eeb09f9d8225b6eefa6f7d92790705f0
2024-07-21 14:13:11 -07:00
Linux Build Service Account
abeb53d57f Merge 3b8457d528 on remote branch
Change-Id: I2fc29052582df98932b286598b4661931a9d7c94
2024-07-21 14:12:19 -07:00
Linux Build Service Account
7ade50ae5e Merge 3a2c76c725 on remote branch
Change-Id: I8e3fa9b83a9fefcb3bdf0b8996cb2afb80f51a5e
2024-07-21 14:11:52 -07:00
Linux Build Service Account
e7a27480ae Merge 77a6dfc4b3 on remote branch
Change-Id: I8074574c54da25c23d05a01958c15326d19e1a06
2024-07-21 14:09:55 -07:00
Linux Build Service Account
6997e9f06a Merge c6727cbd55 on remote branch
Change-Id: I39aab1046f06748a70979cca24cef8b8f764515c
2024-07-21 14:07:50 -07:00
Linux Build Service Account
1351c18d6f Merge f608c16908 on remote branch
Change-Id: I86a911ca7563df7b48ffa2c7223f543ca1ffe055
2024-07-21 14:03:28 -07:00
Linux Build Service Account
e157a88674 Merge 872c22a405 on remote branch
Change-Id: I560b054cc54c2af5c570bc6cfa984eedd6338cce
2024-07-21 14:03:00 -07:00
Linux Build Service Account
aef65998bd Merge 0f8a1943ec on remote branch
Change-Id: Ic054b9a0db222f2aa0f74a4a605851ff1878bee7
2024-07-21 14:01:10 -07:00
Ramesh Nallagopu
1145bbef01 dsp-kernel: Fix to use copy from user for compat invoke user pointers
When allocating context to copy the compat invoke call arguments data,
it incorrectly treats compat invoke call arguments as kernel memory,
leading to exceptions. The fix is to recognize them as userspace pointers.

Change-Id: I336b33156498103d3c3591768be98e0c105dda89
Signed-off-by: rnallago <quic_rnallago@quicinc.com>
2024-07-19 23:24:05 +05:30
Gangadhar Kavalastramath
19a817e565 cnss2: Update the wlan fw name for Genoa
Since PCIE Genoa has separate wlan fw patch for
mission mode(amss.bin) and ftm mode(genoaftm.bin),
but cnss2 platform driver always try to load amss.bin,
which is not feasible. So add this new interface for
cnss2 to get correct driver mode and update the fw
patch name.

Change-Id: I00ef2586dbbf3f732026a0487d240950ccc0a0af
CRs-Fixed: 3864574
2024-07-19 05:24:15 -07:00