Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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>

authored by

Pawel MOLL and committed by
Jaroslav Kysela
687fbc3f 94239690

+69 -20
+69 -20
include/sound/asoundef.h
··· 60 60 #define IEC958_AES1_PRO_USERBITS_UDEF (12<<4) /* user defined application */ 61 61 #define IEC958_AES1_CON_CATEGORY 0x7f 62 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 63 #define IEC958_AES1_CON_LASEROPT_MASK 0x07 77 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 65 #define IEC958_AES1_CON_IEC908_CD (IEC958_AES1_CON_LASEROPT_ID|0x00) 83 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 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 73 #define IEC958_AES1_CON_MIXER (IEC958_AES1_CON_DIGDIGCONV_ID|0x10) 87 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) 89 - #define IEC958_AES1_CON_MICROPHONE (IEC958_AES1_CON_MUSICAL_ID|0x08) 75 + #define IEC958_AES1_CON_SAMPLER (IEC958_AES1_CON_DIGDIGCONV_ID|0x20) 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 80 #define IEC958_AES1_CON_DAT (IEC958_AES1_CON_MAGNETIC_ID|0x00) 91 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 113 #define IEC958_AES1_CON_ORIGINAL (1<<7) /* this bits depends on the category code */ 93 114 #define IEC958_AES2_PRO_SBITS (7<<0) /* mask - sample bits */ 94 115 #define IEC958_AES2_PRO_SBITS_20 (2<<0) /* 20-bit - coordination */ ··· 127 106 #define IEC958_AES2_CON_CHANNEL_UNSPEC (0<<4) /* unspecified */ 128 107 #define IEC958_AES3_CON_FS (15<<0) /* mask - sample frequency */ 129 108 #define IEC958_AES3_CON_FS_44100 (0<<0) /* 44.1kHz */ 109 + #define IEC958_AES3_CON_FS_NOTID (1<<0) /* non indicated */ 130 110 #define IEC958_AES3_CON_FS_48000 (2<<0) /* 48kHz */ 131 111 #define IEC958_AES3_CON_FS_32000 (3<<0) /* 32kHz */ 112 + #define IEC958_AES3_CON_FS_22050 (4<<0) /* 22.05kHz */ 113 + #define IEC958_AES3_CON_FS_24000 (6<<0) /* 24kHz */ 114 + #define IEC958_AES3_CON_FS_88200 (8<<0) /* 88.2kHz */ 115 + #define IEC958_AES3_CON_FS_768000 (9<<0) /* 768kHz */ 116 + #define IEC958_AES3_CON_FS_96000 (10<<0) /* 96kHz */ 117 + #define IEC958_AES3_CON_FS_176400 (12<<0) /* 176.4kHz */ 118 + #define IEC958_AES3_CON_FS_192000 (14<<0) /* 192kHz */ 132 119 #define IEC958_AES3_CON_CLOCK (3<<4) /* mask - clock accuracy */ 133 120 #define IEC958_AES3_CON_CLOCK_1000PPM (0<<4) /* 1000 ppm */ 134 121 #define IEC958_AES3_CON_CLOCK_50PPM (1<<4) /* 50 ppm */ ··· 149 120 #define IEC958_AES4_CON_WORDLEN_23_19 (4<<1) /* 23-bit or 19-bit */ 150 121 #define IEC958_AES4_CON_WORDLEN_24_20 (5<<1) /* 24-bit or 20-bit */ 151 122 #define IEC958_AES4_CON_WORDLEN_21_17 (6<<1) /* 21-bit or 17-bit */ 123 + #define IEC958_AES4_CON_ORIGFS (15<<4) /* mask - original sample frequency */ 124 + #define IEC958_AES4_CON_ORIGFS_NOTID (0<<4) /* not indicated */ 125 + #define IEC958_AES4_CON_ORIGFS_192000 (1<<4) /* 192kHz */ 126 + #define IEC958_AES4_CON_ORIGFS_12000 (2<<4) /* 12kHz */ 127 + #define IEC958_AES4_CON_ORIGFS_176400 (3<<4) /* 176.4kHz */ 128 + #define IEC958_AES4_CON_ORIGFS_96000 (5<<4) /* 96kHz */ 129 + #define IEC958_AES4_CON_ORIGFS_8000 (6<<4) /* 8kHz */ 130 + #define IEC958_AES4_CON_ORIGFS_88200 (7<<4) /* 88.2kHz */ 131 + #define IEC958_AES4_CON_ORIGFS_16000 (8<<4) /* 16kHz */ 132 + #define IEC958_AES4_CON_ORIGFS_24000 (9<<4) /* 24kHz */ 133 + #define IEC958_AES4_CON_ORIGFS_11025 (10<<4) /* 11.025kHz */ 134 + #define IEC958_AES4_CON_ORIGFS_22050 (11<<4) /* 22.05kHz */ 135 + #define IEC958_AES4_CON_ORIGFS_32000 (12<<4) /* 32kHz */ 136 + #define IEC958_AES4_CON_ORIGFS_48000 (13<<4) /* 48kHz */ 137 + #define IEC958_AES4_CON_ORIGFS_44100 (15<<4) /* 44.1kHz */ 138 + #define IEC958_AES5_CON_CGMSA (3<<0) /* mask - CGMS-A */ 139 + #define IEC958_AES5_CON_CGMSA_COPYFREELY (0<<0) /* copying is permitted without restriction */ 140 + #define IEC958_AES5_CON_CGMSA_COPYONCE (1<<0) /* one generation of copies may be made */ 141 + #define IEC958_AES5_CON_CGMSA_COPYNOMORE (2<<0) /* condition not be used */ 142 + #define IEC958_AES5_CON_CGMSA_COPYNEVER (3<<0) /* no copying is permitted */ 152 143 153 144 /***************************************************************************** 154 145 * *