Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
sound
soc
codecs
wm_hubs.h
Go to the documentation of this file.
1
/*
2
* wm_hubs.h -- WM899x common code
3
*
4
* Copyright 2009 Wolfson Microelectronics plc
5
*
6
* Author: Mark Brown <
[email protected]
>
7
*
8
*
9
* This program is free software; you can redistribute it and/or modify
10
* it under the terms of the GNU General Public License version 2 as
11
* published by the Free Software Foundation.
12
*/
13
14
#ifndef _WM_HUBS_H
15
#define _WM_HUBS_H
16
17
#include <
linux/completion.h
>
18
#include <
linux/interrupt.h
>
19
#include <linux/list.h>
20
#include <
sound/control.h
>
21
22
struct
snd_soc_codec
;
23
24
extern
const
unsigned
int
wm_hubs_spkmix_tlv
[];
25
26
/* This *must* be the first element of the codec->private_data struct */
27
struct
wm_hubs_data
{
28
int
dcs_codes_l
;
29
int
dcs_codes_r
;
30
int
dcs_readback_mode
;
31
int
hp_startup_mode
;
32
int
series_startup
;
33
int
no_series_update
;
34
35
bool
no_cache_dac_hp_direct
;
36
struct
list_head
dcs_cache
;
37
bool
(*
check_class_w_digital
)(
struct
snd_soc_codec
*);
38
39
int
micb1_delay
;
40
int
micb2_delay
;
41
42
bool
lineout1_se
;
43
bool
lineout1n_ena
;
44
bool
lineout1p_ena
;
45
46
bool
lineout2_se
;
47
bool
lineout2n_ena
;
48
bool
lineout2p_ena
;
49
50
bool
dcs_done_irq
;
51
struct
completion
dcs_done
;
52
53
struct
snd_soc_codec
*
codec
;
54
};
55
56
extern
int
wm_hubs_add_analogue_controls
(
struct
snd_soc_codec
*);
57
extern
int
wm_hubs_add_analogue_routes
(
struct
snd_soc_codec
*,
int
,
int
);
58
extern
int
wm_hubs_handle_analogue_pdata
(
struct
snd_soc_codec
*,
59
int
lineout1_diff,
int
lineout2_diff,
60
int
lineout1fb,
int
lineout2fb,
61
int
jd_scthr,
int
jd_thr,
62
int
micbias1_dly,
int
micbias2_dly,
63
int
micbias1_lvl,
int
micbias2_lvl);
64
65
extern
irqreturn_t
wm_hubs_dcs_done
(
int
irq,
void
*
data
);
66
extern
void
wm_hubs_vmid_ena
(
struct
snd_soc_codec
*
codec
);
67
extern
void
wm_hubs_set_bias_level
(
struct
snd_soc_codec
*
codec
,
68
enum
snd_soc_bias_level
level
);
69
extern
void
wm_hubs_update_class_w
(
struct
snd_soc_codec
*
codec
);
70
71
extern
const
struct
snd_kcontrol_new
wm_hubs_hpl_mux
;
72
extern
const
struct
snd_kcontrol_new
wm_hubs_hpr_mux
;
73
74
#endif
Generated on Thu Jan 10 2013 15:08:08 for Linux Kernel by
1.8.2