Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
i2c-octeon.c File Reference
#include <linux/platform_device.h>
#include <linux/interrupt.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/of_i2c.h>
#include <linux/delay.h>
#include <linux/sched.h>
#include <linux/slab.h>
#include <linux/init.h>
#include <linux/i2c.h>
#include <linux/io.h>
#include <linux/of.h>
#include <asm/octeon/octeon.h>

Go to the source code of this file.

Data Structures

struct  octeon_i2c
 

Macros

#define DRV_NAME   "i2c-octeon"
 
#define DRV_VERSION   "2.0"
 
#define SW_TWSI   0x00
 
#define TWSI_INT   0x10
 
#define SW_TWSI_V   0x8000000000000000ull
 
#define SW_TWSI_EOP_TWSI_DATA   0x0C00000100000000ull
 
#define SW_TWSI_EOP_TWSI_CTL   0x0C00000200000000ull
 
#define SW_TWSI_EOP_TWSI_CLKCTL   0x0C00000300000000ull
 
#define SW_TWSI_EOP_TWSI_STAT   0x0C00000300000000ull
 
#define SW_TWSI_EOP_TWSI_RST   0x0C00000700000000ull
 
#define SW_TWSI_OP_TWSI_CLK   0x0800000000000000ull
 
#define SW_TWSI_R   0x0100000000000000ull
 
#define TWSI_CTL_CE   0x80
 
#define TWSI_CTL_ENAB   0x40
 
#define TWSI_CTL_STA   0x20
 
#define TWSI_CTL_STP   0x10
 
#define TWSI_CTL_IFLG   0x08
 
#define TWSI_CTL_AAK   0x04
 
#define STAT_START   0x08
 
#define STAT_RSTART   0x10
 
#define STAT_TXADDR_ACK   0x18
 
#define STAT_TXDATA_ACK   0x28
 
#define STAT_RXADDR_ACK   0x40
 
#define STAT_RXDATA_ACK   0x50
 
#define STAT_IDLE   0xF8
 

Functions

 MODULE_DEVICE_TABLE (of, octeon_i2c_match)
 
 module_platform_driver (octeon_i2c_driver)
 
 MODULE_AUTHOR ("Michael Lawnick <michael.lawnick.ext@nsn.com>")
 
 MODULE_DESCRIPTION ("I2C-Bus adapter for Cavium OCTEON processors")
 
 MODULE_LICENSE ("GPL")
 
 MODULE_VERSION (DRV_VERSION)
 

Macro Definition Documentation

#define DRV_NAME   "i2c-octeon"

Definition at line 29 of file i2c-octeon.c.

#define DRV_VERSION   "2.0"

Definition at line 32 of file i2c-octeon.c.

#define STAT_IDLE   0xF8

Definition at line 63 of file i2c-octeon.c.

#define STAT_RSTART   0x10

Definition at line 58 of file i2c-octeon.c.

#define STAT_RXADDR_ACK   0x40

Definition at line 61 of file i2c-octeon.c.

#define STAT_RXDATA_ACK   0x50

Definition at line 62 of file i2c-octeon.c.

#define STAT_START   0x08

Definition at line 57 of file i2c-octeon.c.

#define STAT_TXADDR_ACK   0x18

Definition at line 59 of file i2c-octeon.c.

#define STAT_TXDATA_ACK   0x28

Definition at line 60 of file i2c-octeon.c.

#define SW_TWSI   0x00

Definition at line 35 of file i2c-octeon.c.

#define SW_TWSI_EOP_TWSI_CLKCTL   0x0C00000300000000ull

Definition at line 42 of file i2c-octeon.c.

#define SW_TWSI_EOP_TWSI_CTL   0x0C00000200000000ull

Definition at line 41 of file i2c-octeon.c.

#define SW_TWSI_EOP_TWSI_DATA   0x0C00000100000000ull

Definition at line 40 of file i2c-octeon.c.

#define SW_TWSI_EOP_TWSI_RST   0x0C00000700000000ull

Definition at line 44 of file i2c-octeon.c.

#define SW_TWSI_EOP_TWSI_STAT   0x0C00000300000000ull

Definition at line 43 of file i2c-octeon.c.

#define SW_TWSI_OP_TWSI_CLK   0x0800000000000000ull

Definition at line 45 of file i2c-octeon.c.

#define SW_TWSI_R   0x0100000000000000ull

Definition at line 46 of file i2c-octeon.c.

#define SW_TWSI_V   0x8000000000000000ull

Definition at line 39 of file i2c-octeon.c.

#define TWSI_CTL_AAK   0x04

Definition at line 54 of file i2c-octeon.c.

#define TWSI_CTL_CE   0x80

Definition at line 49 of file i2c-octeon.c.

#define TWSI_CTL_ENAB   0x40

Definition at line 50 of file i2c-octeon.c.

#define TWSI_CTL_IFLG   0x08

Definition at line 53 of file i2c-octeon.c.

#define TWSI_CTL_STA   0x20

Definition at line 51 of file i2c-octeon.c.

#define TWSI_CTL_STP   0x10

Definition at line 52 of file i2c-octeon.c.

#define TWSI_INT   0x10

Definition at line 36 of file i2c-octeon.c.

Function Documentation

MODULE_AUTHOR ( "Michael Lawnick <michael.lawnick.ext@nsn.com>"  )
MODULE_DESCRIPTION ( "I2C-Bus adapter for Cavium OCTEON processors"  )
MODULE_DEVICE_TABLE ( of  ,
octeon_i2c_match   
)
MODULE_LICENSE ( "GPL"  )
module_platform_driver ( octeon_i2c_driver  )
MODULE_VERSION ( DRV_VERSION  )