[PATCH v1 1/1] drm/i915/pxp: Bail early in pxp tee backend on first teardown error
Teres Alexis, Alan Previn
alan.previn.teres.alexis at intel.com
Thu Nov 16 23:28:37 UTC 2023
On Thu, 2023-11-16 at 15:20 -0800, Teres Alexis, Alan Previn wrote:
> For Gen12 when using mei-pxp tee backend tranport, if we are coming
> up from a cold boot or from a resume (not runtime resume), we can
> optionally quicken the very first session cleanup that would occur
> as part of starting up a default PXP session. Typically a cleanup
> from a cold-start is expected to be quick so we can use a shorter
> timeout and skip retries (when getting non-success on calling
> backend transport for intel_pxp_tee_end_arb_fw_session).
alan:snip
> @@ -387,10 +389,14 @@ void intel_pxp_tee_end_arb_fw_session(struct intel_pxp *pxp, u32 session_id)
> ret = intel_pxp_tee_io_message(pxp,
> &msg_in, sizeof(msg_in),
> &msg_out, sizeof(msg_out),
> - NULL);
> + NULL, pxp->hw_state_coldstart ?
> + PXP_TRANSPORT_TIMEOUT_FAST_MS : PXP_TRANSPORT_TIMEOUT_MS);
>
> - /* Cleanup coherency between GT and Firmware is critical, so try again if it fails */
> - if ((ret || msg_out.header.status != 0x0) && ++trials < 3)
> + /*
> + * Cleanup coherency between GT and Firmware is critical, so try again if it
> + * fails, unless we are performing a cold-start reset
> + */
> + if ((ret || msg_out.header.status != 0x0) && !pxp->hw_state_coldstart && ++trials < 3)
alan: Take note I am working offline with sister teams to perform some end to
end conformance testing with more comprehensive OS stacks before we can verify
that this optimization doesnt break any existing use-cases.
More information about the dri-devel
mailing list