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

TOMOYO Linux Cross Reference
Linux/include/sound/ak4531_codec.h

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ 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.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /include/sound/ak4531_codec.h (Version linux-6.12-rc7) and /include/sound/ak4531_codec.h (Version linux-6.11.7)


  1 /* SPDX-License-Identifier: GPL-2.0-or-later *      1 /* SPDX-License-Identifier: GPL-2.0-or-later */
  2 #ifndef __SOUND_AK4531_CODEC_H                      2 #ifndef __SOUND_AK4531_CODEC_H
  3 #define __SOUND_AK4531_CODEC_H                      3 #define __SOUND_AK4531_CODEC_H
  4                                                     4 
  5 /*                                                  5 /*
  6  *  Copyright (c) by Jaroslav Kysela <perex@pe      6  *  Copyright (c) by Jaroslav Kysela <perex@perex.cz>
  7  *  Universal interface for Audio Codec '97         7  *  Universal interface for Audio Codec '97
  8  *                                                  8  *
  9  *  For more details look to AC '97 component       9  *  For more details look to AC '97 component specification revision 2.1
 10  *  by Intel Corporation (http://developer.int     10  *  by Intel Corporation (http://developer.intel.com).
 11  */                                                11  */
 12                                                    12 
 13 #include <sound/info.h>                            13 #include <sound/info.h>
 14 #include <sound/control.h>                         14 #include <sound/control.h>
 15                                                    15 
 16 /*                                                 16 /*
 17  *  ASAHI KASEI - AK4531 codec                     17  *  ASAHI KASEI - AK4531 codec
 18  *  - not really AC'97 codec, but it uses very     18  *  - not really AC'97 codec, but it uses very similar interface as AC'97
 19  */                                                19  */
 20                                                    20 
 21 /*                                                 21 /*
 22  *  AK4531 codec registers                         22  *  AK4531 codec registers
 23  */                                                23  */
 24                                                    24 
 25 #define AK4531_LMASTER  0x00    /* master volu     25 #define AK4531_LMASTER  0x00    /* master volume left */
 26 #define AK4531_RMASTER  0x01    /* master volu     26 #define AK4531_RMASTER  0x01    /* master volume right */
 27 #define AK4531_LVOICE   0x02    /* channel vol     27 #define AK4531_LVOICE   0x02    /* channel volume left */
 28 #define AK4531_RVOICE   0x03    /* channel vol     28 #define AK4531_RVOICE   0x03    /* channel volume right */
 29 #define AK4531_LFM      0x04    /* FM volume l     29 #define AK4531_LFM      0x04    /* FM volume left */
 30 #define AK4531_RFM      0x05    /* FM volume r     30 #define AK4531_RFM      0x05    /* FM volume right */
 31 #define AK4531_LCD      0x06    /* CD volume l     31 #define AK4531_LCD      0x06    /* CD volume left */
 32 #define AK4531_RCD      0x07    /* CD volume r     32 #define AK4531_RCD      0x07    /* CD volume right */
 33 #define AK4531_LLINE    0x08    /* LINE volume     33 #define AK4531_LLINE    0x08    /* LINE volume left */
 34 #define AK4531_RLINE    0x09    /* LINE volume     34 #define AK4531_RLINE    0x09    /* LINE volume right */
 35 #define AK4531_LAUXA    0x0a    /* AUXA volume     35 #define AK4531_LAUXA    0x0a    /* AUXA volume left */
 36 #define AK4531_RAUXA    0x0b    /* AUXA volume     36 #define AK4531_RAUXA    0x0b    /* AUXA volume right */
 37 #define AK4531_MONO1    0x0c    /* MONO1 volum     37 #define AK4531_MONO1    0x0c    /* MONO1 volume left */
 38 #define AK4531_MONO2    0x0d    /* MONO1 volum     38 #define AK4531_MONO2    0x0d    /* MONO1 volume right */
 39 #define AK4531_MIC      0x0e    /* MIC volume      39 #define AK4531_MIC      0x0e    /* MIC volume */
 40 #define AK4531_MONO_OUT 0x0f    /* Mono-out vo     40 #define AK4531_MONO_OUT 0x0f    /* Mono-out volume */
 41 #define AK4531_OUT_SW1  0x10    /* Output mixe     41 #define AK4531_OUT_SW1  0x10    /* Output mixer switch 1 */
 42 #define AK4531_OUT_SW2  0x11    /* Output mixe     42 #define AK4531_OUT_SW2  0x11    /* Output mixer switch 2 */
 43 #define AK4531_LIN_SW1  0x12    /* Input left      43 #define AK4531_LIN_SW1  0x12    /* Input left mixer switch 1 */
 44 #define AK4531_RIN_SW1  0x13    /* Input right     44 #define AK4531_RIN_SW1  0x13    /* Input right mixer switch 1 */
 45 #define AK4531_LIN_SW2  0x14    /* Input left      45 #define AK4531_LIN_SW2  0x14    /* Input left mixer switch 2 */
 46 #define AK4531_RIN_SW2  0x15    /* Input right     46 #define AK4531_RIN_SW2  0x15    /* Input right mixer switch 2 */
 47 #define AK4531_RESET    0x16    /* Reset & pow     47 #define AK4531_RESET    0x16    /* Reset & power down */
 48 #define AK4531_CLOCK    0x17    /* Clock selec     48 #define AK4531_CLOCK    0x17    /* Clock select */
 49 #define AK4531_AD_IN    0x18    /* AD input se     49 #define AK4531_AD_IN    0x18    /* AD input select */
 50 #define AK4531_MIC_GAIN 0x19    /* MIC amplifi     50 #define AK4531_MIC_GAIN 0x19    /* MIC amplified gain */
 51                                                    51 
 52 struct snd_ak4531 {                                52 struct snd_ak4531 {
 53         void (*write) (struct snd_ak4531 *ak45     53         void (*write) (struct snd_ak4531 *ak4531, unsigned short reg,
 54                        unsigned short val);        54                        unsigned short val);
 55         void *private_data;                        55         void *private_data;
 56         void (*private_free) (struct snd_ak453     56         void (*private_free) (struct snd_ak4531 *ak4531);
 57         /* --- */                                  57         /* --- */
 58         unsigned char regs[0x20];                  58         unsigned char regs[0x20];
 59         struct mutex reg_mutex;                    59         struct mutex reg_mutex;
 60 };                                                 60 };
 61                                                    61 
 62 int snd_ak4531_mixer(struct snd_card *card, st     62 int snd_ak4531_mixer(struct snd_card *card, struct snd_ak4531 *_ak4531,
 63                      struct snd_ak4531 **rak45     63                      struct snd_ak4531 **rak4531);
 64                                                    64 
 65 #ifdef CONFIG_PM                                   65 #ifdef CONFIG_PM
 66 void snd_ak4531_suspend(struct snd_ak4531 *ak4     66 void snd_ak4531_suspend(struct snd_ak4531 *ak4531);
 67 void snd_ak4531_resume(struct snd_ak4531 *ak45     67 void snd_ak4531_resume(struct snd_ak4531 *ak4531);
 68 #else                                              68 #else
 69 static inline void snd_ak4531_suspend(struct s     69 static inline void snd_ak4531_suspend(struct snd_ak4531 *ak4531) {}
 70 static inline void snd_ak4531_resume(struct sn     70 static inline void snd_ak4531_resume(struct snd_ak4531 *ak4531) {}
 71 #endif                                             71 #endif
 72                                                    72 
 73 #endif /* __SOUND_AK4531_CODEC_H */                73 #endif /* __SOUND_AK4531_CODEC_H */
 74                                                    74 

~ [ 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