Commit graph

874,516 commits

Author SHA1 Message Date
Elliot Berman
bbf72fdcb6 firmware: qcom_scm: Use qtee_shmbridge if available
Secure world imposed that buffer exchanges between secure and non-secure
worlds be allocated from qtee_shmbridge, so add a function to allocate
buffer space using shmbridge for extra arguments. Change helps in
dealing with early scm calls when the driver is not initialized.

Change-Id: I270b4aef9d33ec6d7ea0897ddcc0944ac9e1833f
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
2019-11-19 22:45:36 -08:00
Siddharth Gupta
4d0fbd6baf firmware: qcom_scm: Merge qtee_shmbridge and qcom_scm
Merge qtee_shmbridge and qcom_scm drivers into a single compilation unit.

Change-Id: Icfbf7c335fc8d9468236cdc08dfda52fa563be40
Signed-off-by: Siddharth Gupta <sidgup@codeaurora.org>
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
2019-11-19 22:45:36 -08:00
Elliot Berman
29f1d94ad1 firmware: qcom_scm: Rename -64 -> -smc, remove -32
- Rename qcom_scm-64.c to qcom_scm-smc as it supports SMC-based calling
  conventions for 32 and 64-bit targets
- Remove qcom_scm-32.c as it has been superceded by qcom_scm-smc.c
- Update Kconfig to select QCOM_SCM_TRANSPORT_SMC on ARM and ARM64
  targets

Change-Id: Iae94a73e0c7cefb9a253230212d01f6126cd0c15
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
2019-11-19 22:45:36 -08:00
qctecmdr
2e0893d913 Merge "soc: qcom: Add Kconfig dependency for SENSORS_SSC" 2019-11-19 16:50:03 -08:00
qctecmdr
40bc59439e Merge "msm: adsprpc: fix compilation errors in fastrpc driver on lahaina" 2019-11-19 16:10:53 -08:00
Bojun Pan
f7b08d17f7 msm: ipa: replace dma_zalloc_coherent()
dma_zalloc_coherent() is no longer needed and get deprecated as it has
no users because dma_alloc_coherent() already zeroes out memory for us.

Change-Id: Ibd49d7afce8caaa7b2b6aed61884b307674f9a59
Signed-off-by: Bojun Pan <bojunp@codeaurora.org>
2019-11-19 10:38:48 -08:00
Jun-Hyung Kwon
22c4526d07 soc: qcom: Add Kconfig dependency for SENSORS_SSC
SENSORS_SSC module is dependent on the SSR subsystem
so, update Kconfig dependency details.

Change-Id: Iaba55723485d038c11931ac8914665af35a26a3e
Signed-off-by: Jun-Hyung Kwon <junhyung@codeaurora.org>
2019-11-19 10:14:09 -08:00
qctecmdr
853c797061 Merge "iommu/arm-smmu: Fix atomic domain attribute check" 2019-11-19 09:21:04 -08:00
qctecmdr
210912b3d0 Merge "clk: qcom: gcc: Fix num_parent count for gcc_usb3 clk init data" 2019-11-19 08:47:09 -08:00
qctecmdr
5c4ea15131 Merge "ASoC: core: add debug log for cpu dais" 2019-11-19 08:12:42 -08:00
qctecmdr
127294a128 Merge "ASoC: msm: Add compressed TX and passthrough support" 2019-11-18 21:08:04 -08:00
qctecmdr
9b94944cd7 Merge "firmware: qcom_scm: Support SCM calls before qcom_scm probe" 2019-11-18 20:10:14 -08:00
qctecmdr
87e461a5b0 Merge "firmware: qcom_scm: Enable legacy convention in qcom_scm-64.c" 2019-11-18 19:35:17 -08:00
qctecmdr
6b47d58c25 Merge "firmware: qcom_scm: Merge legacy and SMCCC conventions" 2019-11-18 19:01:22 -08:00
qctecmdr
20b5b6d1ce Merge "firmware: qcom_scm-32: Add device argument to atomic calls" 2019-11-18 18:26:09 -08:00
Edgar Flores
7861f442de msm: adsprpc: fix compilation errors in fastrpc driver on lahaina
Update APIs used in fastrpc driver according to the new function
signatures on the Lahaina branch.

