Skip to content

Upstream - #59

Open
ffrancis123 wants to merge 35 commits into
AudioReach:masterfrom
ffrancis123:upstream
Open

ffrancis123 wants to merge 35 commits into
AudioReach:masterfrom
ffrancis123:upstream

Conversation

@ffrancis123

@ffrancis123 ffrancis123 commented Apr 24, 2026

Copy link
Copy Markdown
Contributor

commits included:

pal: configs: update speaker tmic position as per tunning.
pal : Check sound card state in stream create
configs: art: enable life logger by default
session: pcm: fix the get tagged ModuleInfo failure
configs: QCP RM changes: replace Connectivity proxy with Slimbus
Bluetooth: treat HFP disconnection as always successful
pal: update default asr config for lifelogger
PAL: In batch mode read only notified bytes
PAL: separate fd ownership for Binder shared memory
pal: Addition of four channels sp support
pal: configs: swap amic3 and amic5 in VA nlpi case
pal: Enable deep-buffer MMAP usecase selection
pal: Declare proxyOut_dattr outside if condition
pal: Add CPS2_FEEDBACK device to palmapping
pal: Add 4ch SP support in payloadbuilder
pal: plugins: Add CPS2_FEEDBACK device in pluginmanager
pal: Add GKV support for pcm deep buffer mmap playback
pal: add support for any motion detection on Skyros
PAL: configs: hamoa_la: updated xml configs
pal: configs: add support for UV call
pal: Register for watermark events for deepbuffer MMAP usecase
pal: configs: update sidetone and ec state for UV call
Revert "PAL:BTUtils: Protect active stream access"
Bluetooth: skip BT host operations where BtSco as HFP devices
pal: free front end ids after mixer event callback deregistered
pal: configs: Disable AUDIO_FLUENCE_SMECNS for hamoa_la
pal: Remove 4ch SP support for Haptics in payloadbuilder
pal : initial support for FFECNS UV audio cue
pal: configs: art: Update UPD controls for mtp qmp variant
pal : Fix voicecue data set failure for UV VoIP call
pal : Fix device switch failure for UV voice call
pal: configs: shikra: Update Resource manager and Mixer Path XML
pal: configs: route pebble/art headphones via AIF2
pal: Fix various compilation errors
pal : make UvVoiceCue support opt-in at build time

@ffrancis123
ffrancis123 force-pushed the upstream branch 5 times, most recently from 950a96f to 5a05207 Compare April 24, 2026 10:00
PrasadKumpatla and others added 4 commits June 9, 2026 12:26
update speaker tmic position as per tunning requriements.
AMIC4 to AMIC3(top right MIC).

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Move the sound card readiness check from Stream constructor to
Stream::create() so we don't call child/base class constructors or
allocate
resources when the card is offline.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Enable life logger by default so that V2 apis
will be used by ASR/SDZ.

Also correct tagID used when getting module
instance id for ASR/SDZ v2 event registration.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
In the getTagsWithModuleInfo api we are fetching
backends based on the input or output dierection.
But UPD being bi-deirection it is faiing these checks
and unable to fetch the module tag.

Hence add the check for UPD to support bi-dorectional
streams.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Saketh Cherukuri and others added 17 commits June 9, 2026 12:44
pal: configs: QCP: Resource Manager changes to replace Connectivity
proxy with Slimbus

Replaced backend names

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Audio HAL models BT SCO/HFP input and output as separate devices, while
BTHost maintains a single HFP offload session shared by both directions.
As a result, disconnect events can arrive out of order, with one stream
still active when the other is being torn down.

Previously, HFP close/open paths propagated failures in these cases,
causing spurious errors during normal connect or disconnect sequences.

This change makes HFP lifecycle handling more tolerant by:
- Treating repeated open requests as successful and idempotent.
- Allowing close to fail internally when the session is still in use,
  while callers explicitly ignore the close status for HFP disconnects.
- Adding clearer logging to reflect already-open or still-in-use states.

These updates prevent erroneous failure reporting when input and output
streams are disconnected at different times, while preserving correct
state management inside the HFP profile.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Update default asr config to have continuous
mode enabled for lifelogger.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
GSL engine was checking current mmap position while calculating bytes
to read which happens to be more than, what was notified to apk, and
apk reads only notified number of bytes, due to which in next event
some bytes were missed,as next read will start of current mmap position.

Add a check if batch mode is there, then instead of calculating based on
mmap position, calculate based on notified bytes.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
pal_stream_set_param() passes payload via shared memory fd.
Reusing the same fd with ScopedFileDescriptor could close
an fd already owned by the Binder Parcel, causing SIGABRT.

Duplicate the fd so local wrapper and Binder manage
their lifetimes independently.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Add support for 4-ch speaker configs in the WSA884x sp implementation

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Swap amic3 and amic5 in VA nlpi case, the configuration
is incorrect.
Update the mic configuration for hdr usecase.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
When deep-buffer streams are opened MMAP flag,
then treat it as an MMAP/ULL usecase and open
stream graph with "deep_buffer_mmap" custom config.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Declare proxyOut_dattr outside if condition to fix out of scope
issues when it is being referenced by candidateConfig outside of if
condition for RTProxyIn device.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Add CPS2_FEEDBACK device in palmmaping.h

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Add support to send CKV for 4ch SP

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Add CPS2_FEEDBACK device in pluginmanagerstatic

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Add new GKV PCM_DEEP_BUFFER_MMAP as stream type for
pcm deep buffer mmap playback and custom config support
to select these GKVs.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Add support for any motion detection on Skyros as
other sensor events TILT_TO_WAKE/INTENT_TO_SPEAK
are not supported on the platform.

Use new modality bit for any motion detection to
replace TILT_TO_WAKE/INTENT_TO_SPEAK for Skyros.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
hamoa_la xml configs updated for QCP & CRD

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Add support for UV call

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Register watermark events for deep-buffer MMAP stream and call
client provided callback on receiving these events. Total number
of watermark levels are fixed, and the bytes value is dervied from
the size of the ring buffer.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Kunlei Zhang and others added 13 commits June 9, 2026 12:45
Set sidetone and ec to off for UV call.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Reason for revert: <Double-lock on mActiveStreamMutex in
handleA2dpBleConcurrency; BTUtilsDeviceNotReady must keep lock order
(mActiveStreamMutex → mStreamMutex) or deadlock risk>

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
The BtSco class is shared by both SCO and HFP use cases, but their
requirements differ. HFP client devices do not require Bluetooth host
codec negotiation, while SCO devices do.

Introduce an explicit HFP client flag to distinguish these roles and
avoid executing unnecessary BT host operations for HFP clients.

This clarifies current behavior while keeping the existing shared
implementation intact, and avoids incorrect codec handling for HFP
devices until SCO and HFP devices are fully separated.

Later, as a Todo, need to create different class for HFP devices.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
When closing VoiceUI usecase, mixer event callback fails to
be deregistered as front end id is released before this
deregistration. This may cause unexpected unload failure.

Free front end ids after mixer event callback is deregistered
to avoid failure in unload operation.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Fluence NPOR for Hamoa_la

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Remove 4ch SP support for Haptics in payloadbuilder

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
add support for FFECNS/FNN UV audio cue. Based on the multi-usecase
specific enable/disable value configure the usecase to start with
applying the trained cue_data to the FFECNS/FFN module param to
filter out the User Verified captured data/audio only.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Update correct Audio Interface number depends on the backend
used for UPD.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Fix voicecue data set failure  for UV VoIP call.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Fix device switch failure for UV voice call.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Modify Reesource manager and Mixer Path XML as per
record and playback device configuration.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Update headphone and tty-headphones mixer paths to use RX2/RX3 with
AIF2_PB instead of RX0/RX1 with AIF1_PB on ART and Pebble targets.
This aligns playback routing with the intended RX macro paths for
these usecases and avoids incorrect backend selection in headphone
routes.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Fix following type of compilation errors:
-Wformat, -Wwritable-strings, -Wreorder-ctor

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
Add a configure option to enable UvVoiceCue features explicitly and
build UvVoiceCueUtils when that option is set. By default  the feature
is disabled, and a preprocessor flag to PAL and SessionAR is exported
so UvVoiceCue code paths can be compiled out cleanly.

This keeps the feature off by default and avoids pulling in optional
voice cue sources and dependencies unless they are needed.

Signed-off-by: ffrancis <ffrancis@qti.qualcomm.com>
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.