17f4dd379Sjsg /*
27f4dd379Sjsg  * Copyright © 2014 Intel Corporation
37f4dd379Sjsg  *
47f4dd379Sjsg  * Permission is hereby granted, free of charge, to any person obtaining a
57f4dd379Sjsg  * copy of this software and associated documentation files (the "Software"),
67f4dd379Sjsg  * to deal in the Software without restriction, including without limitation
77f4dd379Sjsg  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
87f4dd379Sjsg  * and/or sell copies of the Software, and to permit persons to whom the
97f4dd379Sjsg  * Software is furnished to do so, subject to the following conditions:
107f4dd379Sjsg  *
117f4dd379Sjsg  * The above copyright notice and this permission notice (including the next
127f4dd379Sjsg  * paragraph) shall be included in all copies or substantial portions of the
137f4dd379Sjsg  * Software.
147f4dd379Sjsg  *
157f4dd379Sjsg  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
167f4dd379Sjsg  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
177f4dd379Sjsg  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
187f4dd379Sjsg  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
197f4dd379Sjsg  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
207f4dd379Sjsg  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
217f4dd379Sjsg  * IN THE SOFTWARE.
227f4dd379Sjsg  */
237f4dd379Sjsg 
247f4dd379Sjsg #ifndef _I915_COMPONENT_H_
257f4dd379Sjsg #define _I915_COMPONENT_H_
267f4dd379Sjsg 
277f4dd379Sjsg #include "drm_audio_component.h"
287f4dd379Sjsg 
29c349dbc7Sjsg enum i915_component_type {
30c349dbc7Sjsg 	I915_COMPONENT_AUDIO = 1,
31c349dbc7Sjsg 	I915_COMPONENT_HDCP,
32*f005ef32Sjsg 	I915_COMPONENT_PXP,
33*f005ef32Sjsg 	I915_COMPONENT_GSC_PROXY,
34c349dbc7Sjsg };
35c349dbc7Sjsg 
367f4dd379Sjsg /* MAX_PORT is the number of port
377f4dd379Sjsg  * It must be sync with I915_MAX_PORTS defined i915_drv.h
387f4dd379Sjsg  */
39c349dbc7Sjsg #define MAX_PORTS 9
407f4dd379Sjsg 
417f4dd379Sjsg /**
427f4dd379Sjsg  * struct i915_audio_component - Used for direct communication between i915 and hda drivers
437f4dd379Sjsg  */
447f4dd379Sjsg struct i915_audio_component {
457f4dd379Sjsg 	/**
467f4dd379Sjsg 	 * @base: the drm_audio_component base class
477f4dd379Sjsg 	 */
487f4dd379Sjsg 	struct drm_audio_component	base;
497f4dd379Sjsg 
507f4dd379Sjsg 	/**
517f4dd379Sjsg 	 * @aud_sample_rate: the array of audio sample rate per port
527f4dd379Sjsg 	 */
537f4dd379Sjsg 	int aud_sample_rate[MAX_PORTS];
547f4dd379Sjsg };
557f4dd379Sjsg 
567f4dd379Sjsg #endif /* _I915_COMPONENT_H_ */
57