struct i915_audio_component_ops — callbacks defined in gfx driver
struct i915_audio_component_ops { struct module * owner; void (* get_power) (struct device *); void (* put_power) (struct device *); void (* codec_wake_override) (struct device *, bool enable); int (* get_cdclk_freq) (struct device *); int (* sync_audio_rate) (struct device *, int port, int pipe, int rate); int (* get_eld) (struct device *, int port, int pipe, bool *enabled,unsigned char *buf, int max_bytes); };
the module owner
get the POWER_DOMAIN_AUDIO power well
put the POWER_DOMAIN_AUDIO power well
Enable/Disable generating the codec wake signal
get the Core Display Clock in KHz
set n/cts based on the sample rate
fill the audio state and ELD bytes for the given port
Called from audio driver to get the HDMI/DP audio state of the given digital port, and also fetch ELD bytes to the given pointer.
It returns the byte size of the original ELD (not the actually copied size), zero for an invalid ELD, or a negative error code.
Note that the returned size may be over max_bytes
. Then it
implies that only a part of ELD has been copied to the buffer.