~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/include/sound/hdmi-codec.h

Version: ~ [ linux-6.11-rc3 ] ~ [ linux-6.10.4 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.45 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.104 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.164 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.223 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.281 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.319 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /include/sound/hdmi-codec.h (Version linux-6.11-rc3) and /include/sound/hdmi-codec.h (Version policy-sample)


  1 /* SPDX-License-Identifier: GPL-2.0-only */         1 
  2 /*                                                
  3  * hdmi-codec.h - HDMI Codec driver API           
  4  *                                                
  5  * Copyright (C) 2014 Texas Instruments Incorp    
  6  *                                                
  7  * Author: Jyri Sarha <jsarha@ti.com>             
  8  */                                               
  9                                                   
 10 #ifndef __HDMI_CODEC_H__                          
 11 #define __HDMI_CODEC_H__                          
 12                                                   
 13 #include <linux/of_graph.h>                       
 14 #include <linux/hdmi.h>                           
 15 #include <sound/asoundef.h>                       
 16 #include <sound/soc.h>                            
 17 #include <uapi/sound/asound.h>                    
 18                                                   
 19 /*                                                
 20  * Protocol between ASoC cpu-dai and HDMI-enco    
 21  */                                               
 22 struct hdmi_codec_daifmt {                        
 23         enum {                                    
 24                 HDMI_I2S,                         
 25                 HDMI_RIGHT_J,                     
 26                 HDMI_LEFT_J,                      
 27                 HDMI_DSP_A,                       
 28                 HDMI_DSP_B,                       
 29                 HDMI_AC97,                        
 30                 HDMI_SPDIF,                       
 31         } fmt;                                    
 32         unsigned int bit_clk_inv:1;               
 33         unsigned int frame_clk_inv:1;             
 34         unsigned int bit_clk_provider:1;          
 35         unsigned int frame_clk_provider:1;        
 36         /* bit_fmt could be standard PCM forma    
 37          * IEC958 encoded format. ALSA IEC958     
 38          * IEC958_SUBFRAME format to the under    
 39          */                                       
 40         snd_pcm_format_t bit_fmt;                 
 41 };                                                
 42                                                   
 43 /*                                                
 44  * HDMI audio parameters                          
 45  */                                               
 46 struct hdmi_codec_params {                        
 47         struct hdmi_audio_infoframe cea;          
 48         struct snd_aes_iec958 iec;                
 49         int sample_rate;                          
 50         int sample_width;                         
 51         int channels;                             
 52 };                                                
 53                                                   
 54 typedef void (*hdmi_codec_plugged_cb)(struct d    
 55                                       bool plu    
 56                                                   
 57 struct hdmi_codec_pdata;                          
 58 struct hdmi_codec_ops {                           
 59         /*                                        
 60          * Called when ASoC starts an audio st    
 61          * Optional                               
 62          */                                       
 63         int (*audio_startup)(struct device *de    
 64                                                   
 65         /*                                        
 66          * Configures HDMI-encoder for audio s    
 67          * Having either prepare or hw_params     
 68          */                                       
 69         int (*hw_params)(struct device *dev, v    
 70                          struct hdmi_codec_dai    
 71                          struct hdmi_codec_par    
 72                                                   
 73         /*                                        
 74          * Configures HDMI-encoder for audio s    
 75          * multiple times for each setup.         
 76          *                                        
 77          * Having either prepare or hw_params     
 78          */                                       
 79         int (*prepare)(struct device *dev, voi    
 80                        struct hdmi_codec_daifm    
 81                        struct hdmi_codec_param    
 82                                                   
 83         /*                                        
 84          * Shuts down the audio stream.           
 85          * Mandatory                              
 86          */                                       
 87         void (*audio_shutdown)(struct device *    
 88                                                   
 89         /*                                        
 90          * Mute/unmute HDMI audio stream.         
 91          * Optional                               
 92          */                                       
 93         int (*mute_stream)(struct device *dev,    
 94                            bool enable, int di    
 95                                                   
 96         /*                                        
 97          * Provides EDID-Like-Data from connec    
 98          * Optional                               
 99          */                                       
100         int (*get_eld)(struct device *dev, voi    
101                        uint8_t *buf, size_t le    
102                                                   
103         /*                                        
104          * Getting DAI ID                         
105          * Optional                               
106          */                                       
107         int (*get_dai_id)(struct snd_soc_compo    
108                           struct device_node *    
109                                                   
110         /*                                        
111          * Hook callback function to handle co    
112          * Optional                               
113          */                                       
114         int (*hook_plugged_cb)(struct device *    
115                                hdmi_codec_plug    
116                                struct device *    
117                                                   
118         /* bit field */                           
119         unsigned int no_capture_mute:1;           
120 };                                                
121                                                   
122 /* HDMI codec initalization data */               
123 struct hdmi_codec_pdata {                         
124         const struct hdmi_codec_ops *ops;         
125         uint i2s:1;                               
126         uint no_i2s_playback:1;                   
127         uint no_i2s_capture:1;                    
128         uint spdif:1;                             
129         uint no_spdif_playback:1;                 
130         uint no_spdif_capture:1;                  
131         int max_i2s_channels;                     
132         void *data;                               
133 };                                                
134                                                   
135 struct snd_soc_component;                         
136 struct snd_soc_jack;                              
137                                                   
138 #define HDMI_CODEC_DRV_NAME "hdmi-audio-codec"    
139                                                   
140 #endif /* __HDMI_CODEC_H__ */                     
141                                                   

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php