Skip to content

fastrpc-test: remove SoC blacklists and SM8850 exception - #532

Open
anankulk wants to merge 1 commit into
qualcomm-linux:mainfrom
anankulk:enable_glymur_rb1
Open

anankulk wants to merge 1 commit into
qualcomm-linux:mainfrom
anankulk:enable_glymur_rb1

Conversation

@anankulk

@anankulk anankulk commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

Summary

Remove hardcoded SoC-based domain filtering and per-SoC PD support maps.
Previously blacklisted platforms (e.g. Glymur CRD) were fully skipped
regardless of actual hardware capability. This PR replaces that approach
with runtime discovery driven by fastrpc-healthcheck.

Changes

  • Use fastrpc-healthcheck as the primary capability source for domain
    online state and signed/unsigned PD support per domain
  • An installed healthcheck that fails, times out, or produces malformed
    output fails the suite; runtime fallback applies only when tool is absent
  • Fall back to remoteproc running state and /dev/fastrpc-<domain>[-secure]
    endpoint presence for domain discovery when healthcheck is unavailable
  • PD support in fallback mode uses a conservative static protocol map
    (ADSP/MDSP/SDSP: signed only; CDSP/CDSP1/GDSP0/GDSP1: signed + unsigned)
  • Add domain_source and pd_source fields to [FASTRPC-POLICY] log line
  • Automatic mode skips domains missing runtime readiness, endpoint, or
    library; explicit selection fails with a diagnostic message
  • Strict healthcheck parser with field validation, duplicate detection, and
    GPDSP0/GPDSP1 canonicalization
  • Identity-based remoteproc-to-domain mapping replacing fragile basename
    guessing; FASTRPC_DOMAIN/FASTRPC_DOMAIN_NAME force single-domain
    independently of --domain-mode
  • Add --healthcheck-timeout parameter (default 15s)
  • Enforce finite --timeout with explicit default of 120s
  • Validate option arguments and FASTRPC_UNSIGNED_PD environment variable
  • Discover DSP skeleton directories from actual .so presence, not hardcoded ABI names
  • Capture kernel evidence once after the run matrix on any failure

Validation

Platform Capability Source Domains Invocations Result
QCS9075 runtime-fallback ADSP/CDSP/GDSP0/GDSP1 9/9 PASS
QCS9075 fastrpc-healthcheck ADSP/CDSP/GDSP0/GDSP1 9/9 PASS
Glymur CRD fastrpc-healthcheck ADSP/CDSP 3/3 PASS

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

only_hap_example_failed() now has no callers and still documents the SM8850 exception being removed. Remove the function and obsolete comment in this PR.

Comment thread Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh
Comment thread Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh Outdated
@anankulk

Copy link
Copy Markdown
Contributor Author

Hi Srikanth Muppandam (@smuppand),

With the upcoming tag to be released for fastrpc recipe : we are enabling gpdsp test support as-well.
Once the tag is released, will address the comments and enable gdsp as-well along with the on-going changes.

@anankulk anankulk changed the title fastrpc-test :enable tests on QRB2210, Glymur CRD, and SM8850 fastrpc-test :fastrpc-test: Add runtime validation and remove SoC-based filtering Aug 27, 2026
@anankulk anankulk changed the title fastrpc-test :fastrpc-test: Add runtime validation and remove SoC-based filtering fastrpc-test: Add runtime validation and remove SoC-based filtering Aug 27, 2026

@smuppand Srikanth Muppandam (smuppand) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With these new changes, you have to fix the following code as well.

Runner/utils/lib_fastrpc.sh:151 — artifact discovery validates generic directories, not FastRPC artifacts

  • Issue: FASTRPC_RESOLVED_LIB_SYS_DIR becomes /usr/lib whenever that directory exists. Likewise, the runner checks FASTRPC_RESOLVED_SKEL_BASE,
    although the base can exist without either v75 or v68. FASTRPC_RESOLVED_LIB_TEST_DIR is discovered but never required.

  • Recommended fix: Resolve and validate the actual required library files, require a non-empty FASTRPC_RESOLVED_SKEL_PATH, and validate the required
    test-library artifacts rather than generic directories.

Runner/suites/Multimedia/CDSP/fastrpc_test/fastrpc_test.yaml:11 — YAML still documents removed GPDSP filtering

  • Issue: The description says GPDSP domains are skipped on QCS9075/QCS8275/QCS8300/QCS9100, while the PR removes that blacklist.
  • Recommended fix: Describe runtime domain and endpoint discovery instead.

Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh:188 — remove unused SOC_MACHINE

  • Recommended fix: Remove the assignment.

Comment thread Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh Outdated
Comment thread Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh Outdated
Comment thread Runner/utils/lib_fastrpc.sh Outdated
Comment thread Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh Outdated
Comment thread Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh Outdated
Comment thread Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh Outdated
Comment thread Runner/utils/lib_fastrpc.sh Outdated
Comment thread Runner/utils/lib_fastrpc.sh Outdated

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

anankulk Please address the pending comments too

Comment thread Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh Outdated
Comment thread Runner/suites/Multimedia/CDSP/fastrpc_test/fastrpc_test.yaml Outdated
Comment thread Runner/utils/lib_fastrpc.sh
Comment thread Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh Outdated
Comment thread Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh Outdated
Comment thread Runner/utils/lib_fastrpc.sh Outdated
Comment thread Runner/utils/lib_fastrpc.sh Outdated
@anankulk anankulk changed the title fastrpc-test: Add runtime validation and remove SoC-based filtering fastrpc-test: remove SoC blacklists and SM8850 exception Sep 17, 2026
@smuppand

Copy link
Copy Markdown
Contributor

anankulk sign-off is missing from the recent patches.

Comment thread Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh
Comment thread Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh
Comment thread Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh Outdated
@smuppand

Copy link
Copy Markdown
Contributor

anankulk Restore executable mode on run.sh.

Comment thread Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh Outdated
Comment thread Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh
Comment thread Runner/utils/lib_fastrpc.sh Outdated
@smuppand

Copy link
Copy Markdown
Contributor

Fixes #586

…dation

Remove hardcoded SoC-based domain filtering and per-SoC PD support maps.
Use fastrpc-healthcheck as the primary capability source for domain online
state and signed/unsigned PD support per domain. An installed healthcheck
that fails, times out, or produces malformed output fails the suite;
runtime fallback applies only when the tool is absent, using
remoteproc/endpoint discovery for domains and a conservative static
protocol map for PD support.

- Log capability_source, domain_source, and pd_source in [FASTRPC-POLICY]
- Automatic mode skips domains missing runtime readiness, endpoint, or
  library; explicit selection fails with a diagnostic message
- Strict healthcheck parser with field validation, duplicate detection,
  GPDSP0/GPDSP1 canonicalization, and atomic TSV write
- Identity-based remoteproc-to-domain mapping; FASTRPC_DOMAIN/NAME force
  single-domain independently of --domain-mode
- Add --healthcheck-timeout (default 15s); enforce finite --timeout (120s)
- Validate option arguments, FASTRPC_UNSIGNED_PD, and ALLOW_BIN_FASTRPC
- Discover DSP skeletons from actual .so presence, not hardcoded ABI names
- Capture kernel evidence once after the run matrix on any failure

Signed-off-by: Anand Kulkarni <anankulk@qti.qualcomm.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants