Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b803cb57 authored by Susan Wang's avatar Susan Wang Committed by Gerrit - the friendly Code Review server
Browse files

configs: enable more sample rates for AAudio

- Enable 8000, 16000, 32000 sample rates for
  mmap input and output
- Expand restriction in audio hal on input
  side for the above sample rates
- Link MM16 to TERT_TDM_TX_0 for Talos as a
  usable path mmap-record

Change-Id: I867ec666a9f95d4ed67032213f9adb8fae893185
parent 0be67042
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -128,7 +128,7 @@
                </mixPort>
                <mixPort name="mmap_no_irq_out" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_MMAP_NOIRQ">
                    <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
                             samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                             samplingRates="8000,16000,32000,48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                </mixPort>
                <mixPort name="voip_rx" role="source"
                         flags="AUDIO_OUTPUT_FLAG_VOIP_RX">
+1 −1
Original line number Diff line number Diff line
@@ -110,7 +110,7 @@
                </mixPort>
                <mixPort name="mmap_no_irq_out" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_MMAP_NOIRQ">
                    <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
                             samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                             samplingRates="8000,16000,32000,48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                </mixPort>
                <mixPort name="compress_passthrough" role="source"
                        flags="AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING">
+1 −1
Original line number Diff line number Diff line
@@ -110,7 +110,7 @@
                </mixPort>
                <mixPort name="mmap_no_irq_out" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_MMAP_NOIRQ">
                    <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
                             samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                             samplingRates="8000,16000,32000,48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
                </mixPort>
                <mixPort name="compress_passthrough" role="source"
                        flags="AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING">
+1 −1
Original line number Diff line number Diff line
@@ -2471,7 +2471,7 @@
    </path>

    <path name="mmap-record">
      <ctl name="MultiMedia16 Mixer SLIM_0_TX" value="1" />
      <ctl name="MultiMedia16 Mixer TERT_TDM_TX_0" value="1" />
    </path>

    <path name="mmap-record bt-sco">
+8 −2
Original line number Diff line number Diff line
@@ -9623,7 +9623,13 @@ static int adev_open_input_stream(struct audio_hw_device *dev,
        }
    }

    if ((config->sample_rate == LOW_LATENCY_CAPTURE_SAMPLE_RATE) &&
    /* Additional sample rates added below must also be present
       in audio_policy_configuration.xml for mmap_no_irq_in */
    bool valid_mmap_record_rate = (config->sample_rate == 8000 ||
                                config->sample_rate == 16000 ||
                                config->sample_rate == 32000 ||
                                config->sample_rate == 48000);
    if (valid_mmap_record_rate &&
        ((in->flags & AUDIO_INPUT_FLAG_MMAP_NOIRQ) != 0)) {
        in->realtime = 0;
        in->usecase = USECASE_AUDIO_RECORD_MMAP;