Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
am35x.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 <plat/usb.h>
#include "musb_core.h"

Go to the source code of this file.

Data Structures

struct  am35x_glue
 

Macros

#define USB_REVISION_REG   0x00
 
#define USB_CTRL_REG   0x04
 
#define USB_STAT_REG   0x08
 
#define USB_EMULATION_REG   0x0c
 
#define USB_AUTOREQ_REG   0x14
 
#define USB_SRP_FIX_TIME_REG   0x18
 
#define USB_TEARDOWN_REG   0x1c
 
#define EP_INTR_SRC_REG   0x20
 
#define EP_INTR_SRC_SET_REG   0x24
 
#define EP_INTR_SRC_CLEAR_REG   0x28
 
#define EP_INTR_MASK_REG   0x2c
 
#define EP_INTR_MASK_SET_REG   0x30
 
#define EP_INTR_MASK_CLEAR_REG   0x34
 
#define EP_INTR_SRC_MASKED_REG   0x38
 
#define CORE_INTR_SRC_REG   0x40
 
#define CORE_INTR_SRC_SET_REG   0x44
 
#define CORE_INTR_SRC_CLEAR_REG   0x48
 
#define CORE_INTR_MASK_REG   0x4c
 
#define CORE_INTR_MASK_SET_REG   0x50
 
#define CORE_INTR_MASK_CLEAR_REG   0x54
 
#define CORE_INTR_SRC_MASKED_REG   0x58
 
#define USB_END_OF_INTR_REG   0x60
 
#define AM35X_SOFT_RESET_MASK   1
 
#define AM35X_INTR_USB_SHIFT   16
 
#define AM35X_INTR_USB_MASK   (0x1ff << AM35X_INTR_USB_SHIFT)
 
#define AM35X_INTR_DRVVBUS   0x100
 
#define AM35X_INTR_RX_SHIFT   16
 
#define AM35X_INTR_TX_SHIFT   0
 
#define AM35X_TX_EP_MASK   0xffff /* EP0 + 15 Tx EPs */
 
#define AM35X_RX_EP_MASK   0xfffe /* 15 Rx EPs */
 
#define AM35X_TX_INTR_MASK   (AM35X_TX_EP_MASK << AM35X_INTR_TX_SHIFT)
 
#define AM35X_RX_INTR_MASK   (AM35X_RX_EP_MASK << AM35X_INTR_RX_SHIFT)
 
#define USB_MENTOR_CORE_OFFSET   0x400
 
#define glue_to_musb(g)   platform_get_drvdata(g->musb)
 
#define portstate(stmt)   stmt
 
#define POLL_SECONDS   2
 
#define DEV_PM_OPS   NULL
 

Functions

void musb_read_fifo (struct musb_hw_ep *hw_ep, u16 len, u8 *dst)
 
 MODULE_DESCRIPTION ("AM35x MUSB Glue Layer")
 
 MODULE_AUTHOR ("Ajay Kumar Gupta <[email protected]>")
 
 MODULE_LICENSE ("GPL v2")
 
 module_init (am35x_init)
 
 module_exit (am35x_exit)
 

Macro Definition Documentation

#define AM35X_INTR_DRVVBUS   0x100

Definition at line 77 of file am35x.c.

#define AM35X_INTR_RX_SHIFT   16

Definition at line 78 of file am35x.c.

#define AM35X_INTR_TX_SHIFT   0

Definition at line 79 of file am35x.c.

#define AM35X_INTR_USB_MASK   (0x1ff << AM35X_INTR_USB_SHIFT)

Definition at line 76 of file am35x.c.

#define AM35X_INTR_USB_SHIFT   16

Definition at line 75 of file am35x.c.

#define AM35X_RX_EP_MASK   0xfffe /* 15 Rx EPs */

Definition at line 81 of file am35x.c.

#define AM35X_RX_INTR_MASK   (AM35X_RX_EP_MASK << AM35X_INTR_RX_SHIFT)

Definition at line 83 of file am35x.c.

#define AM35X_SOFT_RESET_MASK   1

Definition at line 72 of file am35x.c.

#define AM35X_TX_EP_MASK   0xffff /* EP0 + 15 Tx EPs */

Definition at line 80 of file am35x.c.

#define AM35X_TX_INTR_MASK   (AM35X_TX_EP_MASK << AM35X_INTR_TX_SHIFT)

Definition at line 82 of file am35x.c.

#define CORE_INTR_MASK_CLEAR_REG   0x54

Definition at line 66 of file am35x.c.

#define CORE_INTR_MASK_REG   0x4c

Definition at line 64 of file am35x.c.

#define CORE_INTR_MASK_SET_REG   0x50

Definition at line 65 of file am35x.c.

#define CORE_INTR_SRC_CLEAR_REG   0x48

Definition at line 63 of file am35x.c.

#define CORE_INTR_SRC_MASKED_REG   0x58

Definition at line 67 of file am35x.c.

#define CORE_INTR_SRC_REG   0x40

Definition at line 61 of file am35x.c.

#define CORE_INTR_SRC_SET_REG   0x44

Definition at line 62 of file am35x.c.

#define DEV_PM_OPS   NULL

Definition at line 642 of file am35x.c.

#define EP_INTR_MASK_CLEAR_REG   0x34

Definition at line 59 of file am35x.c.

#define EP_INTR_MASK_REG   0x2c

Definition at line 57 of file am35x.c.

#define EP_INTR_MASK_SET_REG   0x30

Definition at line 58 of file am35x.c.

#define EP_INTR_SRC_CLEAR_REG   0x28

Definition at line 56 of file am35x.c.

#define EP_INTR_SRC_MASKED_REG   0x38

Definition at line 60 of file am35x.c.

#define EP_INTR_SRC_REG   0x20

Definition at line 54 of file am35x.c.

#define EP_INTR_SRC_SET_REG   0x24

Definition at line 55 of file am35x.c.

#define glue_to_musb (   g)    platform_get_drvdata(g->musb)

Definition at line 93 of file am35x.c.

#define POLL_SECONDS   2

Definition at line 136 of file am35x.c.

#define portstate (   stmt)    stmt

Definition at line 129 of file am35x.c.

#define USB_AUTOREQ_REG   0x14

Definition at line 51 of file am35x.c.

#define USB_CTRL_REG   0x04

Definition at line 47 of file am35x.c.

#define USB_EMULATION_REG   0x0c

Definition at line 49 of file am35x.c.

#define USB_END_OF_INTR_REG   0x60

Definition at line 69 of file am35x.c.

#define USB_MENTOR_CORE_OFFSET   0x400

Definition at line 85 of file am35x.c.

#define USB_REVISION_REG   0x00

Definition at line 46 of file am35x.c.

#define USB_SRP_FIX_TIME_REG   0x18

Definition at line 52 of file am35x.c.

#define USB_STAT_REG   0x08

Definition at line 48 of file am35x.c.

#define USB_TEARDOWN_REG   0x1c

Definition at line 53 of file am35x.c.

Function Documentation

MODULE_AUTHOR ( "Ajay Kumar Gupta <[email protected]>"  )
MODULE_DESCRIPTION ( "AM35x MUSB Glue Layer"  )
module_exit ( am35x_exit  )
module_init ( am35x_init  )
MODULE_LICENSE ( "GPL v2 )
void musb_read_fifo ( struct musb_hw_ep hw_ep,
u16  len,
u8 dst 
)

Definition at line 414 of file am35x.c.