Change-Id: I979e116ab7e7019e4f17e84f1672f6c8bb30e2e8
Signed-off-by: Edgar Flores <edgarf@codeaurora.org>
2019-11-18 17:58:58 -08:00
qctecmdr
ec7edb6fa6 Merge "firmware: qcom_scm-32: Create common legacy atomic call" 2019-11-18 17:54:15 -08:00
Isaac J. Manjarres
008a22d3e9 iommu/arm-smmu: Fix atomic domain attribute check
When checking if a domain is a atomic or not, the driver code
will take the bitwise AND of the 64-bit domain attributes field
and a bitmask with bit 32 set. This value is then implicitly cast
to an int, which truncates the upper 32 bits--losing the bit
that indicates if the domain is atomic or not--and based on
that int, we determine if the domain is atomic, which will
vacuously be false.

Instead, check if the bitwise AND operation yields a non-zero
value when determining if a domain is atomic or not to prevent
any truncation errors.

Change-Id: I96753035b47b848bc4d1e8029c8f3f46e03f8c67
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
Signed-off-by: George Shen <sqiao@codeaurora.org>
2019-11-18 17:26:51 -08:00
qctecmdr
76465eebbb Merge "msm: ipa: Added an option to enable NAPI in 11ad" 2019-11-18 15:26:20 -08:00
qctecmdr
fcea949d55 Merge "msm: ipa3: Fix to memory allocation failure" 2019-11-18 14:51:15 -08:00
qctecmdr
31d355bad1 Merge "msm: ipa: add a thin parsing option for status packets" 2019-11-18 14:16:16 -08:00
qctecmdr
0550e27090 Merge "firmware: qcom_scm-32: Fill SMCCC register in qcom_scm_call" 2019-11-18 13:40:15 -08:00
Amir Levy
207c5a6707 msm: ipa: add a thin parsing option for status packets
In the LAN rx data path the status packet was parsed twice
but in the second time it parsed not all the info was needed.
So we added a function that is tailored for that scenario
to improve performance.

Acked-by: Tal Gelbard <tgelbard@qti.qualcomm.com>
Change-Id: I8a1755ba62cee4147941b5949c2b223fe76415b2
Signed-off-by: Amir Levy <alevy@codeaurora.org>
2019-11-18 14:50:26 +02:00
Amir Levy
b4a0d6f786 msm: ipa: Added an option to enable NAPI in 11ad
Added a flag in the 11ad driver to indicate if NAPI is
enabled in the LAN RX Datapath. In case the flag is true
the 11ad driver will now use napi_gro_receive instead of
netif_rx_ni, meaning the GRO feature is also enabled
with this change.

Acked-by: Tal Gelbard <tgelbard@qti.qualcomm.com>
Change-Id: I5c6cb3e08c29c4b79cdcbc9e4d3acb485156a607
Signed-off-by: Amir Levy <alevy@codeaurora.org>
2019-11-18 11:12:30 +02:00
Meng Wang
4eb38d792f ASoC: core: add debug log for cpu dais
Add debug log to show which CPU dai is not registered
during bootup.

Change-Id: Ia6324edec64ff6e7ee08a0b292259c8ffb70d20e
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2019-11-18 15:55:10 +08:00
Ashok Vuyyuru
c210ced674 msm: ipa4: Update mask and shift values for aggr force close register
Because of not updated mask and shift value, IPA HW not able to
process the forcce close command and asserting with invalid command
offset. Add changes to update mask and shift values for aggregation
force close register.

Change-Id: I19164a32c6a5d49fb005c4a09eb95a23a5d4b6ec
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
2019-11-17 10:07:50 -08:00
qctecmdr
7db9be171f Merge "firmware: qcom_scm-32: Use qcom_scm_desc in non-atomic calls" 2019-11-16 06:18:21 -08:00
qctecmdr
fe159bfa5a Merge "firmware: qcom_scm-32: Use SMC arch wrappers" 2019-11-16 05:42:55 -08:00
qctecmdr
37d4fdf777 Merge "firmware: qcom_scm-64: Improve SMC convention detection" 2019-11-16 05:07:59 -08:00
qctecmdr
9a5a88e8e4 Merge "firmware: qcom_scm-64: Fill SMC registers in qcom_scm_call_smccc" 2019-11-16 04:29:15 -08:00
qctecmdr
1e486afe4d Merge "firmware: qcom_scm-64: Remove qcom_scm_call_do_smccc" 2019-11-16 03:45:29 -08:00
qctecmdr
1bf368ea9f Merge "firmware: qcom_scm-64: Add SCM results to descriptor" 2019-11-16 03:01:59 -08:00
qctecmdr
2fecbc3812 Merge "firmware: qcom_scm-64: Move svc/cmd/owner into qcom_scm_desc" 2019-11-16 02:27:45 -08:00
qctecmdr
dc9a5781ad Merge "firmware: qcom_scm: Remove unused qcom_scm_get_version" 2019-11-16 01:46:20 -08:00
qctecmdr
25a16eb963 Merge "firmware: qcom_scm: Order functions, definitions by svc/cmd" 2019-11-16 01:12:08 -08:00
qctecmdr
ac0d8084e8 Merge "firmware: qcom_scm: Apply consistent naming scheme to command IDs" 2019-11-16 00:39:01 -08:00
qctecmdr
1951d5023d Merge "firmware: qcom_scm-64: Make SMCCC macros less magical" 2019-11-15 23:57:19 -08:00
qctecmdr
86d26b10fa Merge "firmware: qcom_scm: Add funcnum IDs" 2019-11-15 23:24:20 -08:00
qctecmdr
0115d870b8 Merge "firmware: qcom_scm: Rename macros and structures" 2019-11-15 22:48:28 -08:00
qctecmdr
01982fba17 Merge "firmware/qcom_scm: Add scm call to handle smmu errata" 2019-11-15 22:06:18 -08:00
qctecmdr
2c87407cf7 Merge "msm: ipa4: Fix to overcome KW issues" 2019-11-15 20:26:53 -08:00
qctecmdr
47acbf95eb Merge "soc: qcom: secure_buffer: Add missing dma_unmap_single" 2019-11-15 18:49:04 -08:00
Vivek Aknurwar
8d32c33ec4 clk: qcom: gcc: Fix num_parent count for gcc_usb3 clk init data
Fix num_parent count for gcc_usb3 clk init data.

Change-Id: Icceee06388ca9976d7f713b56afbd7011008a386
Signed-off-by: Vivek Aknurwar <viveka@codeaurora.org>
2019-11-15 18:41:20 -08:00
Praveen Kurapati
59ed200680 msm: ipa3: Fix to memory allocation failure
During IPA shutdown the allocation for memory request fails.
Add changes in IPA to not sleep while memory allocation.

Change-Id: I0adb09e32970ff1d67c3249bb9d3c9dbdc970a8a
Signed-off-by: Praveen Kurapati <pkurapat@codeaurora.org>
2019-11-16 08:06:59 +05:30
qctecmdr
7165f40b45 Merge "arm64: defconfig: Enable CVP driver" 2019-11-15 18:10:52 -08:00
George Shen
293f99a9cf arm64: defconfig: Enable CVP driver
Enable CVP driver for Lahaina.

Change-Id: I7ee692c24595ac3c436203c9ebb12c1b9844da68
Signed-off-by: George Shen <sqiao@codeaurora.org>
2019-11-15 14:45:33 -08:00
Chris Goldsworthy
903fe10e59 soc: qcom: secure_buffer: Add missing dma_unmap_single
Add a missing dma_unmap_single() that was accidentally deleted when adding
tracepoints in the secure_buffer driver.

Change-Id: I8159bee354b4debffb2a55165d2e543d5979daff
Signed-off-by: Chris Goldsworthy <cgoldswo@codeaurora.org>
2019-11-15 14:08:45 -08:00
Elliot Berman
2e88beb181 firmware: qcom_scm: Support SCM calls before qcom_scm probe
Lazily initialize qcom_smc_convention with a wrapper. Required for
SCM calls that occur before qcom_scm probe time.

Change-Id: I408b7ac6efc62b7e88846bc4769d66fccf2e7c0a
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
2019-11-15 11:03:52 -08:00
Elliot Berman
bdce17645f firmware: qcom_scm: Enable legacy convention in qcom_scm-64.c
Enable legacy calling convention in qcom_scm-64. Add enum to represent
current calling convention being used. Update is_call_available to use
legacy function numbers when using legacy convention.

Change-Id: I4aa1364f219d4db68c03023e63009a53326ecca5
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
2019-11-15 11:03:52 -08:00
Elliot Berman
298983059d firmware: qcom_scm: Merge legacy and SMCCC conventions
Copy/paste legacy SCM driver into qcom_scm-64 with the following notes:
- Renamed qcom_scm_call in qcom_scm-32 to qcom_scm_call_legacy in the
  copy.
- Renamed qcom_scm_call_atomic in qcom_scm 32 to
  qcom_scm_call_atomic_legacy in the copy.
- Rename __qcom_scm_call_smccc to qcom_scm_call_smccc.
- Filled in implementations set_cold_boot_addr, set_warm_boot_addr, and
  cpu_power_down from qcom_scm-32.c.
- set_dload_mode, io_writel, io_readl now use atomic variants as in
  qcom_scm-32.

Change-Id: Ifa72ded7d6150bef08c6a0451d422b0782e8320a
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
2019-11-15 11:03:52 -08:00