Re: [PATCH] drm/amd/display: Add DC feature flag to disable audio

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2021-01-26 9:51 a.m., Ernst Sjöstrand wrote:
No problems with amdgpu, but when my headphone port is glitching I often end up with some HDMI audio output selected instead.


Wouldn't this be better fixed in the audio management service, like PulseAudio? It sounds like it's not remembering your preferences correctly.

Harry

It also cleans up the clutter in the audio selection list.

//E

Den tis 26 jan. 2021 kl 15:34 skrev Alex Deucher <alexdeucher@xxxxxxxxx <mailto:alexdeucher@xxxxxxxxx>>:

    On Tue, Jan 26, 2021 at 9:32 AM Ernst Sjöstrand <ernstp@xxxxxxxxx
    <mailto:ernstp@xxxxxxxxx>> wrote:
     >
     > With the pre-DC path you could set audio=0 to disable audio.
     > This adds a similar feature for the DC path with
     > amdgpu.dcfeaturemask=0x10.
     >
     > Signed-off-by: Ernst Sjöstrand <ernstp@xxxxxxxxx
    <mailto:ernstp@xxxxxxxxx>>

    Is there a reason you want this?  I.e., is audio causing problems
    for you?

    Alex

     > ---
     >  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 3 +++
     >  drivers/gpu/drm/amd/display/dc/core/dc_resource.c | 7 ++++---
     >  drivers/gpu/drm/amd/display/dc/dc.h               | 1 +
     >  drivers/gpu/drm/amd/include/amd_shared.h          | 1 +
     >  4 files changed, 9 insertions(+), 3 deletions(-)
     >
     > diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
    b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
     > index e490fc2486f7..322d9439b9c2 100644
     > --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
     > +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
     > @@ -1013,6 +1013,9 @@ static int amdgpu_dm_init(struct
    amdgpu_device *adev)
     >         if (amdgpu_dc_feature_mask & DC_DISABLE_FRACTIONAL_PWM_MASK)
     >                 init_data.flags.disable_fractional_pwm = true;
     >
     > +       if (amdgpu_dc_feature_mask & DC_DISABLE_AUDIO)
     > +               init_data.flags.disable_audio = true;
     > +
     >         init_data.flags.power_down_display_on_boot = true;
     >
     >         init_data.soc_bounding_box = adev->dm.soc_bounding_box;
     > diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_resource.c
    b/drivers/gpu/drm/amd/display/dc/core/dc_resource.c
     > index 68b65a090d17..4cc0d2308c98 100644
     > --- a/drivers/gpu/drm/amd/display/dc/core/dc_resource.c
     > +++ b/drivers/gpu/drm/amd/display/dc/core/dc_resource.c
     > @@ -2141,9 +2141,10 @@ enum dc_status resource_map_pool_resources(
     >                 true);
     >
     >         /* TODO: Add check if ASIC support and EDID audio */
     > -       if (!stream->converter_disable_audio &&
     > -           dc_is_audio_capable_signal(pipe_ctx->stream->signal) &&
     > -           stream->audio_info.mode_count &&
    stream->audio_info.flags.all) {
     > +       if (!dc->config.disable_audio &&
     > +               !stream->converter_disable_audio &&
> +  dc_is_audio_capable_signal(pipe_ctx->stream->signal) &&
     > +               stream->audio_info.mode_count &&
    stream->audio_info.flags.all) {
     >                 pipe_ctx->stream_res.audio = find_first_free_audio(
     >                 &context->res_ctx, pool,
    pipe_ctx->stream_res.stream_enc->id, dc_ctx->dce_version);
     >
     > diff --git a/drivers/gpu/drm/amd/display/dc/dc.h
    b/drivers/gpu/drm/amd/display/dc/dc.h
     > index 71d46ade24e5..2ab6d770c66b 100644
     > --- a/drivers/gpu/drm/amd/display/dc/dc.h
     > +++ b/drivers/gpu/drm/amd/display/dc/dc.h
     > @@ -297,6 +297,7 @@ struct dc_config {
     >         bool multi_mon_pp_mclk_switch;
     >         bool disable_dmcu;
     >         bool enable_4to1MPC;
     > +       bool disable_audio;
     >  #if defined(CONFIG_DRM_AMD_DC_DCN)
     >         bool clamp_min_dcfclk;
     >  #endif
     > diff --git a/drivers/gpu/drm/amd/include/amd_shared.h
    b/drivers/gpu/drm/amd/include/amd_shared.h
     > index 9676016a37ce..7202d816a97e 100644
     > --- a/drivers/gpu/drm/amd/include/amd_shared.h
     > +++ b/drivers/gpu/drm/amd/include/amd_shared.h
     > @@ -220,6 +220,7 @@ enum DC_FEATURE_MASK {
     >         DC_MULTI_MON_PP_MCLK_SWITCH_MASK = 0x2,
     >         DC_DISABLE_FRACTIONAL_PWM_MASK = 0x4,
     >         DC_PSR_MASK = 0x8,
     > +       DC_DISABLE_AUDIO = 0x10,
     >  };
     >
     >  enum DC_DEBUG_MASK {
     > --
     > 2.27.0
     >
     > _______________________________________________
     > amd-gfx mailing list
     > amd-gfx@xxxxxxxxxxxxxxxxxxxxx <mailto:amd-gfx@xxxxxxxxxxxxxxxxxxxxx>
     > https://lists.freedesktop.org/mailman/listinfo/amd-gfx
    <https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.freedesktop.org%2Fmailman%2Flistinfo%2Famd-gfx&data=04%7C01%7CHARRY.WENTLAND%40amd.com%7C736532bfba5d4b96e9ac08d8c209e99d%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637472695123517788%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=1MWOfMfaIhdV%2BcnH%2BeAC0aRqb9BMVrdvReZBKG2ZJSc%3D&reserved=0>


_______________________________________________
amd-gfx mailing list
amd-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

_______________________________________________
amd-gfx mailing list
amd-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/amd-gfx




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux