Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions | Variables
ssi.c File Reference
#include <linux/init.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <sound/core.h>
#include <sound/pcm.h>
#include <sound/initval.h>
#include <sound/soc.h>
#include <asm/io.h>

Go to the source code of this file.

Data Structures

struct  ssi_priv
 

Macros

#define SSICR   0x00
 
#define SSISR   0x04
 
#define CR_DMAEN   (1 << 28)
 
#define CR_CHNL_SHIFT   22
 
#define CR_CHNL_MASK   (3 << CR_CHNL_SHIFT)
 
#define CR_DWL_SHIFT   19
 
#define CR_DWL_MASK   (7 << CR_DWL_SHIFT)
 
#define CR_SWL_SHIFT   16
 
#define CR_SWL_MASK   (7 << CR_SWL_SHIFT)
 
#define CR_SCK_MASTER   (1 << 15) /* bitclock master bit */
 
#define CR_SWS_MASTER   (1 << 14) /* wordselect master bit */
 
#define CR_SCKP   (1 << 13) /* I2Sclock polarity */
 
#define CR_SWSP   (1 << 12) /* LRCK polarity */
 
#define CR_SPDP   (1 << 11)
 
#define CR_SDTA   (1 << 10) /* i2s alignment (msb/lsb) */
 
#define CR_PDTA   (1 << 9) /* fifo data alignment */
 
#define CR_DEL   (1 << 8) /* delay data by 1 i2sclk */
 
#define CR_BREN   (1 << 7) /* clock gating in burst mode */
 
#define CR_CKDIV_SHIFT   4
 
#define CR_CKDIV_MASK   (7 << CR_CKDIV_SHIFT) /* bitclock divider */
 
#define CR_MUTE   (1 << 3) /* SSI mute */
 
#define CR_CPEN   (1 << 2) /* compressed mode */
 
#define CR_TRMD   (1 << 1) /* transmit/receive select */
 
#define CR_EN   (1 << 0) /* enable SSI */
 
#define SSIREG(reg)   (*(unsigned long *)(ssi->mmio + (reg)))
 
#define SSI_RATES   SNDRV_PCM_RATE_8000_192000
 
#define SSI_FMTS
 

Functions

 module_platform_driver (sh4_ssi_driver)
 
 MODULE_LICENSE ("GPL")
 
 MODULE_DESCRIPTION ("SuperH onchip SSI (I2S) audio driver")
 
 MODULE_AUTHOR ("Manuel Lauss <[email protected]>")
 

Variables

struct ssi_priv ssi_cpu_data []
 

Macro Definition Documentation

#define CR_BREN   (1 << 7) /* clock gating in burst mode */

Definition at line 57 of file ssi.c.

#define CR_CHNL_MASK   (3 << CR_CHNL_SHIFT)

Definition at line 44 of file ssi.c.

#define CR_CHNL_SHIFT   22

Definition at line 43 of file ssi.c.

#define CR_CKDIV_MASK   (7 << CR_CKDIV_SHIFT) /* bitclock divider */

Definition at line 59 of file ssi.c.

#define CR_CKDIV_SHIFT   4

Definition at line 58 of file ssi.c.

#define CR_CPEN   (1 << 2) /* compressed mode */

Definition at line 61 of file ssi.c.

#define CR_DEL   (1 << 8) /* delay data by 1 i2sclk */

Definition at line 56 of file ssi.c.

#define CR_DMAEN   (1 << 28)

Definition at line 42 of file ssi.c.

#define CR_DWL_MASK   (7 << CR_DWL_SHIFT)

Definition at line 46 of file ssi.c.

#define CR_DWL_SHIFT   19

Definition at line 45 of file ssi.c.

#define CR_EN   (1 << 0) /* enable SSI */

Definition at line 63 of file ssi.c.

#define CR_MUTE   (1 << 3) /* SSI mute */

Definition at line 60 of file ssi.c.

#define CR_PDTA   (1 << 9) /* fifo data alignment */

Definition at line 55 of file ssi.c.

#define CR_SCK_MASTER   (1 << 15) /* bitclock master bit */

Definition at line 49 of file ssi.c.

#define CR_SCKP   (1 << 13) /* I2Sclock polarity */

Definition at line 51 of file ssi.c.

#define CR_SDTA   (1 << 10) /* i2s alignment (msb/lsb) */

Definition at line 54 of file ssi.c.

#define CR_SPDP   (1 << 11)

Definition at line 53 of file ssi.c.

#define CR_SWL_MASK   (7 << CR_SWL_SHIFT)

Definition at line 48 of file ssi.c.

#define CR_SWL_SHIFT   16

Definition at line 47 of file ssi.c.

#define CR_SWS_MASTER   (1 << 14) /* wordselect master bit */

Definition at line 50 of file ssi.c.

#define CR_SWSP   (1 << 12) /* LRCK polarity */

Definition at line 52 of file ssi.c.

#define CR_TRMD   (1 << 1) /* transmit/receive select */

Definition at line 62 of file ssi.c.

#define SSI_FMTS
Value:
SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_U16_LE | \
SNDRV_PCM_FMTBIT_S20_3LE | SNDRV_PCM_FMTBIT_U20_3LE | \
SNDRV_PCM_FMTBIT_S24_3LE | SNDRV_PCM_FMTBIT_U24_3LE | \
SNDRV_PCM_FMTBIT_S32_LE | SNDRV_PCM_FMTBIT_U32_LE)

Definition at line 328 of file ssi.c.

#define SSI_RATES   SNDRV_PCM_RATE_8000_192000

Definition at line 324 of file ssi.c.

#define SSICR   0x00

Definition at line 39 of file ssi.c.

#define SSIREG (   reg)    (*(unsigned long *)(ssi->mmio + (reg)))

Definition at line 65 of file ssi.c.

#define SSISR   0x04

Definition at line 40 of file ssi.c.

Function Documentation

MODULE_AUTHOR ( "Manuel Lauss <[email protected]>"  )
MODULE_DESCRIPTION ( "SuperH onchip SSI (I2S) audio driver )
MODULE_LICENSE ( "GPL"  )
module_platform_driver ( sh4_ssi_driver  )

Variable Documentation

struct ssi_priv ssi_cpu_data[]
Initial value:
= {
}