diff options
-rw-r--r-- | sound/pci/oxygen/oxygen.c | 42 | ||||
-rw-r--r-- | sound/pci/oxygen/wm8785.h | 45 |
2 files changed, 46 insertions, 41 deletions
diff --git a/sound/pci/oxygen/oxygen.c b/sound/pci/oxygen/oxygen.c index 9a9941bb0460..542752442a95 100644 --- a/sound/pci/oxygen/oxygen.c +++ b/sound/pci/oxygen/oxygen.c | |||
@@ -40,6 +40,7 @@ | |||
40 | #include "oxygen.h" | 40 | #include "oxygen.h" |
41 | #include "ak4396.h" | 41 | #include "ak4396.h" |
42 | #include "cm9780.h" | 42 | #include "cm9780.h" |
43 | #include "wm8785.h" | ||
43 | 44 | ||
44 | MODULE_AUTHOR("Clemens Ladisch <clemens@ladisch.de>"); | 45 | MODULE_AUTHOR("Clemens Ladisch <clemens@ladisch.de>"); |
45 | MODULE_DESCRIPTION("C-Media CMI8788 driver"); | 46 | MODULE_DESCRIPTION("C-Media CMI8788 driver"); |
@@ -80,47 +81,6 @@ MODULE_DEVICE_TABLE(pci, oxygen_ids); | |||
80 | 81 | ||
81 | #define GPIO_LINE_MUTE CM9780_GPO0 | 82 | #define GPIO_LINE_MUTE CM9780_GPO0 |
82 | 83 | ||
83 | #define WM8785_R0 0 | ||
84 | #define WM8785_R1 1 | ||
85 | #define WM8785_R2 2 | ||
86 | #define WM8785_R7 7 | ||
87 | |||
88 | /* R0 */ | ||
89 | #define WM8785_MCR_MASK 0x007 | ||
90 | #define WM8785_MCR_SLAVE 0x000 | ||
91 | #define WM8785_MCR_MASTER_128 0x001 | ||
92 | #define WM8785_MCR_MASTER_192 0x002 | ||
93 | #define WM8785_MCR_MASTER_256 0x003 | ||
94 | #define WM8785_MCR_MASTER_384 0x004 | ||
95 | #define WM8785_MCR_MASTER_512 0x005 | ||
96 | #define WM8785_MCR_MASTER_768 0x006 | ||
97 | #define WM8785_OSR_MASK 0x018 | ||
98 | #define WM8785_OSR_SINGLE 0x000 | ||
99 | #define WM8785_OSR_DOUBLE 0x008 | ||
100 | #define WM8785_OSR_QUAD 0x010 | ||
101 | #define WM8785_FORMAT_MASK 0x060 | ||
102 | #define WM8785_FORMAT_RJUST 0x000 | ||
103 | #define WM8785_FORMAT_LJUST 0x020 | ||
104 | #define WM8785_FORMAT_I2S 0x040 | ||
105 | #define WM8785_FORMAT_DSP 0x060 | ||
106 | /* R1 */ | ||
107 | #define WM8785_WL_MASK 0x003 | ||
108 | #define WM8785_WL_16 0x000 | ||
109 | #define WM8785_WL_20 0x001 | ||
110 | #define WM8785_WL_24 0x002 | ||
111 | #define WM8785_WL_32 0x003 | ||
112 | #define WM8785_LRP 0x004 | ||
113 | #define WM8785_BCLKINV 0x008 | ||
114 | #define WM8785_LRSWAP 0x010 | ||
115 | #define WM8785_DEVNO_MASK 0x0e0 | ||
116 | /* R2 */ | ||
117 | #define WM8785_HPFR 0x001 | ||
118 | #define WM8785_HPFL 0x002 | ||
119 | #define WM8785_SDODIS 0x004 | ||
120 | #define WM8785_PWRDNR 0x008 | ||
121 | #define WM8785_PWRDNL 0x010 | ||
122 | #define WM8785_TDM_MASK 0x1c0 | ||
123 | |||
124 | struct generic_data { | 84 | struct generic_data { |
125 | u8 ak4396_ctl2; | 85 | u8 ak4396_ctl2; |
126 | }; | 86 | }; |
diff --git a/sound/pci/oxygen/wm8785.h b/sound/pci/oxygen/wm8785.h new file mode 100644 index 000000000000..8c23e315ae66 --- /dev/null +++ b/sound/pci/oxygen/wm8785.h | |||
@@ -0,0 +1,45 @@ | |||
1 | #ifndef WM8785_H_INCLUDED | ||
2 | #define WM8785_H_INCLUDED | ||
3 | |||
4 | #define WM8785_R0 0 | ||
5 | #define WM8785_R1 1 | ||
6 | #define WM8785_R2 2 | ||
7 | #define WM8785_R7 7 | ||
8 | |||
9 | /* R0 */ | ||
10 | #define WM8785_MCR_MASK 0x007 | ||
11 | #define WM8785_MCR_SLAVE 0x000 | ||
12 | #define WM8785_MCR_MASTER_128 0x001 | ||
13 | #define WM8785_MCR_MASTER_192 0x002 | ||
14 | #define WM8785_MCR_MASTER_256 0x003 | ||
15 | #define WM8785_MCR_MASTER_384 0x004 | ||
16 | #define WM8785_MCR_MASTER_512 0x005 | ||
17 | #define WM8785_MCR_MASTER_768 0x006 | ||
18 | #define WM8785_OSR_MASK 0x018 | ||
19 | #define WM8785_OSR_SINGLE 0x000 | ||
20 | #define WM8785_OSR_DOUBLE 0x008 | ||
21 | #define WM8785_OSR_QUAD 0x010 | ||
22 | #define WM8785_FORMAT_MASK 0x060 | ||
23 | #define WM8785_FORMAT_RJUST 0x000 | ||
24 | #define WM8785_FORMAT_LJUST 0x020 | ||
25 | #define WM8785_FORMAT_I2S 0x040 | ||
26 | #define WM8785_FORMAT_DSP 0x060 | ||
27 | /* R1 */ | ||
28 | #define WM8785_WL_MASK 0x003 | ||
29 | #define WM8785_WL_16 0x000 | ||
30 | #define WM8785_WL_20 0x001 | ||
31 | #define WM8785_WL_24 0x002 | ||
32 | #define WM8785_WL_32 0x003 | ||
33 | #define WM8785_LRP 0x004 | ||
34 | #define WM8785_BCLKINV 0x008 | ||
35 | #define WM8785_LRSWAP 0x010 | ||
36 | #define WM8785_DEVNO_MASK 0x0e0 | ||
37 | /* R2 */ | ||
38 | #define WM8785_HPFR 0x001 | ||
39 | #define WM8785_HPFL 0x002 | ||
40 | #define WM8785_SDODIS 0x004 | ||
41 | #define WM8785_PWRDNR 0x008 | ||
42 | #define WM8785_PWRDNL 0x010 | ||
43 | #define WM8785_TDM_MASK 0x1c0 | ||
44 | |||
45 | #endif | ||