Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions
i2sc.c File Reference
#include <linux/init.h>
#include <linux/module.h>
#include <linux/slab.h>
#include <linux/suspend.h>
#include <sound/core.h>
#include <sound/pcm.h>
#include <sound/initval.h>
#include <sound/soc.h>
#include <asm/mach-au1x00/au1000.h>
#include "psc.h"

Go to the source code of this file.

Macros

#define I2S_RXTX   0x00
 
#define I2S_CFG   0x04
 
#define I2S_ENABLE   0x08
 
#define CFG_XU   (1 << 25) /* tx underflow */
 
#define CFG_XO   (1 << 24)
 
#define CFG_RU   (1 << 23)
 
#define CFG_RO   (1 << 22)
 
#define CFG_TR   (1 << 21)
 
#define CFG_TE   (1 << 20)
 
#define CFG_TF   (1 << 19)
 
#define CFG_RR   (1 << 18)
 
#define CFG_RF   (1 << 17)
 
#define CFG_ICK   (1 << 12) /* clock invert */
 
#define CFG_PD   (1 << 11) /* set to make I2SDIO INPUT */
 
#define CFG_LB   (1 << 10) /* loopback */
 
#define CFG_IC   (1 << 9) /* word select invert */
 
#define CFG_FM_I2S   (0 << 7) /* I2S format */
 
#define CFG_FM_LJ   (1 << 7) /* left-justified */
 
#define CFG_FM_RJ   (2 << 7) /* right-justified */
 
#define CFG_FM_MASK   (3 << 7)
 
#define CFG_TN   (1 << 6) /* tx fifo en */
 
#define CFG_RN   (1 << 5) /* rx fifo en */
 
#define CFG_SZ_8   (0x08)
 
#define CFG_SZ_16   (0x10)
 
#define CFG_SZ_18   (0x12)
 
#define CFG_SZ_20   (0x14)
 
#define CFG_SZ_24   (0x18)
 
#define CFG_SZ_MASK   (0x1f)
 
#define EN_D   (1 << 1) /* DISable */
 
#define EN_CE   (1 << 0) /* clock enable */
 
#define AU1XI2SC_RATES   SNDRV_PCM_RATE_CONTINUOUS
 
#define AU1XI2SC_FMTS
 
#define AU1XI2SC_PMOPS   NULL
 

Functions

 module_platform_driver (au1xi2s_driver)
 
 MODULE_LICENSE ("GPL")
 
 MODULE_DESCRIPTION ("Au1000/1500/1100 I2S ASoC driver")
 
 MODULE_AUTHOR ("Manuel Lauss")
 

Macro Definition Documentation

#define AU1XI2SC_FMTS
Value:
SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S16_BE | \
SNDRV_PCM_FMTBIT_U16_LE | SNDRV_PCM_FMTBIT_U16_BE | \
SNDRV_PCM_FMTBIT_S18_3LE | SNDRV_PCM_FMTBIT_U18_3LE | \
SNDRV_PCM_FMTBIT_S18_3BE | SNDRV_PCM_FMTBIT_U18_3BE | \
SNDRV_PCM_FMTBIT_S20_3LE | SNDRV_PCM_FMTBIT_U20_3LE | \
SNDRV_PCM_FMTBIT_S20_3BE | SNDRV_PCM_FMTBIT_U20_3BE | \
SNDRV_PCM_FMTBIT_S24_LE | SNDRV_PCM_FMTBIT_S24_BE | \
SNDRV_PCM_FMTBIT_U24_LE | SNDRV_PCM_FMTBIT_U24_BE | \
0)

Definition at line 57 of file i2sc.c.

#define AU1XI2SC_PMOPS   NULL

Definition at line 301 of file i2sc.c.

#define AU1XI2SC_RATES   SNDRV_PCM_RATE_CONTINUOUS

Definition at line 54 of file i2sc.c.

#define CFG_FM_I2S   (0 << 7) /* I2S format */

Definition at line 38 of file i2sc.c.

#define CFG_FM_LJ   (1 << 7) /* left-justified */

Definition at line 39 of file i2sc.c.

#define CFG_FM_MASK   (3 << 7)

Definition at line 41 of file i2sc.c.

#define CFG_FM_RJ   (2 << 7) /* right-justified */

Definition at line 40 of file i2sc.c.

#define CFG_IC   (1 << 9) /* word select invert */

Definition at line 37 of file i2sc.c.

#define CFG_ICK   (1 << 12) /* clock invert */

Definition at line 34 of file i2sc.c.

#define CFG_LB   (1 << 10) /* loopback */

Definition at line 36 of file i2sc.c.

#define CFG_PD   (1 << 11) /* set to make I2SDIO INPUT */

Definition at line 35 of file i2sc.c.

#define CFG_RF   (1 << 17)

Definition at line 33 of file i2sc.c.

#define CFG_RN   (1 << 5) /* rx fifo en */

Definition at line 43 of file i2sc.c.

#define CFG_RO   (1 << 22)

Definition at line 28 of file i2sc.c.

#define CFG_RR   (1 << 18)

Definition at line 32 of file i2sc.c.

#define CFG_RU   (1 << 23)

Definition at line 27 of file i2sc.c.

#define CFG_SZ_16   (0x10)

Definition at line 45 of file i2sc.c.

#define CFG_SZ_18   (0x12)

Definition at line 46 of file i2sc.c.

#define CFG_SZ_20   (0x14)

Definition at line 47 of file i2sc.c.

#define CFG_SZ_24   (0x18)

Definition at line 48 of file i2sc.c.

#define CFG_SZ_8   (0x08)

Definition at line 44 of file i2sc.c.

#define CFG_SZ_MASK   (0x1f)

Definition at line 49 of file i2sc.c.

#define CFG_TE   (1 << 20)

Definition at line 30 of file i2sc.c.

#define CFG_TF   (1 << 19)

Definition at line 31 of file i2sc.c.

#define CFG_TN   (1 << 6) /* tx fifo en */

Definition at line 42 of file i2sc.c.

#define CFG_TR   (1 << 21)

Definition at line 29 of file i2sc.c.

#define CFG_XO   (1 << 24)

Definition at line 26 of file i2sc.c.

#define CFG_XU   (1 << 25) /* tx underflow */

Definition at line 25 of file i2sc.c.

#define EN_CE   (1 << 0) /* clock enable */

Definition at line 51 of file i2sc.c.

#define EN_D   (1 << 1) /* DISable */

Definition at line 50 of file i2sc.c.

#define I2S_CFG   0x04

Definition at line 22 of file i2sc.c.

#define I2S_ENABLE   0x08

Definition at line 23 of file i2sc.c.

#define I2S_RXTX   0x00

Definition at line 21 of file i2sc.c.

Function Documentation

MODULE_AUTHOR ( "Manuel Lauss"  )
MODULE_DESCRIPTION ( "Au1000/1500/1100 I2S ASoC driver )
MODULE_LICENSE ( "GPL"  )
module_platform_driver ( au1xi2s_driver  )