Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
da8xx.c File Reference
#include <linux/init.h>
#include <linux/module.h>
#include <linux/clk.h>
#include <linux/err.h>
#include <linux/io.h>
#include <linux/platform_device.h>
#include <linux/dma-mapping.h>
#include <linux/usb/nop-usb-xceiv.h>
#include <mach/da8xx.h>
#include <linux/platform_data/usb-davinci.h>
#include "musb_core.h"

Go to the source code of this file.

Data Structures

struct  da8xx_glue
 

Macros

#define DA8XX_USB_REVISION_REG   0x00
 
#define DA8XX_USB_CTRL_REG   0x04
 
#define DA8XX_USB_STAT_REG   0x08
 
#define DA8XX_USB_EMULATION_REG   0x0c
 
#define DA8XX_USB_MODE_REG   0x10 /* Transparent, CDC, [Generic] RNDIS */
 
#define DA8XX_USB_AUTOREQ_REG   0x14
 
#define DA8XX_USB_SRP_FIX_TIME_REG   0x18
 
#define DA8XX_USB_TEARDOWN_REG   0x1c
 
#define DA8XX_USB_INTR_SRC_REG   0x20
 
#define DA8XX_USB_INTR_SRC_SET_REG   0x24
 
#define DA8XX_USB_INTR_SRC_CLEAR_REG   0x28
 
#define DA8XX_USB_INTR_MASK_REG   0x2c
 
#define DA8XX_USB_INTR_MASK_SET_REG   0x30
 
#define DA8XX_USB_INTR_MASK_CLEAR_REG   0x34
 
#define DA8XX_USB_INTR_SRC_MASKED_REG   0x38
 
#define DA8XX_USB_END_OF_INTR_REG   0x3c
 
#define DA8XX_USB_GENERIC_RNDIS_EP_SIZE_REG(n)   (0x50 + (((n) - 1) << 2))
 
#define DA8XX_SOFT_RESET_MASK   1
 
#define DA8XX_USB_TX_EP_MASK   0x1f /* EP0 + 4 Tx EPs */
 
#define DA8XX_USB_RX_EP_MASK   0x1e /* 4 Rx EPs */
 
#define DA8XX_INTR_USB_SHIFT   16
 
#define DA8XX_INTR_USB_MASK   (0x1ff << DA8XX_INTR_USB_SHIFT) /* 8 Mentor */
 
#define DA8XX_INTR_DRVVBUS   0x100
 
#define DA8XX_INTR_RX_SHIFT   8
 
#define DA8XX_INTR_RX_MASK   (DA8XX_USB_RX_EP_MASK << DA8XX_INTR_RX_SHIFT)
 
#define DA8XX_INTR_TX_SHIFT   0
 
#define DA8XX_INTR_TX_MASK   (DA8XX_USB_TX_EP_MASK << DA8XX_INTR_TX_SHIFT)
 
#define DA8XX_MENTOR_CORE_OFFSET   0x400
 
#define CFGCHIP2   IO_ADDRESS(DA8XX_SYSCFG0_BASE + DA8XX_CFGCHIP2_REG)
 
#define portstate(stmt)   stmt
 
#define POLL_SECONDS   2
 

Functions

 MODULE_DESCRIPTION ("DA8xx/OMAP-L1x MUSB Glue Layer")
 
 MODULE_AUTHOR ("Sergei Shtylyov <[email protected]>")
 
 MODULE_LICENSE ("GPL v2")
 
 module_init (da8xx_init)
 
 module_exit (da8xx_exit)
 

Macro Definition Documentation

Definition at line 84 of file da8xx.c.

#define DA8XX_INTR_DRVVBUS   0x100

Definition at line 76 of file da8xx.c.

#define DA8XX_INTR_RX_MASK   (DA8XX_USB_RX_EP_MASK << DA8XX_INTR_RX_SHIFT)

Definition at line 78 of file da8xx.c.

#define DA8XX_INTR_RX_SHIFT   8

Definition at line 77 of file da8xx.c.

#define DA8XX_INTR_TX_MASK   (DA8XX_USB_TX_EP_MASK << DA8XX_INTR_TX_SHIFT)

Definition at line 80 of file da8xx.c.

#define DA8XX_INTR_TX_SHIFT   0

Definition at line 79 of file da8xx.c.

#define DA8XX_INTR_USB_MASK   (0x1ff << DA8XX_INTR_USB_SHIFT) /* 8 Mentor */

Definition at line 74 of file da8xx.c.

#define DA8XX_INTR_USB_SHIFT   16

Definition at line 73 of file da8xx.c.

#define DA8XX_MENTOR_CORE_OFFSET   0x400

Definition at line 82 of file da8xx.c.

#define DA8XX_SOFT_RESET_MASK   1

Definition at line 67 of file da8xx.c.

#define DA8XX_USB_AUTOREQ_REG   0x14

Definition at line 53 of file da8xx.c.

#define DA8XX_USB_CTRL_REG   0x04

Definition at line 49 of file da8xx.c.

#define DA8XX_USB_EMULATION_REG   0x0c

Definition at line 51 of file da8xx.c.

#define DA8XX_USB_END_OF_INTR_REG   0x3c

Definition at line 63 of file da8xx.c.

#define DA8XX_USB_GENERIC_RNDIS_EP_SIZE_REG (   n)    (0x50 + (((n) - 1) << 2))

Definition at line 64 of file da8xx.c.

#define DA8XX_USB_INTR_MASK_CLEAR_REG   0x34

Definition at line 61 of file da8xx.c.

#define DA8XX_USB_INTR_MASK_REG   0x2c

Definition at line 59 of file da8xx.c.

#define DA8XX_USB_INTR_MASK_SET_REG   0x30

Definition at line 60 of file da8xx.c.

#define DA8XX_USB_INTR_SRC_CLEAR_REG   0x28

Definition at line 58 of file da8xx.c.

#define DA8XX_USB_INTR_SRC_MASKED_REG   0x38

Definition at line 62 of file da8xx.c.

#define DA8XX_USB_INTR_SRC_REG   0x20

Definition at line 56 of file da8xx.c.

#define DA8XX_USB_INTR_SRC_SET_REG   0x24

Definition at line 57 of file da8xx.c.

#define DA8XX_USB_MODE_REG   0x10 /* Transparent, CDC, [Generic] RNDIS */

Definition at line 52 of file da8xx.c.

#define DA8XX_USB_REVISION_REG   0x00

Definition at line 48 of file da8xx.c.

#define DA8XX_USB_RX_EP_MASK   0x1e /* 4 Rx EPs */

Definition at line 70 of file da8xx.c.

#define DA8XX_USB_SRP_FIX_TIME_REG   0x18

Definition at line 54 of file da8xx.c.

#define DA8XX_USB_STAT_REG   0x08

Definition at line 50 of file da8xx.c.

#define DA8XX_USB_TEARDOWN_REG   0x1c

Definition at line 55 of file da8xx.c.

#define DA8XX_USB_TX_EP_MASK   0x1f /* EP0 + 4 Tx EPs */

Definition at line 69 of file da8xx.c.

#define POLL_SECONDS   2

Definition at line 184 of file da8xx.c.

#define portstate (   stmt)    stmt

Definition at line 177 of file da8xx.c.

Function Documentation

MODULE_AUTHOR ( "Sergei Shtylyov <[email protected]>"  )
MODULE_DESCRIPTION ( "DA8xx/OMAP-L1x MUSB Glue Layer"  )
module_exit ( da8xx_exit  )
module_init ( da8xx_init  )
MODULE_LICENSE ( "GPL v2 )