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

Commit 1bcdc6b9 authored by Derek Chen's avatar Derek Chen
Browse files

hal: add bus stream for front passenger zone

Add bus stream for front passenger zone playback
on automotive platform.

Primary zone         -> Mercury
Front passenger zone -> A2B1 (8CH DAC1) (ALL)
Rear seat zone       -> A2B2 (16CH DAC1&2) (SA81x5)
                        A2B1 (8CH DAC2) (SA6155)

Change-Id: Ib288f84c94d33f2f49d45b32d6810e0b91db967f
parent ef6d206d
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -1315,8 +1315,11 @@ int audio_extn_utils_get_license_params(const struct audio_device *adev, struct
#ifndef AUDIO_OUTPUT_FLAG_PHONE
#define AUDIO_OUTPUT_FLAG_PHONE 0x800000
#endif
#ifndef AUDIO_OUTPUT_FLAG_FRONT_PASSENGER
#define AUDIO_OUTPUT_FLAG_FRONT_PASSENGER 0x1000000
#endif
#ifndef AUDIO_OUTPUT_FLAG_REAR_SEAT
#define AUDIO_OUTPUT_FLAG_REAR_SEAT 0x1000000
#define AUDIO_OUTPUT_FLAG_REAR_SEAT 0x2000000
#endif
int audio_extn_auto_hal_init(struct audio_device *adev);
void audio_extn_auto_hal_deinit(void);
+12 −0
Original line number Diff line number Diff line
@@ -360,6 +360,12 @@ int auto_hal_open_output_stream(struct stream_out *out)
            out->flags |= AUDIO_OUTPUT_FLAG_PHONE;
        out->volume_l = out->volume_r = MAX_VOLUME_GAIN;
        break;
    case CAR_AUDIO_STREAM_FRONT_PASSENGER:
        out->usecase = USECASE_AUDIO_PLAYBACK_FRONT_PASSENGER;
        out->config = pcm_config_system;
        if (out->flags == AUDIO_OUTPUT_FLAG_NONE)
            out->flags |= AUDIO_OUTPUT_FLAG_FRONT_PASSENGER;
        break;
    case CAR_AUDIO_STREAM_REAR_SEAT:
        out->usecase = USECASE_AUDIO_PLAYBACK_REAR_SEAT;
        out->config = pcm_config_media;
@@ -412,6 +418,9 @@ snd_device_t auto_hal_get_snd_device_for_car_audio_stream(struct stream_out *out
    case CAR_AUDIO_STREAM_PHONE:
        snd_device = SND_DEVICE_OUT_BUS_PHN;
        break;
    case CAR_AUDIO_STREAM_FRONT_PASSENGER:
        snd_device = SND_DEVICE_OUT_BUS_PAX;
        break;
    case CAR_AUDIO_STREAM_REAR_SEAT:
        snd_device = SND_DEVICE_OUT_BUS_RSE;
        break;
@@ -811,6 +820,9 @@ snd_device_t auto_hal_get_output_snd_device(struct audio_device *adev,
        case USECASE_AUDIO_PLAYBACK_PHONE:
            snd_device = SND_DEVICE_OUT_BUS_PHN;
            break;
        case USECASE_AUDIO_PLAYBACK_FRONT_PASSENGER:
            snd_device = SND_DEVICE_OUT_BUS_PAX;
            break;
        case USECASE_AUDIO_PLAYBACK_REAR_SEAT:
            snd_device = SND_DEVICE_OUT_BUS_RSE;
            break;
+1 −0
Original line number Diff line number Diff line
@@ -64,5 +64,6 @@ static const audio_usecase_t bus_device_usecases[] = {
    USECASE_AUDIO_PLAYBACK_SYS_NOTIFICATION,
    USECASE_AUDIO_PLAYBACK_NAV_GUIDANCE,
    USECASE_AUDIO_PLAYBACK_PHONE,
    USECASE_AUDIO_PLAYBACK_FRONT_PASSENGER,
    USECASE_AUDIO_PLAYBACK_REAR_SEAT,
};
+1 −0
Original line number Diff line number Diff line
@@ -155,6 +155,7 @@ const struct string_to_enum s_flag_name_to_enum_table[] = {
    STRING_TO_ENUM(AUDIO_OUTPUT_FLAG_SYS_NOTIFICATION),
    STRING_TO_ENUM(AUDIO_OUTPUT_FLAG_NAV_GUIDANCE),
    STRING_TO_ENUM(AUDIO_OUTPUT_FLAG_PHONE),
    STRING_TO_ENUM(AUDIO_OUTPUT_FLAG_FRONT_PASSENGER),
    STRING_TO_ENUM(AUDIO_OUTPUT_FLAG_REAR_SEAT),
    STRING_TO_ENUM(AUDIO_INPUT_FLAG_NONE),
    STRING_TO_ENUM(AUDIO_INPUT_FLAG_FAST),
+1 −0
Original line number Diff line number Diff line
@@ -410,6 +410,7 @@ const char * const use_case_table[AUDIO_USECASE_MAX] = {
    [USECASE_AUDIO_PLAYBACK_SYS_NOTIFICATION] = "sys-notification-playback",
    [USECASE_AUDIO_PLAYBACK_NAV_GUIDANCE] = "nav-guidance-playback",
    [USECASE_AUDIO_PLAYBACK_PHONE] = "phone-playback",
    [USECASE_AUDIO_PLAYBACK_FRONT_PASSENGER] = "front-passenger-playback",
    [USECASE_AUDIO_PLAYBACK_REAR_SEAT] = "rear-seat-playback",
    [USECASE_AUDIO_FM_TUNER_EXT] = "fm-tuner-ext",
};
Loading