1eef57324SJerome Anand /* 2eef57324SJerome Anand * Copyright © 2016 Intel Corporation 3eef57324SJerome Anand * 4eef57324SJerome Anand * Permission is hereby granted, free of charge, to any person obtaining a 5eef57324SJerome Anand * copy of this software and associated documentation files (the "Software"), 6eef57324SJerome Anand * to deal in the Software without restriction, including without limitation 7eef57324SJerome Anand * the rights to use, copy, modify, merge, publish, distribute, sublicense, 8eef57324SJerome Anand * and/or sell copies of the Software, and to permit persons to whom the 9eef57324SJerome Anand * Software is furnished to do so, subject to the following conditions: 10eef57324SJerome Anand * 11eef57324SJerome Anand * The above copyright notice and this permission notice (including the next 12eef57324SJerome Anand * paragraph) shall be included in all copies or substantial portions of the 13eef57324SJerome Anand * Software. 14eef57324SJerome Anand * 15eef57324SJerome Anand * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16eef57324SJerome Anand * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17eef57324SJerome Anand * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 18eef57324SJerome Anand * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19eef57324SJerome Anand * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 20eef57324SJerome Anand * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 21eef57324SJerome Anand * IN THE SOFTWARE. 22eef57324SJerome Anand */ 23eef57324SJerome Anand 24eef57324SJerome Anand #ifndef _INTEL_LPE_AUDIO_H_ 25eef57324SJerome Anand #define _INTEL_LPE_AUDIO_H_ 26eef57324SJerome Anand 27eef57324SJerome Anand #include <linux/types.h> 28eef57324SJerome Anand #include <linux/spinlock_types.h> 29eef57324SJerome Anand 30b1c01f4dSTakashi Iwai struct platform_device; 31b1c01f4dSTakashi Iwai 32eef57324SJerome Anand #define HDMI_MAX_ELD_BYTES 128 33eef57324SJerome Anand 34a8562e4dSVille Syrjälä struct intel_hdmi_lpe_audio_port_pdata { 35a8562e4dSVille Syrjälä u8 eld[HDMI_MAX_ELD_BYTES]; 36a8562e4dSVille Syrjälä int port; 37265fa2e1SVille Syrjälä int pipe; 38c98ec5baSVille Syrjälä int ls_clock; 39b5f2be9aSPierre-Louis Bossart bool dp_output; 40a8562e4dSVille Syrjälä }; 41a8562e4dSVille Syrjälä 42a8562e4dSVille Syrjälä struct intel_hdmi_lpe_audio_pdata { 43*8a2d6ae1SVille Syrjälä struct intel_hdmi_lpe_audio_port_pdata port[3]; /* for ports B,C,D */ 44*8a2d6ae1SVille Syrjälä int num_ports; 45*8a2d6ae1SVille Syrjälä int num_pipes; 46a8562e4dSVille Syrjälä 47*8a2d6ae1SVille Syrjälä void (*notify_audio_lpe)(struct platform_device *pdev, int port); /* port: 0==B,1==C,2==D */ 48eef57324SJerome Anand spinlock_t lpe_audio_slock; 49eef57324SJerome Anand }; 50eef57324SJerome Anand 51eef57324SJerome Anand #endif /* _I915_LPE_AUDIO_H_ */ 52