Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions | Variables
wm_hubs.c File Reference
#include <linux/module.h>
#include <linux/moduleparam.h>
#include <linux/init.h>
#include <linux/delay.h>
#include <linux/pm.h>
#include <linux/i2c.h>
#include <linux/mfd/wm8994/registers.h>
#include <sound/core.h>
#include <sound/pcm.h>
#include <sound/pcm_params.h>
#include <sound/soc.h>
#include <sound/initval.h>
#include <sound/tlv.h>
#include "wm8993.h"
#include "wm_hubs.h"

Go to the source code of this file.

Data Structures

struct  wm_hubs_dcs_cache
 

Macros

#define WM_HUBS_SINGLE_W(xname, reg, shift, max, invert)
 
#define WM_HUBS_ENUM_W(xname, xenum)
 

Functions

const DECLARE_TLV_DB_SCALE (wm_hubs_spkmix_tlv,-300, 300, 0)
 
 EXPORT_SYMBOL_GPL (wm_hubs_spkmix_tlv)
 
irqreturn_t wm_hubs_dcs_done (int irq, void *data)
 
 EXPORT_SYMBOL_GPL (wm_hubs_dcs_done)
 
void wm_hubs_update_class_w (struct snd_soc_codec *codec)
 
 EXPORT_SYMBOL_GPL (wm_hubs_update_class_w)
 
 EXPORT_SYMBOL_GPL (wm_hubs_hpl_mux)
 
 EXPORT_SYMBOL_GPL (wm_hubs_hpr_mux)
 
int wm_hubs_add_analogue_controls (struct snd_soc_codec *codec)
 
 EXPORT_SYMBOL_GPL (wm_hubs_add_analogue_controls)
 
int wm_hubs_add_analogue_routes (struct snd_soc_codec *codec, int lineout1_diff, int lineout2_diff)
 
 EXPORT_SYMBOL_GPL (wm_hubs_add_analogue_routes)
 
int wm_hubs_handle_analogue_pdata (struct snd_soc_codec *codec, int lineout1_diff, int lineout2_diff, int lineout1fb, int lineout2fb, int jd_scthr, int jd_thr, int micbias1_delay, int micbias2_delay, int micbias1_lvl, int micbias2_lvl)
 
 EXPORT_SYMBOL_GPL (wm_hubs_handle_analogue_pdata)
 
void wm_hubs_vmid_ena (struct snd_soc_codec *codec)
 
 EXPORT_SYMBOL_GPL (wm_hubs_vmid_ena)
 
void wm_hubs_set_bias_level (struct snd_soc_codec *codec, enum snd_soc_bias_level level)
 
 EXPORT_SYMBOL_GPL (wm_hubs_set_bias_level)
 
 MODULE_DESCRIPTION ("Shared support for Wolfson hubs products")
 
 MODULE_AUTHOR ("Mark Brown <[email protected]>")
 
 MODULE_LICENSE ("GPL")
 

Variables

struct snd_kcontrol_new wm_hubs_hpl_mux
 
struct snd_kcontrol_new wm_hubs_hpr_mux
 

Macro Definition Documentation

#define WM_HUBS_ENUM_W (   xname,
  xenum 
)
Value:
{ .iface = SNDRV_CTL_ELEM_IFACE_MIXER, .name = xname, \
.put = class_w_put_double, \
.private_value = (unsigned long)&xenum }

Definition at line 713 of file wm_hubs.c.

#define WM_HUBS_SINGLE_W (   xname,
  reg,
  shift,
  max,
  invert 
)
Value:
{ .iface = SNDRV_CTL_ELEM_IFACE_MIXER, .name = xname, \
.info = snd_soc_info_volsw, \
.get = snd_soc_dapm_get_volsw, .put = class_w_put_volsw, \
.private_value = SOC_SINGLE_VALUE(reg, shift, max, invert) }

Definition at line 692 of file wm_hubs.c.

Function Documentation

const DECLARE_TLV_DB_SCALE ( wm_hubs_spkmix_tlv  ,
300,
300  ,
 
)
EXPORT_SYMBOL_GPL ( wm_hubs_spkmix_tlv  )
EXPORT_SYMBOL_GPL ( wm_hubs_dcs_done  )
EXPORT_SYMBOL_GPL ( wm_hubs_update_class_w  )
EXPORT_SYMBOL_GPL ( wm_hubs_hpl_mux  )
EXPORT_SYMBOL_GPL ( wm_hubs_hpr_mux  )
EXPORT_SYMBOL_GPL ( wm_hubs_add_analogue_controls  )
EXPORT_SYMBOL_GPL ( wm_hubs_add_analogue_routes  )
EXPORT_SYMBOL_GPL ( wm_hubs_handle_analogue_pdata  )
EXPORT_SYMBOL_GPL ( wm_hubs_vmid_ena  )
EXPORT_SYMBOL_GPL ( wm_hubs_set_bias_level  )
MODULE_AUTHOR ( "Mark Brown <[email protected]>"  )
MODULE_DESCRIPTION ( "Shared support for Wolfson hubs products"  )
MODULE_LICENSE ( "GPL"  )
int wm_hubs_add_analogue_controls ( struct snd_soc_codec codec)

Definition at line 1121 of file wm_hubs.c.

int wm_hubs_add_analogue_routes ( struct snd_soc_codec codec,
int  lineout1_diff,
int  lineout2_diff 
)

Definition at line 1163 of file wm_hubs.c.

irqreturn_t wm_hubs_dcs_done ( int  irq,
void data 
)

Definition at line 102 of file wm_hubs.c.

int wm_hubs_handle_analogue_pdata ( struct snd_soc_codec codec,
int  lineout1_diff,
int  lineout2_diff,
int  lineout1fb,
int  lineout2fb,
int  jd_scthr,
int  jd_thr,
int  micbias1_delay,
int  micbias2_delay,
int  micbias1_lvl,
int  micbias2_lvl 
)

Definition at line 1199 of file wm_hubs.c.

void wm_hubs_set_bias_level ( struct snd_soc_codec codec,
enum snd_soc_bias_level  level 
)

Definition at line 1263 of file wm_hubs.c.

void wm_hubs_update_class_w ( struct snd_soc_codec codec)

Definition at line 669 of file wm_hubs.c.

void wm_hubs_vmid_ena ( struct snd_soc_codec codec)

Definition at line 1247 of file wm_hubs.c.

Variable Documentation

struct snd_kcontrol_new wm_hubs_hpl_mux
Initial value:
=
WM_HUBS_ENUM_W("Left Headphone Mux", hpl_enum)

Definition at line 743 of file wm_hubs.c.

struct snd_kcontrol_new wm_hubs_hpr_mux
Initial value:
=
WM_HUBS_ENUM_W("Right Headphone Mux", hpr_enum)

Definition at line 750 of file wm_hubs.c.