Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions
pcxhr.h File Reference
#include <linux/interrupt.h>
#include <linux/mutex.h>
#include <sound/pcm.h>

Go to the source code of this file.

Data Structures

struct  pcxhr_mgr
 
struct  pcxhr_stream
 
struct  pcxhr_pipe
 
struct  snd_pcxhr
 
struct  pcxhr_hostport
 

Macros

#define PCXHR_DRIVER_VERSION   0x000906 /* 0.9.6 */
 
#define PCXHR_DRIVER_VERSION_STRING   "0.9.6" /* 0.9.6 */
 
#define PCXHR_MAX_CARDS   6
 
#define PCXHR_PLAYBACK_STREAMS   4
 
#define PCXHR_GRANULARITY   96 /* min 96 and multiple of 48 */
 
#define PCXHR_GRANULARITY_MIN   96
 
#define PCXHR_GRANULARITY_HR22   192 /* granularity for stereo cards */
 

Enumerations

enum  pcxhr_clock_type {
  PCXHR_CLOCK_TYPE_INTERNAL = 0, PCXHR_CLOCK_TYPE_WORD_CLOCK, PCXHR_CLOCK_TYPE_AES_SYNC, PCXHR_CLOCK_TYPE_AES_1,
  PCXHR_CLOCK_TYPE_AES_2, PCXHR_CLOCK_TYPE_AES_3, PCXHR_CLOCK_TYPE_AES_4, PCXHR_CLOCK_TYPE_MAX = PCXHR_CLOCK_TYPE_AES_4,
  HR22_CLOCK_TYPE_INTERNAL = PCXHR_CLOCK_TYPE_INTERNAL, HR22_CLOCK_TYPE_AES_SYNC, HR22_CLOCK_TYPE_AES_1, HR22_CLOCK_TYPE_MAX = HR22_CLOCK_TYPE_AES_1
}
 
enum  pcxhr_stream_status {
  PCXHR_STREAM_STATUS_FREE, PCXHR_STREAM_STATUS_OPEN, PCXHR_STREAM_STATUS_SCHEDULE_RUN, PCXHR_STREAM_STATUS_STARTED,
  PCXHR_STREAM_STATUS_RUNNING, PCXHR_STREAM_STATUS_SCHEDULE_STOP, PCXHR_STREAM_STATUS_STOPPED, PCXHR_STREAM_STATUS_PAUSED
}
 
enum  pcxhr_pipe_status { PCXHR_PIPE_UNDEFINED, PCXHR_PIPE_DEFINED }
 

Functions

int pcxhr_create_pcm (struct snd_pcxhr *chip)
 
int pcxhr_set_clock (struct pcxhr_mgr *mgr, unsigned int rate)
 
int pcxhr_get_external_clock (struct pcxhr_mgr *mgr, enum pcxhr_clock_type clock_type, int *sample_rate)
 

Macro Definition Documentation

#define PCXHR_DRIVER_VERSION   0x000906 /* 0.9.6 */

Definition at line 30 of file pcxhr.h.

#define PCXHR_DRIVER_VERSION_STRING   "0.9.6" /* 0.9.6 */

Definition at line 31 of file pcxhr.h.

#define PCXHR_GRANULARITY   96 /* min 96 and multiple of 48 */

Definition at line 37 of file pcxhr.h.

#define PCXHR_GRANULARITY_HR22   192 /* granularity for stereo cards */

Definition at line 41 of file pcxhr.h.

#define PCXHR_GRANULARITY_MIN   96

Definition at line 39 of file pcxhr.h.

#define PCXHR_MAX_CARDS   6

Definition at line 34 of file pcxhr.h.

#define PCXHR_PLAYBACK_STREAMS   4

Definition at line 35 of file pcxhr.h.

Enumeration Type Documentation

Enumerator:
PCXHR_CLOCK_TYPE_INTERNAL 
PCXHR_CLOCK_TYPE_WORD_CLOCK 
PCXHR_CLOCK_TYPE_AES_SYNC 
PCXHR_CLOCK_TYPE_AES_1 
PCXHR_CLOCK_TYPE_AES_2 
PCXHR_CLOCK_TYPE_AES_3 
PCXHR_CLOCK_TYPE_AES_4 
PCXHR_CLOCK_TYPE_MAX 
HR22_CLOCK_TYPE_INTERNAL 
HR22_CLOCK_TYPE_AES_SYNC 
HR22_CLOCK_TYPE_AES_1 
HR22_CLOCK_TYPE_MAX 

Definition at line 49 of file pcxhr.h.

Enumerator:
PCXHR_PIPE_UNDEFINED 
PCXHR_PIPE_DEFINED 

Definition at line 159 of file pcxhr.h.

Enumerator:
PCXHR_STREAM_STATUS_FREE 
PCXHR_STREAM_STATUS_OPEN 
PCXHR_STREAM_STATUS_SCHEDULE_RUN 
PCXHR_STREAM_STATUS_STARTED 
PCXHR_STREAM_STATUS_RUNNING 
PCXHR_STREAM_STATUS_SCHEDULE_STOP 
PCXHR_STREAM_STATUS_STOPPED 
PCXHR_STREAM_STATUS_PAUSED 

Definition at line 132 of file pcxhr.h.

Function Documentation

int pcxhr_create_pcm ( struct snd_pcxhr chip)

Definition at line 1161 of file pcxhr.c.

int pcxhr_get_external_clock ( struct pcxhr_mgr mgr,
enum pcxhr_clock_type  clock_type,
int sample_rate 
)

Definition at line 489 of file pcxhr.c.

int pcxhr_set_clock ( struct pcxhr_mgr mgr,
unsigned int  rate 
)

Definition at line 393 of file pcxhr.c.