aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mfd/wm8994
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/mfd/wm8994')
-rw-r--r--include/linux/mfd/wm8994/pdata.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/include/linux/mfd/wm8994/pdata.h b/include/linux/mfd/wm8994/pdata.h
index 466b1c777aff..c72174aff1fe 100644
--- a/include/linux/mfd/wm8994/pdata.h
+++ b/include/linux/mfd/wm8994/pdata.h
@@ -32,6 +32,9 @@ struct wm8994_ldo_pdata {
32#define WM8994_EQ_REGS 20 32#define WM8994_EQ_REGS 20
33#define WM8958_MBC_CUTOFF_REGS 20 33#define WM8958_MBC_CUTOFF_REGS 20
34#define WM8958_MBC_COEFF_REGS 48 34#define WM8958_MBC_COEFF_REGS 48
35#define WM8958_MBC_COMBINED_REGS 56
36#define WM8958_VSS_HPF_REGS 2
37#define WM8958_VSS_REGS 148
35 38
36/** 39/**
37 * DRC configurations are specified with a label and a set of register 40 * DRC configurations are specified with a label and a set of register
@@ -71,6 +74,31 @@ struct wm8958_mbc_cfg {
71 const char *name; 74 const char *name;
72 u16 cutoff_regs[WM8958_MBC_CUTOFF_REGS]; 75 u16 cutoff_regs[WM8958_MBC_CUTOFF_REGS];
73 u16 coeff_regs[WM8958_MBC_COEFF_REGS]; 76 u16 coeff_regs[WM8958_MBC_COEFF_REGS];
77
78 /* Coefficient layout when using MBC+VSS firmware */
79 u16 combined_regs[WM8958_MBC_COMBINED_REGS];
80};
81
82/**
83 * VSS HPF configurations are specified with a label and two values to
84 * write. Configurations are expected to be generated using the
85 * multiband compressor configuration panel in WISCE - see
86 * http://www.wolfsonmicro.com/wisce/
87 */
88struct wm8958_vss_hpf_cfg {
89 const char *name;
90 u16 regs[WM8958_VSS_HPF_REGS];
91};
92
93/**
94 * VSS configurations are specified with a label and array of values
95 * to write. Configurations are expected to be generated using the
96 * multiband compressor configuration panel in WISCE - see
97 * http://www.wolfsonmicro.com/wisce/
98 */
99struct wm8958_vss_cfg {
100 const char *name;
101 u16 regs[WM8958_VSS_REGS];
74}; 102};
75 103
76struct wm8994_pdata { 104struct wm8994_pdata {
@@ -95,6 +123,12 @@ struct wm8994_pdata {
95 int num_mbc_cfgs; 123 int num_mbc_cfgs;
96 struct wm8958_mbc_cfg *mbc_cfgs; 124 struct wm8958_mbc_cfg *mbc_cfgs;
97 125
126 int num_vss_cfgs;
127 struct wm8958_vss_cfg *vss_cfgs;
128
129 int num_vss_hpf_cfgs;
130 struct wm8958_vss_hpf_cfg *vss_hpf_cfgs;
131
98 /* LINEOUT can be differential or single ended */ 132 /* LINEOUT can be differential or single ended */
99 unsigned int lineout1_diff:1; 133 unsigned int lineout1_diff:1;
100 unsigned int lineout2_diff:1; 134 unsigned int lineout2_diff:1;