Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions | Variables
ep93xx-i2s.c File Reference
#include <linux/module.h>
#include <linux/init.h>
#include <linux/slab.h>
#include <linux/clk.h>
#include <linux/io.h>
#include <sound/core.h>
#include <sound/pcm.h>
#include <sound/pcm_params.h>
#include <sound/initval.h>
#include <sound/soc.h>
#include <mach/hardware.h>
#include <mach/ep93xx-regs.h>
#include <linux/platform_data/dma-ep93xx.h>
#include "ep93xx-pcm.h"

Go to the source code of this file.

Data Structures

struct  ep93xx_i2s_info
 

Macros

#define EP93XX_I2S_TXCLKCFG   0x00
 
#define EP93XX_I2S_RXCLKCFG   0x04
 
#define EP93XX_I2S_GLCTRL   0x0C
 
#define EP93XX_I2S_TXLINCTRLDATA   0x28
 
#define EP93XX_I2S_TXCTRL   0x2C
 
#define EP93XX_I2S_TXWRDLEN   0x30
 
#define EP93XX_I2S_TX0EN   0x34
 
#define EP93XX_I2S_RXLINCTRLDATA   0x58
 
#define EP93XX_I2S_RXCTRL   0x5C
 
#define EP93XX_I2S_RXWRDLEN   0x60
 
#define EP93XX_I2S_RX0EN   0x64
 
#define EP93XX_I2S_WRDLEN_16   (0 << 0)
 
#define EP93XX_I2S_WRDLEN_24   (1 << 0)
 
#define EP93XX_I2S_WRDLEN_32   (2 << 0)
 
#define EP93XX_I2S_LINCTRLDATA_R_JUST   (1 << 2) /* Right justify */
 
#define EP93XX_I2S_CLKCFG_LRS   (1 << 0) /* lrclk polarity */
 
#define EP93XX_I2S_CLKCFG_CKP   (1 << 1) /* Bit clock polarity */
 
#define EP93XX_I2S_CLKCFG_REL   (1 << 2) /* First bit transition */
 
#define EP93XX_I2S_CLKCFG_MASTER   (1 << 3) /* Master mode */
 
#define EP93XX_I2S_CLKCFG_NBCG   (1 << 4) /* Not bit clock gating */
 
#define ep93xx_i2s_suspend   NULL
 
#define ep93xx_i2s_resume   NULL
 
#define EP93XX_I2S_FORMATS   (SNDRV_PCM_FMTBIT_S32_LE)
 

Functions

 module_platform_driver (ep93xx_i2s_driver)
 
 MODULE_ALIAS ("platform:ep93xx-i2s")
 
 MODULE_AUTHOR ("Ryan Mallon")
 
 MODULE_DESCRIPTION ("EP93XX I2S driver")
 
 MODULE_LICENSE ("GPL")
 

Variables

struct ep93xx_pcm_dma_params ep93xx_i2s_dma_params []
 

Macro Definition Documentation

#define EP93XX_I2S_CLKCFG_CKP   (1 << 1) /* Bit clock polarity */

Definition at line 56 of file ep93xx-i2s.c.

#define EP93XX_I2S_CLKCFG_LRS   (1 << 0) /* lrclk polarity */

Definition at line 55 of file ep93xx-i2s.c.

#define EP93XX_I2S_CLKCFG_MASTER   (1 << 3) /* Master mode */

Definition at line 58 of file ep93xx-i2s.c.

#define EP93XX_I2S_CLKCFG_NBCG   (1 << 4) /* Not bit clock gating */

Definition at line 59 of file ep93xx-i2s.c.

#define EP93XX_I2S_CLKCFG_REL   (1 << 2) /* First bit transition */

Definition at line 57 of file ep93xx-i2s.c.

#define EP93XX_I2S_FORMATS   (SNDRV_PCM_FMTBIT_S32_LE)

Definition at line 348 of file ep93xx-i2s.c.

#define EP93XX_I2S_GLCTRL   0x0C

Definition at line 37 of file ep93xx-i2s.c.

#define EP93XX_I2S_LINCTRLDATA_R_JUST   (1 << 2) /* Right justify */

Definition at line 53 of file ep93xx-i2s.c.

#define ep93xx_i2s_resume   NULL

Definition at line 337 of file ep93xx-i2s.c.

#define EP93XX_I2S_RX0EN   0x64

Definition at line 47 of file ep93xx-i2s.c.

#define EP93XX_I2S_RXCLKCFG   0x04

Definition at line 36 of file ep93xx-i2s.c.

#define EP93XX_I2S_RXCTRL   0x5C

Definition at line 45 of file ep93xx-i2s.c.

#define EP93XX_I2S_RXLINCTRLDATA   0x58

Definition at line 44 of file ep93xx-i2s.c.

#define EP93XX_I2S_RXWRDLEN   0x60

Definition at line 46 of file ep93xx-i2s.c.

#define ep93xx_i2s_suspend   NULL

Definition at line 336 of file ep93xx-i2s.c.

#define EP93XX_I2S_TX0EN   0x34

Definition at line 42 of file ep93xx-i2s.c.

#define EP93XX_I2S_TXCLKCFG   0x00

Definition at line 35 of file ep93xx-i2s.c.

#define EP93XX_I2S_TXCTRL   0x2C

Definition at line 40 of file ep93xx-i2s.c.

#define EP93XX_I2S_TXLINCTRLDATA   0x28

Definition at line 39 of file ep93xx-i2s.c.

#define EP93XX_I2S_TXWRDLEN   0x30

Definition at line 41 of file ep93xx-i2s.c.

#define EP93XX_I2S_WRDLEN_16   (0 << 0)

Definition at line 49 of file ep93xx-i2s.c.

#define EP93XX_I2S_WRDLEN_24   (1 << 0)

Definition at line 50 of file ep93xx-i2s.c.

#define EP93XX_I2S_WRDLEN_32   (2 << 0)

Definition at line 51 of file ep93xx-i2s.c.

Function Documentation

MODULE_ALIAS ( "platform:ep93xx-i2s"  )
MODULE_AUTHOR ( "Ryan Mallon"  )
MODULE_DESCRIPTION ( "EP93XX I2S driver )
MODULE_LICENSE ( "GPL"  )
module_platform_driver ( ep93xx_i2s_driver  )

Variable Documentation

struct ep93xx_pcm_dma_params ep93xx_i2s_dma_params[]
Initial value:
= {
.name = "i2s-pcm-out",
.dma_port = EP93XX_DMA_I2S1,
},
.name = "i2s-pcm-in",
.dma_port = EP93XX_DMA_I2S1,
},
}

Definition at line 69 of file ep93xx-i2s.c.