Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions
ctmixer.c File Reference
#include "ctmixer.h"
#include "ctamixer.h"
#include <linux/slab.h>
#include <sound/core.h>
#include <sound/control.h>
#include <sound/asoundef.h>
#include <sound/pcm.h>
#include <sound/tlv.h>

Go to the source code of this file.

Data Structures

struct  ct_kcontrol_init
 

Macros

#define VOL_MIXER_START   MIXER_MASTER_P
 
#define VOL_MIXER_END   MIXER_SPDIFI_C
 
#define VOL_MIXER_NUM   (VOL_MIXER_END - VOL_MIXER_START + 1)
 
#define SWH_MIXER_START   MIXER_PCM_C_S
 
#define SWH_MIXER_END   MIXER_DIGITAL_IO_S
 
#define SWH_CAPTURE_START   MIXER_PCM_C_S
 
#define SWH_CAPTURE_END   MIXER_SPDIFI_C_S
 
#define CHN_NUM   2
 
#define VOL_SCALE   0x1c
 
#define VOL_MAX   0x100
 
#define NUM_IEC958_CTL   3
 

Enumerations

enum  CT_SUM_CTL {
  SUM_IN_F, SUM_IN_R, SUM_IN_C, SUM_IN_S,
  SUM_IN_F_C, NUM_CT_SUMS
}
 
enum  CT_AMIXER_CTL {
  AMIXER_MASTER_F, AMIXER_MASTER_R, AMIXER_MASTER_C, AMIXER_MASTER_S,
  AMIXER_PCM_F, AMIXER_PCM_R, AMIXER_PCM_C, AMIXER_PCM_S,
  AMIXER_SPDIFI, AMIXER_LINEIN, AMIXER_MIC, AMIXER_SPDIFO,
  AMIXER_WAVE_F, AMIXER_WAVE_R, AMIXER_WAVE_C, AMIXER_WAVE_S,
  AMIXER_MASTER_F_C, AMIXER_PCM_F_C, AMIXER_SPDIFI_C, AMIXER_LINEIN_C,
  AMIXER_MIC_C, NUM_CT_AMIXERS
}
 
enum  CTALSA_MIXER_CTL {
  MIXER_MASTER_P, MIXER_PCM_P, MIXER_LINEIN_P, MIXER_MIC_P,
  MIXER_SPDIFI_P, MIXER_SPDIFO_P, MIXER_WAVEF_P, MIXER_WAVER_P,
  MIXER_WAVEC_P, MIXER_WAVES_P, MIXER_MASTER_C, MIXER_PCM_C,
  MIXER_LINEIN_C, MIXER_MIC_C, MIXER_SPDIFI_C, MIXER_PCM_C_S,
  MIXER_LINEIN_C_S, MIXER_MIC_C_S, MIXER_SPDIFI_C_S, MIXER_SPDIFO_P_S,
  MIXER_WAVEF_P_S, MIXER_WAVER_P_S, MIXER_WAVEC_P_S, MIXER_WAVES_P_S,
  MIXER_DIGITAL_IO_S, MIXER_IEC958_MASK, MIXER_IEC958_DEFAULT, MIXER_IEC958_STREAM,
  NUM_CTALSA_MIXERS
}
 

Functions

int ct_mixer_destroy (struct ct_mixer *mixer)
 
int ct_mixer_create (struct ct_atc *atc, struct ct_mixer **rmixer)
 
int ct_alsa_mix_create (struct ct_atc *atc, enum CTALSADEVS device, const char *device_name)
 

Macro Definition Documentation

#define CHN_NUM   2

Definition at line 111 of file ctmixer.c.

#define NUM_IEC958_CTL   3

Definition at line 707 of file ctmixer.c.

#define SWH_CAPTURE_END   MIXER_SPDIFI_C_S

Definition at line 109 of file ctmixer.c.

#define SWH_CAPTURE_START   MIXER_PCM_C_S

