Skip to content

conf.d: add *_ARCH keys for legacy targets and extend schema - #97

Merged
lumag merged 3 commits into
linux-msm:trunkfrom
quic-vkatoch:yaml-arch
Aug 10, 2026
Merged

conf.d: add *_ARCH keys for legacy targets and extend schema#97
lumag merged 3 commits into
linux-msm:trunkfrom
quic-vkatoch:yaml-arch

Conversation

@quic-vkatoch

@quic-vkatoch quic-vkatoch commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Legacy targets (db820c, db845c, qcs615-ride) do not implement the ARCH_VER capability on the DSP, so fastrpc cannot auto-detect the Hexagon version at runtime. This adds explicit *_ARCH keys in the per-machine YAML configs so fastrpc can resolve the correct DSP library search path (e.g. /usr/share/qcom/hexagon/v<XY>/).

YAML changes:

  • db410c: ADSP_ARCH=v5
  • db820c: ADSP_ARCH=v60, SDSP_ARCH=v60
  • db845c: ADSP_ARCH=v65, CDSP_ARCH=v65, SDSP_ARCH=v65
  • qcs615-ride: ADSP_ARCH=v66, CDSP_ARCH=v66

Schema changes (conf.d/schema.json):

  • Register all *_ARCH keys as optional properties: ADSP_ARCH, MDSP_ARCH, SDSP_ARCH, CDSP_ARCH
  • Pattern ^v[0-9a-f]+$ allows hex-digit version strings (e.g. v60, v65, v6a)

Depends on qualcomm/fastrpc#328

@quic-vkatoch
quic-vkatoch marked this pull request as draft July 22, 2026 08:24
@quic-vkatoch quic-vkatoch changed the title db820c, db845c, qcs615-ride: add *_ARCH keys for legacy targets conf.d: add *_ARCH keys for legacy targets and extend schema Jul 22, 2026
@quic-vkatoch
quic-vkatoch marked this pull request as ready for review July 22, 2026 08:49

@lumag lumag left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Does RB5 (SM8250) implement ARCH_VER?
How do we handle db410c (MSM8916)? Do we need to add an empty dir for the sake of ARCH_VER configuration?

Also, please split this into sepate, logical commits.

Comment thread conf.d/hexagon-dsp-binaries-qualcomm-db820c.yaml
Comment thread conf.d/schema.json Outdated
Register ADSP_ARCH, MDSP_ARCH, SDSP_ARCH, CDSP_ARCH as optional string
properties with pattern '^v[0-9a-f]+$' to validate hex-based DSP
architecture version strings (e.g. v60, v65, v6a).

Signed-off-by: Vinayak Katoch <vinayak.katoch@oss.qualcomm.com>
Legacy targets (db820c, db845c, qcs615-ride) do not implement the
ARCH_VER capability on the DSP, so fastrpc cannot auto-detect the
Hexagon version at runtime. Add the *_ARCH keys explicitly in the
YAML config so fastrpc can resolve the correct DSP library search
path (e.g. /usr/share/qcom/hexagon/v<XY>/).

  db820c:      ADSP_ARCH=v60, SDSP_ARCH=v60
  db845c:      ADSP_ARCH=v65, CDSP_ARCH=v65, SDSP_ARCH=v65
  qcs615-ride: ADSP_ARCH=v66, CDSP_ARCH=v66

Signed-off-by: Vinayak Katoch <vinayak.katoch@oss.qualcomm.com>
@quic-vkatoch

quic-vkatoch commented Jul 27, 2026

Copy link
Copy Markdown
Contributor Author

Does RB5 (SM8250) implement ARCH_VER?

Yes

How do we handle db410c (MSM8916)? Do we need to add an empty dir for the sake of ARCH_VER configuration?

FastRPC lib gracefully handles cases where ARCH_VER capability is not supported by either falling back to yaml configuration or returning meaningful error code. However, how do you expect us to handle targets that are not enabled in the hexagon-dsp-binaries project?

Also, please split this into sepate, logical commits.

Sure

@lumag

lumag commented Jul 27, 2026

Copy link
Copy Markdown
Collaborator

However, how do you expect us to handle targets that are not enabled in the hexagon-dsp-binaries project?

That's what I've asked. Do we need to add a config file for it just to let FastRPC library resolve Hexagon arch on that platform?

@quic-vkatoch

Copy link
Copy Markdown
Contributor Author

However, how do you expect us to handle targets that are not enabled in the hexagon-dsp-binaries project?

That's what I've asked. Do we need to add a config file for it just to let FastRPC library resolve Hexagon arch on that platform?

Yes, we can do that adding a config file for the target should allow the library to correctly resolve the Hexagon arch path. I'll update the PR, let me know if it looks correct.

db410c does not support ARCH_VER capability, so add ADSP_ARCH=v5
explicitly for fastrpc to resolve the correct DSP library path.

Signed-off-by: Vinayak Katoch <vinayak.katoch@oss.qualcomm.com>

@lumag lumag left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Also please explain, why we are shipping this config file, but not the actual binaries

@quic-vkatoch

Copy link
Copy Markdown
Contributor Author

Also please explain, why we are shipping this config file, but not the actual binaries

@vkasinat, @quic-psaddam, could you please comment on whether we have binaries for db410c? If not, we can drop the config file.

@vkasinat

Copy link
Copy Markdown
Contributor

@quic-vkatoch there are no binaries for db410c.

machines:
Qualcomm Technologies, Inc. APQ 8016 SBC:
DSP_LIBRARY_PATH: apq8016/Qualcomm/db410c/dsp
ADSP_ARCH: v5

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Is it just v5, without any v51 or v55?

@lumag

lumag commented Jul 31, 2026

Copy link
Copy Markdown
Collaborator

@quic-vkatoch there are no binaries for db410c.

I can see FastCV and other DSP binaries going back to msm8974. If there were no separate fastrpc_shell and other system libs, then we need to provide a conf file here to let users load those DSP libs.

@lumag
lumag merged commit 7780697 into linux-msm:trunk Aug 10, 2026
2 checks passed
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