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>
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>
- 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>
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>
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>
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>
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>
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>
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>
Add debug log to show which CPU dai is not registered
during bootup.
Change-Id: Ia6324edec64ff6e7ee08a0b292259c8ffb70d20e
Signed-off-by: Meng Wang <mengw@codeaurora.org>
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>
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>
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>
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>
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>
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>