Definition at line 108 of file ctmixer.c.

#define SWH_MIXER_END   MIXER_DIGITAL_IO_S

Definition at line 107 of file ctmixer.c.

#define SWH_MIXER_START   MIXER_PCM_C_S

Definition at line 106 of file ctmixer.c.

#define VOL_MAX   0x100

Definition at line 330 of file ctmixer.c.

#define VOL_MIXER_END   MIXER_SPDIFI_C

Definition at line 104 of file ctmixer.c.

#define VOL_MIXER_NUM   (VOL_MIXER_END - VOL_MIXER_START + 1)

Definition at line 105 of file ctmixer.c.

#define VOL_MIXER_START   MIXER_MASTER_P

Definition at line 103 of file ctmixer.c.

#define VOL_SCALE   0x1c

Definition at line 329 of file ctmixer.c.

Enumeration Type Documentation

Enumerator:
AMIXER_MASTER_F 
AMIXER_MASTER_R 
AMIXER_MASTER_C 
AMIXER_MASTER_S 
AMIXER_PCM_F 
AMIXER_PCM_R 
AMIXER_PCM_C 
AMIXER_PCM_S 
AMIXER_SPDIFI 
AMIXER_LINEIN 
AMIXER_MIC 
AMIXER_SPDIFO 
AMIXER_WAVE_F 
AMIXER_WAVE_R 
AMIXER_WAVE_C 
AMIXER_WAVE_S 
AMIXER_MASTER_F_C 
AMIXER_PCM_F_C 
AMIXER_SPDIFI_C 
AMIXER_LINEIN_C 
AMIXER_MIC_C 
NUM_CT_AMIXERS 

Definition at line 38 of file ctmixer.c.

enum CT_SUM_CTL

Copyright (C) 2008, Creative Technology Ltd. All Rights Reserved.

This source file is released under GPL v2 license (no other versions). See the COPYING file included in the main directory of this source distribution for the license terms and conditions.

ctmixer.c

This file contains the implementation of alsa mixer device functions.

Liu Chun May 28 2008

Enumerator:
SUM_IN_F 
SUM_IN_R 
SUM_IN_C 
SUM_IN_S 
SUM_IN_F_C 
NUM_CT_SUMS 

Definition at line 28 of file ctmixer.c.

Enumerator:
MIXER_MASTER_P 
MIXER_PCM_P 
MIXER_LINEIN_P 
MIXER_MIC_P 
MIXER_SPDIFI_P 
MIXER_SPDIFO_P 
MIXER_WAVEF_P 
MIXER_WAVER_P 
MIXER_WAVEC_P 
MIXER_WAVES_P 
MIXER_MASTER_C 
MIXER_PCM_C 
MIXER_LINEIN_C 
MIXER_MIC_C 
MIXER_SPDIFI_C 
MIXER_PCM_C_S 
MIXER_LINEIN_C_S 
MIXER_MIC_C_S 
MIXER_SPDIFI_C_S 
MIXER_SPDIFO_P_S 
MIXER_WAVEF_P_S 
MIXER_WAVER_P_S 
MIXER_WAVEC_P_S 
MIXER_WAVES_P_S 
MIXER_DIGITAL_IO_S 
MIXER_IEC958_MASK 
MIXER_IEC958_DEFAULT 
MIXER_IEC958_STREAM 
NUM_CTALSA_MIXERS 

Definition at line 66 of file ctmixer.c.

Function Documentation

int ct_alsa_mix_create ( struct ct_atc atc,
enum CTALSADEVS  device,
const char device_name 
)

Definition at line 1212 of file ctmixer.c.

int ct_mixer_create ( struct ct_atc atc,
struct ct_mixer **  rmixer 
)

Definition at line 1173 of file ctmixer.c.

int ct_mixer_destroy ( struct ct_mixer mixer)

Definition at line 1143 of file ctmixer.c.