Skip to content

Add HPCM feature Support - #92

Open
man-rav wants to merge 2 commits into
AudioReach:masterfrom
man-rav:args_hpcm_feature
Open

Add HPCM feature Support#92
man-rav wants to merge 2 commits into
AudioReach:masterfrom
man-rav:args_hpcm_feature

Conversation

@man-rav

@man-rav man-rav commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

This PR introduces support for HPCM feature.

  1. Add HPCM public API header
  • HPCM public API contains function definitions for use by upper layers.
  • Also packages header for export.
  1. Add HPCM buffer handling support.
  • Routes HPCM read and write through HPCM buffer configuration when HPCM use-case is identified via a cached module-id.
  • Handles HPCM host buffer done events are inside GSL by mapping returned physical addresses to internal buffers.

CRs-Fixed: 4597765

@man-rav
man-rav requested review from a team July 6, 2026 07:48
@man-rav
man-rav force-pushed the args_hpcm_feature branch from e9c58e0 to a92b36b Compare July 6, 2026 07:52
@quic-aditrath
quic-aditrath marked this pull request as draft July 6, 2026 10:09
@man-rav
man-rav force-pushed the args_hpcm_feature branch 3 times, most recently from 770ea1f to c43d1b5 Compare July 6, 2026 17:50
@man-rav
man-rav marked this pull request as ready for review July 6, 2026 17:58
@man-rav
man-rav marked this pull request as draft July 7, 2026 06:12

@kkmajeti kkmajeti left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Add more detailed commit text with more information

@man-rav
man-rav force-pushed the args_hpcm_feature branch from c43d1b5 to a357d7c Compare July 7, 2026 11:06
@man-rav
man-rav marked this pull request as ready for review July 7, 2026 11:07
@man-rav
man-rav marked this pull request as draft July 7, 2026 11:07
@man-rav
man-rav force-pushed the args_hpcm_feature branch 2 times, most recently from 7c47354 to 9d831bd Compare July 7, 2026 11:30
@man-rav
man-rav marked this pull request as ready for review July 7, 2026 11:37
@man-rav
man-rav force-pushed the args_hpcm_feature branch from 9d831bd to 5dd8c9f Compare July 7, 2026 11:38
Comment thread gsl/inc/gsl_datapath.h Outdated

bool_t is_shmem_supported;

uint32_t module_id;

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.

fix alignment.

Comment thread spf/api/modules/hpcm_api.h Outdated
*
* \copyright
* Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
* SPDX-License-Identifier: BSD-3-Clause-Clear

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.

use BSD-3-Clause SPDX identifier.

man-rav added 2 commits July 9, 2026 11:23
Add the HPCM public API header with module configuration, shared
buffer setup, mode reporting, and host buffer done event definitions.
Include the new header in the SPF source list so the API is packaged
with the exported module interfaces

Signed-off-by: Manikantan R <manrav@qti.qualcomm.com>
Routes HPCM read and write buffers through the HPCM data buffer
configuration command when the cached module id identifies an HPCM
module. Module id with datapath MIID data is cached so normal
shared-memory paths continue for other modules.

HPCM host buffer done events are handled inside GSL by mapping returned
physical addresses to internal buffers, marking them available,
signaling waiters, and issuing client callbacks for blocking,
non-blocking, and shmem modes.

Signed-off-by: Manikantan R <manrav@qti.qualcomm.com>
@man-rav
man-rav force-pushed the args_hpcm_feature branch from 5dd8c9f to 6067225 Compare July 9, 2026 05:54
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