aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPawel MOLL <pawel.moll@st.com>2008-08-01 06:23:44 -0400
committerJaroslav Kysela <perex@perex.cz>2008-08-01 07:13:13 -0400
commit687fbc3fece34e7e1c2ac529348ad897095a0bde (patch)
tree46372c696046262f843da748ed09b379dace26f1
parent9423969005586e6e27ca380e01b4a8c50698e2af (diff)
ALSA: IEC958 definition for consumer status channel update
Updated IEC958 consumer status channel definitions according to the third edition of IEC60958-3 spec. Signed-off-by: Pawel Moll <pawel.moll@st.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
-rw-r--r--include/sound/asoundef.h89
1 files changed, 69 insertions, 20 deletions
diff --git a/include/sound/asoundef.h b/include/sound/asoundef.h
index a6e0facf8a37..20ebf3298eba 100644
--- a/include/sound/asoundef.h
+++ b/include/sound/asoundef.h
@@ -60,35 +60,56 @@
60#define IEC958_AES1_PRO_USERBITS_UDEF (12<<4) /* user defined application */ 60#define IEC958_AES1_PRO_USERBITS_UDEF (12<<4) /* user defined application */
61#define IEC958_AES1_CON_CATEGORY 0x7f 61#define IEC958_AES1_CON_CATEGORY 0x7f
62#define IEC958_AES1_CON_GENERAL 0x00 62#define IEC958_AES1_CON_GENERAL 0x00
63#define IEC958_AES1_CON_EXPERIMENTAL 0x40
64#define IEC958_AES1_CON_SOLIDMEM_MASK 0x0f
65#define IEC958_AES1_CON_SOLIDMEM_ID 0x08
66#define IEC958_AES1_CON_BROADCAST1_MASK 0x07
67#define IEC958_AES1_CON_BROADCAST1_ID 0x04
68#define IEC958_AES1_CON_DIGDIGCONV_MASK 0x07
69#define IEC958_AES1_CON_DIGDIGCONV_ID 0x02
70#define IEC958_AES1_CON_ADC_COPYRIGHT_MASK 0x1f
71#define IEC958_AES1_CON_ADC_COPYRIGHT_ID 0x06
72#define IEC958_AES1_CON_ADC_MASK 0x1f
73#define IEC958_AES1_CON_ADC_ID 0x16
74#define IEC958_AES1_CON_BROADCAST2_MASK 0x0f
75#define IEC958_AES1_CON_BROADCAST2_ID 0x0e
76#define IEC958_AES1_CON_LASEROPT_MASK 0x07 63#define IEC958_AES1_CON_LASEROPT_MASK 0x07
77#define IEC958_AES1_CON_LASEROPT_ID 0x01 64#define IEC958_AES1_CON_LASEROPT_ID 0x01
78#define IEC958_AES1_CON_MUSICAL_MASK 0x07
79#define IEC958_AES1_CON_MUSICAL_ID 0x05
80#define IEC958_AES1_CON_MAGNETIC_MASK 0x07
81#define IEC958_AES1_CON_MAGNETIC_ID 0x03
82#define IEC958_AES1_CON_IEC908_CD (IEC958_AES1_CON_LASEROPT_ID|0x00) 65#define IEC958_AES1_CON_IEC908_CD (IEC958_AES1_CON_LASEROPT_ID|0x00)
83#define IEC958_AES1_CON_NON_IEC908_CD (IEC958_AES1_CON_LASEROPT_ID|0x08) 66#define IEC958_AES1_CON_NON_IEC908_CD (IEC958_AES1_CON_LASEROPT_ID|0x08)
67#define IEC958_AES1_CON_MINI_DISC (IEC958_AES1_CON_LASEROPT_ID|0x48)
68#define IEC958_AES1_CON_DVD (IEC958_AES1_CON_LASEROPT_ID|0x18)
69#define IEC958_AES1_CON_LASTEROPT_OTHER (IEC958_AES1_CON_LASEROPT_ID|0x78)
70#define IEC958_AES1_CON_DIGDIGCONV_MASK 0x07
71#define IEC958_AES1_CON_DIGDIGCONV_ID 0x02
84#define IEC958_AES1_CON_PCM_CODER (IEC958_AES1_CON_DIGDIGCONV_ID|0x00) 72#define IEC958_AES1_CON_PCM_CODER (IEC958_AES1_CON_DIGDIGCONV_ID|0x00)
85#define IEC958_AES1_CON_SAMPLER (IEC958_AES1_CON_DIGDIGCONV_ID|0x20)
86#define IEC958_AES1_CON_MIXER (IEC958_AES1_CON_DIGDIGCONV_ID|0x10) 73#define IEC958_AES1_CON_MIXER (IEC958_AES1_CON_DIGDIGCONV_ID|0x10)
87#define IEC958_AES1_CON_RATE_CONVERTER (IEC958_AES1_CON_DIGDIGCONV_ID|0x18) 74#define IEC958_AES1_CON_RATE_CONVERTER (IEC958_AES1_CON_DIGDIGCONV_ID|0x18)
88#define IEC958_AES1_CON_SYNTHESIZER (IEC958_AES1_CON_MUSICAL_ID|0x00) 75#define IEC958_AES1_CON_SAMPLER (IEC958_AES1_CON_DIGDIGCONV_ID|0x20)
89#define IEC958_AES1_CON_MICROPHONE (IEC958_AES1_CON_MUSICAL_ID|0x08) 76#define IEC958_AES1_CON_DSP (IEC958_AES1_CON_DIGDIGCONV_ID|0x28)
77#define IEC958_AES1_CON_DIGDIGCONV_OTHER (IEC958_AES1_CON_DIGDIGCONV_ID|0x78)
78#define IEC958_AES1_CON_MAGNETIC_MASK 0x07
79#define IEC958_AES1_CON_MAGNETIC_ID 0x03
90#define IEC958_AES1_CON_DAT (IEC958_AES1_CON_MAGNETIC_ID|0x00) 80#define IEC958_AES1_CON_DAT (IEC958_AES1_CON_MAGNETIC_ID|0x00)
91#define IEC958_AES1_CON_VCR (IEC958_AES1_CON_MAGNETIC_ID|0x08) 81#define IEC958_AES1_CON_VCR (IEC958_AES1_CON_MAGNETIC_ID|0x08)
82#define IEC958_AES1_CON_DCC (IEC958_AES1_CON_MAGNETIC_ID|0x40)
83#define IEC958_AES1_CON_MAGNETIC_DISC (IEC958_AES1_CON_MAGNETIC_ID|0x18)
84#define IEC958_AES1_CON_MAGNETIC_OTHER (IEC958_AES1_CON_MAGNETIC_ID|0x78)
85#define IEC958_AES1_CON_BROADCAST1_MASK 0x07
86#define IEC958_AES1_CON_BROADCAST1_ID 0x04
87#define IEC958_AES1_CON_DAB_JAPAN (IEC958_AES1_CON_BROADCAST1_ID|0x00)
88#define IEC958_AES1_CON_DAB_EUROPE (IEC958_AES1_CON_BROADCAST1_ID|0x08)
89#define IEC958_AES1_CON_DAB_USA (IEC958_AES1_CON_BROADCAST1_ID|0x60)
90#define IEC958_AES1_CON_SOFTWARE (IEC958_AES1_CON_BROADCAST1_ID|0x40)
91#define IEC958_AES1_CON_IEC62105 (IEC958_AES1_CON_BROADCAST1_ID|0x20)
92#define IEC958_AES1_CON_BROADCAST1_OTHER (IEC958_AES1_CON_BROADCAST1_ID|0x78)
93#define IEC958_AES1_CON_BROADCAST2_MASK 0x0f
94#define IEC958_AES1_CON_BROADCAST2_ID 0x0e
95#define IEC958_AES1_CON_MUSICAL_MASK 0x07
96#define IEC958_AES1_CON_MUSICAL_ID 0x05
97#define IEC958_AES1_CON_SYNTHESIZER (IEC958_AES1_CON_MUSICAL_ID|0x00)
98#define IEC958_AES1_CON_MICROPHONE (IEC958_AES1_CON_MUSICAL_ID|0x08)
99#define IEC958_AES1_CON_MUSICAL_OTHER (IEC958_AES1_CON_MUSICAL_ID|0x78)
100#define IEC958_AES1_CON_ADC_MASK 0x1f
101#define IEC958_AES1_CON_ADC_ID 0x06
102#define IEC958_AES1_CON_ADC (IEC958_AES1_CON_ADC_ID|0x00)
103#define IEC958_AES1_CON_ADC_OTHER (IEC958_AES1_CON_ADC_ID|0x60)
104#define IEC958_AES1_CON_ADC_COPYRIGHT_MASK 0x1f
105#define IEC958_AES1_CON_ADC_COPYRIGHT_ID 0x16
106#define IEC958_AES1_CON_ADC_COPYRIGHT (IEC958_AES1_CON_ADC_COPYRIGHT_ID|0x00)
107#define IEC958_AES1_CON_ADC_COPYRIGHT_OTHER (IEC958_AES1_CON_ADC_COPYRIGHT_ID|0x60)
108#define IEC958_AES1_CON_SOLIDMEM_MASK 0x0f
109#define IEC958_AES1_CON_SOLIDMEM_ID 0x08
110#define IEC958_AES1_CON_SOLIDMEM_DIGITAL_RECORDER_PLAYER (IEC958_AES1_CON_SOLIDMEM_ID|0x00)
111#define IEC958_AES1_CON_SOLIDMEM_OTHER (IEC958_AES1_CON_SOLIDMEM_ID|0x70)
112#define IEC958_AES1_CON_EXPERIMENTAL 0x40
92#define IEC958_AES1_CON_ORIGINAL (1<<7) /* this bits depends on the category code */ 113#define IEC958_AES1_CON_ORIGINAL (1<<7) /* this bits depends on the category code */
93#define IEC958_AES2_PRO_SBITS (7<<0) /* mask - sample bits */ 114#define IEC958_AES2_PRO_SBITS (7<<0) /* mask - sample bits */
94#define IEC958_AES2_PRO_SBITS_20 (2<<0) /* 20-bit - coordination */ 115#define IEC958_AES2_PRO_SBITS_20 (2<<0) /* 20-bit - coordination */
@@ -106,8 +127,16 @@
106#define IEC958_AES2_CON_CHANNEL_UNSPEC (0<<4) /* unspecified */ 127#define IEC958_AES2_CON_CHANNEL_UNSPEC (0<<4) /* unspecified */
107#define IEC958_AES3_CON_FS (15<<0) /* mask - sample frequency */ 128#define IEC958_AES3_CON_FS (15<<0) /* mask - sample frequency */
108#define IEC958_AES3_CON_FS_44100 (0<<0) /* 44.1kHz */ 129#define IEC958_AES3_CON_FS_44100 (0<<0) /* 44.1kHz */
130#define IEC958_AES3_CON_FS_NOTID (1<<0) /* non indicated */
109#define IEC958_AES3_CON_FS_48000 (2<<0) /* 48kHz */ 131#define IEC958_AES3_CON_FS_48000 (2<<0) /* 48kHz */
110#define IEC958_AES3_CON_FS_32000 (3<<0) /* 32kHz */ 132#define IEC958_AES3_CON_FS_32000 (3<<0) /* 32kHz */
133#define IEC958_AES3_CON_FS_22050 (4<<0) /* 22.05kHz */
134#define IEC958_AES3_CON_FS_24000 (6<<0) /* 24kHz */
135#define IEC958_AES3_CON_FS_88200 (8<<0) /* 88.2kHz */
136#define IEC958_AES3_CON_FS_768000 (9<<0) /* 768kHz */
137#define IEC958_AES3_CON_FS_96000 (10<<0) /* 96kHz */
138#define IEC958_AES3_CON_FS_176400 (12<<0) /* 176.4kHz */
139#define IEC958_AES3_CON_FS_192000 (14<<0) /* 192kHz */
111#define IEC958_AES3_CON_CLOCK (3<<4) /* mask - clock accuracy */ 140#define IEC958_AES3_CON_CLOCK (3<<4) /* mask - clock accuracy */
112#define IEC958_AES3_CON_CLOCK_1000PPM (0<<4) /* 1000 ppm */ 141#define IEC958_AES3_CON_CLOCK_1000PPM (0<<4) /* 1000 ppm */
113#define IEC958_AES3_CON_CLOCK_50PPM (1<<4) /* 50 ppm */ 142#define IEC958_AES3_CON_CLOCK_50PPM (1<<4) /* 50 ppm */
@@ -120,6 +149,26 @@
120#define IEC958_AES4_CON_WORDLEN_23_19 (4<<1) /* 23-bit or 19-bit */ 149#define IEC958_AES4_CON_WORDLEN_23_19 (4<<1) /* 23-bit or 19-bit */
121#define IEC958_AES4_CON_WORDLEN_24_20 (5<<1) /* 24-bit or 20-bit */ 150#define IEC958_AES4_CON_WORDLEN_24_20 (5<<1) /* 24-bit or 20-bit */
122#define IEC958_AES4_CON_WORDLEN_21_17 (6<<1) /* 21-bit or 17-bit */ 151#define IEC958_AES4_CON_WORDLEN_21_17 (6<<1) /* 21-bit or 17-bit */
152#define IEC958_AES4_CON_ORIGFS (15<<4) /* mask - original sample frequency */
153#define IEC958_AES4_CON_ORIGFS_NOTID (0<<4) /* not indicated */
154#define IEC958_AES4_CON_ORIGFS_192000 (1<<4) /* 192kHz */
155#define IEC958_AES4_CON_ORIGFS_12000 (2<<4) /* 12kHz */
156#define IEC958_AES4_CON_ORIGFS_176400 (3<<4) /* 176.4kHz */
157#define IEC958_AES4_CON_ORIGFS_96000 (5<<4) /* 96kHz */
158#define IEC958_AES4_CON_ORIGFS_8000 (6<<4) /* 8kHz */
159#define IEC958_AES4_CON_ORIGFS_88200 (7<<4) /* 88.2kHz */
160#define IEC958_AES4_CON_ORIGFS_16000 (8<<4) /* 16kHz */
161#define IEC958_AES4_CON_ORIGFS_24000 (9<<4) /* 24kHz */
162#define IEC958_AES4_CON_ORIGFS_11025 (10<<4) /* 11.025kHz */
163#define IEC958_AES4_CON_ORIGFS_22050 (11<<4) /* 22.05kHz */
164#define IEC958_AES4_CON_ORIGFS_32000 (12<<4) /* 32kHz */
165#define IEC958_AES4_CON_ORIGFS_48000 (13<<4) /* 48kHz */
166#define IEC958_AES4_CON_ORIGFS_44100 (15<<4) /* 44.1kHz */
167#define IEC958_AES5_CON_CGMSA (3<<0) /* mask - CGMS-A */
168#define IEC958_AES5_CON_CGMSA_COPYFREELY (0<<0) /* copying is permitted without restriction */
169#define IEC958_AES5_CON_CGMSA_COPYONCE (1<<0) /* one generation of copies may be made */
170#define IEC958_AES5_CON_CGMSA_COPYNOMORE (2<<0) /* condition not be used */
171#define IEC958_AES5_CON_CGMSA_COPYNEVER (3<<0) /* no copying is permitted */
123 172
124/***************************************************************************** 173/*****************************************************************************
125 * * 174 * *