diff options
author | Jani Nikula <jani.nikula@intel.com> | 2022-08-24 16:15:37 +0300 |
---|---|---|
committer | Jani Nikula <jani.nikula@intel.com> | 2022-08-29 12:36:37 +0300 |
commit | 4be1c12c880e03e6d174e7e7f9e0dc36bdaf9597 (patch) | |
tree | 9e50f6761f21b1e804d55b777da307258a594f2b /drivers/gpu/drm/i915/display/intel_display_core.h | |
parent | 6c77055aa674b6726f8ee57d1c20e950323dbadc (diff) | |
download | linux-4be1c12c880e03e6d174e7e7f9e0dc36bdaf9597.tar.gz linux-4be1c12c880e03e6d174e7e7f9e0dc36bdaf9597.tar.bz2 linux-4be1c12c880e03e6d174e7e7f9e0dc36bdaf9597.zip |
drm/i915: move and split audio under display.audio and display.funcs
Move display audio related members under drm_i915_private display
sub-struct.
Split audio funcs to display.funcs to follow the same pattern as all the
other display functions.
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Arun R Murthy <arun.r.murthy@intel.com>
Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/51c0b966963a8b47efe3a431e0ce106bdd5269c5.1661346845.git.jani.nikula@intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/display/intel_display_core.h')
-rw-r--r-- | drivers/gpu/drm/i915/display/intel_display_core.h | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_display_core.h b/drivers/gpu/drm/i915/display/intel_display_core.h index f2392bc16279..5956cb566f9d 100644 --- a/drivers/gpu/drm/i915/display/intel_display_core.h +++ b/drivers/gpu/drm/i915/display/intel_display_core.h @@ -10,11 +10,14 @@ #include <linux/types.h> #include <linux/wait.h> +#include "intel_display.h" #include "intel_dmc.h" #include "intel_gmbus.h" struct drm_i915_private; +struct i915_audio_component; struct intel_atomic_state; +struct intel_audio_funcs; struct intel_cdclk_funcs; struct intel_color_funcs; struct intel_crtc; @@ -57,6 +60,25 @@ struct intel_wm_funcs { int (*compute_global_watermarks)(struct intel_atomic_state *state); }; +struct intel_audio { + /* hda/i915 audio component */ + struct i915_audio_component *component; + bool component_registered; + /* mutex for audio/video sync */ + struct mutex mutex; + int power_refcount; + u32 freq_cntrl; + + /* Used to save the pipe-to-encoder mapping for audio */ + struct intel_encoder *encoder_map[I915_MAX_PIPES]; + + /* necessary resource sharing with HDMI LPE audio driver. */ + struct { + struct platform_device *platdev; + int irq; + } lpe; +}; + struct intel_display { /* Display functions */ struct { @@ -80,6 +102,9 @@ struct intel_display { /* Display internal color functions */ const struct intel_color_funcs *color; + + /* Display internal audio functions */ + const struct intel_audio_funcs *audio; } funcs; /* Grouping using anonymous structs. Keep sorted. */ @@ -109,6 +134,7 @@ struct intel_display { } pps; /* Grouping using named structs. Keep sorted. */ + struct intel_audio audio; struct intel_dmc dmc; }; |