Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Enumerations | Functions
hisax_isac.c File Reference
#include <linux/module.h>
#include <linux/gfp.h>
#include <linux/init.h>
#include <linux/netdevice.h>
#include "hisax_isac.h"
#include "hisax_debug.h"

Go to the source code of this file.

Macros

#define __debug_variable   debug
 
#define DBG_WARN   0x0001
 
#define DBG_IRQ   0x0002
 
#define DBG_L1M   0x0004
 
#define DBG_PR   0x0008
 
#define DBG_RFIFO   0x0100
 
#define DBG_RPACKET   0x0200
 
#define DBG_XFIFO   0x1000
 
#define DBG_XPACKET   0x2000
 
#define TYPE_ISAC   0x00
 
#define TYPE_ISACSX   0x01
 
#define ISAC_MASK   0x20
 
#define ISAC_ISTA   0x20
 
#define ISAC_ISTA_EXI   0x01
 
#define ISAC_ISTA_SIN   0x02
 
#define ISAC_ISTA_CISQ   0x04
 
#define ISAC_ISTA_XPR   0x10
 
#define ISAC_ISTA_RSC   0x20
 
#define ISAC_ISTA_RPF   0x40
 
#define ISAC_ISTA_RME   0x80
 
#define ISAC_STAR   0x21
 
#define ISAC_CMDR   0x21
 
#define ISAC_CMDR_XRES   0x01
 
#define ISAC_CMDR_XME   0x02
 
#define ISAC_CMDR_XTF   0x08
 
#define ISAC_CMDR_RRES   0x40
 
#define ISAC_CMDR_RMC   0x80
 
#define ISAC_EXIR   0x24
 
#define ISAC_EXIR_MOS   0x04
 
#define ISAC_EXIR_XDU   0x40
 
#define ISAC_EXIR_XMR   0x80
 
#define ISAC_ADF2   0x39
 
#define ISAC_SPCR   0x30
 
#define ISAC_ADF1   0x38
 
#define ISAC_CIR0   0x31
 
#define ISAC_CIX0   0x31
 
#define ISAC_CIR0_CIC0   0x02
 
#define ISAC_CIR0_CIC1   0x01
 
#define ISAC_CIR1   0x33
 
#define ISAC_CIX1   0x33
 
#define ISAC_STCR   0x37
 
#define ISAC_MODE   0x22
 
#define ISAC_RSTA   0x27
 
#define ISAC_RSTA_RDO   0x40
 
#define ISAC_RSTA_CRC   0x20
 
#define ISAC_RSTA_RAB   0x10
 
#define ISAC_RBCL   0x25
 
#define ISAC_RBCH   0x2A
 
#define ISAC_TIMR   0x23
 
#define ISAC_SQXR   0x3b
 
#define ISAC_MOSR   0x3a
 
#define ISAC_MOCR   0x3a
 
#define ISAC_MOR0   0x32
 
#define ISAC_MOX0   0x32
 
#define ISAC_MOR1   0x34
 
#define ISAC_MOX1   0x34
 
#define ISAC_RBCH_XAC   0x80
 
#define ISAC_CMD_TIM   0x0
 
#define ISAC_CMD_RES   0x1
 
#define ISAC_CMD_SSP   0x2
 
#define ISAC_CMD_SCP   0x3
 
#define ISAC_CMD_AR8   0x8
 
#define ISAC_CMD_AR10   0x9
 
#define ISAC_CMD_ARL   0xa
 
#define ISAC_CMD_DI   0xf
 
#define ISACSX_MASK   0x60
 
#define ISACSX_ISTA   0x60
 
#define ISACSX_ISTA_ICD   0x01
 
#define ISACSX_ISTA_CIC   0x10
 
#define ISACSX_MASKD   0x20
 
#define ISACSX_ISTAD   0x20
 
#define ISACSX_ISTAD_XDU   0x04
 
#define ISACSX_ISTAD_XMR   0x08
 
#define ISACSX_ISTAD_XPR   0x10
 
#define ISACSX_ISTAD_RFO   0x20
 
#define ISACSX_ISTAD_RPF   0x40
 
#define ISACSX_ISTAD_RME   0x80
 
#define ISACSX_CMDRD   0x21
 
#define ISACSX_CMDRD_XRES   0x01
 
#define ISACSX_CMDRD_XME   0x02
 
#define ISACSX_CMDRD_XTF   0x08
 
#define ISACSX_CMDRD_RRES   0x40
 
#define ISACSX_CMDRD_RMC   0x80
 
#define ISACSX_MODED   0x22
 
#define ISACSX_RBCLD   0x26
 
#define ISACSX_RSTAD   0x28
 
#define ISACSX_RSTAD_RAB   0x10
 
#define ISACSX_RSTAD_CRC   0x20
 
#define ISACSX_RSTAD_RDO   0x40
 
#define ISACSX_RSTAD_VFR   0x80
 
#define ISACSX_CIR0   0x2e
 
#define ISACSX_CIR0_CIC0   0x08
 
#define ISACSX_CIX0   0x2e
 
#define ISACSX_TR_CONF0   0x30
 
#define ISACSX_TR_CONF2   0x32
 
#define L1_STATE_COUNT   (ST_L1_F8 + 1)
 
#define L1_EVENT_COUNT   (EV_TIMER3 + 1)
 

Enumerations

enum  {
  ST_L1_RESET, ST_L1_F3_PDOWN, ST_L1_F3_PUP, ST_L1_F3_PEND_DEACT,
  ST_L1_F4, ST_L1_F5, ST_L1_F6, ST_L1_F7,
  ST_L1_F8
}
 
enum  {
  EV_PH_DR, EV_PH_RES, EV_PH_TMA, EV_PH_SLD,
  EV_PH_RSY, EV_PH_DR6, EV_PH_EI, EV_PH_PU,
  EV_PH_AR, EV_PH_9, EV_PH_ARL, EV_PH_CVR,
  EV_PH_AI8, EV_PH_AI10, EV_PH_AIL, EV_PH_DC,
  EV_PH_ACTIVATE_REQ, EV_PH_DEACTIVATE_REQ, EV_TIMER3
}
 

Functions

 MODULE_AUTHOR ("Kai Germaschewski <[email protected]>/Karsten Keil <[email protected]>")
 
 MODULE_DESCRIPTION ("ISAC/ISAC-SX driver")
 
 MODULE_LICENSE ("GPL")
 
void isac_irq (struct isac *isac)
 
void isacsx_irq (struct isac *isac)
 
void isac_init (struct isac *isac)
 
void isac_setup (struct isac *isac)
 
void isacsx_setup (struct isac *isac)
 
void isac_d_l2l1 (struct hisax_if *hisax_d_if, int pr, void *arg)
 
 EXPORT_SYMBOL (isac_init)
 
 EXPORT_SYMBOL (isac_d_l2l1)
 
 EXPORT_SYMBOL (isacsx_setup)
 
 EXPORT_SYMBOL (isacsx_irq)
 
 EXPORT_SYMBOL (isac_setup)
 
 EXPORT_SYMBOL (isac_irq)
 
 module_init (hisax_isac_init)
 
 module_exit (hisax_isac_exit)
 

Macro Definition Documentation

#define __debug_variable   debug

Definition at line 31 of file hisax_isac.c.

#define DBG_IRQ   0x0002

Definition at line 51 of file hisax_isac.c.

#define DBG_L1M   0x0004

Definition at line 52 of file hisax_isac.c.

#define DBG_PR   0x0008

Definition at line 53 of file hisax_isac.c.

#define DBG_RFIFO   0x0100

Definition at line 54 of file hisax_isac.c.

#define DBG_RPACKET   0x0200

Definition at line 55 of file hisax_isac.c.

#define DBG_WARN   0x0001

Definition at line 50 of file hisax_isac.c.

#define DBG_XFIFO   0x1000

Definition at line 56 of file hisax_isac.c.

#define DBG_XPACKET   0x2000

Definition at line 57 of file hisax_isac.c.

#define ISAC_ADF1   0x38

Definition at line 89 of file hisax_isac.c.

#define ISAC_ADF2   0x39

Definition at line 87 of file hisax_isac.c.

#define ISAC_CIR0   0x31

Definition at line 91 of file hisax_isac.c.

#define ISAC_CIR0_CIC0   0x02

Definition at line 93 of file hisax_isac.c.

#define ISAC_CIR0_CIC1   0x01

Definition at line 94 of file hisax_isac.c.

#define ISAC_CIR1   0x33

Definition at line 96 of file hisax_isac.c.

#define ISAC_CIX0   0x31

Definition at line 92 of file hisax_isac.c.

#define ISAC_CIX1   0x33

Definition at line 97 of file hisax_isac.c.

#define ISAC_CMD_AR10   0x9

Definition at line 124 of file hisax_isac.c.

#define ISAC_CMD_AR8   0x8

Definition at line 123 of file hisax_isac.c.

#define ISAC_CMD_ARL   0xa

Definition at line 125 of file hisax_isac.c.

#define ISAC_CMD_DI   0xf

Definition at line 126 of file hisax_isac.c.

#define ISAC_CMD_RES   0x1

Definition at line 120 of file hisax_isac.c.

#define ISAC_CMD_SCP   0x3

Definition at line 122 of file hisax_isac.c.

#define ISAC_CMD_SSP   0x2

Definition at line 121 of file hisax_isac.c.

#define ISAC_CMD_TIM   0x0

Definition at line 119 of file hisax_isac.c.

#define ISAC_CMDR   0x21

Definition at line 75 of file hisax_isac.c.

#define ISAC_CMDR_RMC   0x80

Definition at line 80 of file hisax_isac.c.

#define ISAC_CMDR_RRES   0x40

Definition at line 79 of file hisax_isac.c.

#define ISAC_CMDR_XME   0x02

Definition at line 77 of file hisax_isac.c.

#define ISAC_CMDR_XRES   0x01

Definition at line 76 of file hisax_isac.c.

#define ISAC_CMDR_XTF   0x08

Definition at line 78 of file hisax_isac.c.

#define ISAC_EXIR   0x24

Definition at line 82 of file hisax_isac.c.

#define ISAC_EXIR_MOS   0x04

Definition at line 83 of file hisax_isac.c.

#define ISAC_EXIR_XDU   0x40

Definition at line 84 of file hisax_isac.c.

#define ISAC_EXIR_XMR   0x80

Definition at line 85 of file hisax_isac.c.

#define ISAC_ISTA   0x20

Definition at line 65 of file hisax_isac.c.

#define ISAC_ISTA_CISQ   0x04

Definition at line 68 of file hisax_isac.c.

#define ISAC_ISTA_EXI   0x01

Definition at line 66 of file hisax_isac.c.

#define ISAC_ISTA_RME   0x80

Definition at line 72 of file hisax_isac.c.

#define ISAC_ISTA_RPF   0x40

Definition at line 71 of file hisax_isac.c.

#define ISAC_ISTA_RSC   0x20

Definition at line 70 of file hisax_isac.c.

#define ISAC_ISTA_SIN   0x02

Definition at line 67 of file hisax_isac.c.

#define ISAC_ISTA_XPR   0x10

Definition at line 69 of file hisax_isac.c.

#define ISAC_MASK   0x20

Definition at line 64 of file hisax_isac.c.

#define ISAC_MOCR   0x3a

Definition at line 111 of file hisax_isac.c.

#define ISAC_MODE   0x22

Definition at line 99 of file hisax_isac.c.

#define ISAC_MOR0   0x32

Definition at line 112 of file hisax_isac.c.

#define ISAC_MOR1   0x34

Definition at line 114 of file hisax_isac.c.

#define ISAC_MOSR   0x3a

Definition at line 110 of file hisax_isac.c.

#define ISAC_MOX0   0x32

Definition at line 113 of file hisax_isac.c.

#define ISAC_MOX1   0x34

Definition at line 115 of file hisax_isac.c.

#define ISAC_RBCH   0x2A

Definition at line 107 of file hisax_isac.c.

#define ISAC_RBCH_XAC   0x80

Definition at line 117 of file hisax_isac.c.

#define ISAC_RBCL   0x25

Definition at line 106 of file hisax_isac.c.

#define ISAC_RSTA   0x27

Definition at line 101 of file hisax_isac.c.

#define ISAC_RSTA_CRC   0x20

Definition at line 103 of file hisax_isac.c.

#define ISAC_RSTA_RAB   0x10

Definition at line 104 of file hisax_isac.c.

#define ISAC_RSTA_RDO   0x40

Definition at line 102 of file hisax_isac.c.

#define ISAC_SPCR   0x30

Definition at line 88 of file hisax_isac.c.

#define ISAC_SQXR   0x3b

Definition at line 109 of file hisax_isac.c.

#define ISAC_STAR   0x21

Definition at line 74 of file hisax_isac.c.

#define ISAC_STCR   0x37

Definition at line 98 of file hisax_isac.c.

#define ISAC_TIMR   0x23

Definition at line 108 of file hisax_isac.c.

#define ISACSX_CIR0   0x2e

Definition at line 159 of file hisax_isac.c.

#define ISACSX_CIR0_CIC0   0x08

Definition at line 160 of file hisax_isac.c.

#define ISACSX_CIX0   0x2e

Definition at line 161 of file hisax_isac.c.

#define ISACSX_CMDRD   0x21

Definition at line 142 of file hisax_isac.c.

#define ISACSX_CMDRD_RMC   0x80

Definition at line 147 of file hisax_isac.c.

#define ISACSX_CMDRD_RRES   0x40

Definition at line 146 of file hisax_isac.c.

#define ISACSX_CMDRD_XME   0x02

Definition at line 144 of file hisax_isac.c.

#define ISACSX_CMDRD_XRES   0x01

Definition at line 143 of file hisax_isac.c.

#define ISACSX_CMDRD_XTF   0x08

Definition at line 145 of file hisax_isac.c.

#define ISACSX_ISTA   0x60

Definition at line 129 of file hisax_isac.c.

#define ISACSX_ISTA_CIC   0x10

Definition at line 131 of file hisax_isac.c.

#define ISACSX_ISTA_ICD   0x01

Definition at line 130 of file hisax_isac.c.

#define ISACSX_ISTAD   0x20

Definition at line 134 of file hisax_isac.c.

#define ISACSX_ISTAD_RFO   0x20

Definition at line 138 of file hisax_isac.c.

#define ISACSX_ISTAD_RME   0x80

Definition at line 140 of file hisax_isac.c.

#define ISACSX_ISTAD_RPF   0x40

Definition at line 139 of file hisax_isac.c.

#define ISACSX_ISTAD_XDU   0x04

Definition at line 135 of file hisax_isac.c.

#define ISACSX_ISTAD_XMR   0x08

Definition at line 136 of file hisax_isac.c.

#define ISACSX_ISTAD_XPR   0x10

Definition at line 137 of file hisax_isac.c.

#define ISACSX_MASK   0x60

Definition at line 128 of file hisax_isac.c.

#define ISACSX_MASKD   0x20

Definition at line 133 of file hisax_isac.c.

#define ISACSX_MODED   0x22

Definition at line 149 of file hisax_isac.c.

#define ISACSX_RBCLD   0x26

Definition at line 151 of file hisax_isac.c.

#define ISACSX_RSTAD   0x28

Definition at line 153 of file hisax_isac.c.

#define ISACSX_RSTAD_CRC   0x20

Definition at line 155 of file hisax_isac.c.

#define ISACSX_RSTAD_RAB   0x10

Definition at line 154 of file hisax_isac.c.

#define ISACSX_RSTAD_RDO   0x40

Definition at line 156 of file hisax_isac.c.

#define ISACSX_RSTAD_VFR   0x80

Definition at line 157 of file hisax_isac.c.

#define ISACSX_TR_CONF0   0x30

Definition at line 163 of file hisax_isac.c.

#define ISACSX_TR_CONF2   0x32

Definition at line 165 of file hisax_isac.c.

#define L1_EVENT_COUNT   (EV_TIMER3 + 1)

Definition at line 218 of file hisax_isac.c.

#define L1_STATE_COUNT   (ST_L1_F8 + 1)

Definition at line 181 of file hisax_isac.c.

#define TYPE_ISAC   0x00

Definition at line 60 of file hisax_isac.c.

#define TYPE_ISACSX   0x01

Definition at line 61 of file hisax_isac.c.

Enumeration Type Documentation

anonymous enum
Enumerator:
ST_L1_RESET 
ST_L1_F3_PDOWN 
ST_L1_F3_PUP 
ST_L1_F3_PEND_DEACT 
ST_L1_F4 
ST_L1_F5 
ST_L1_F6 
ST_L1_F7 
ST_L1_F8 

Definition at line 169 of file hisax_isac.c.

anonymous enum
Enumerator:
EV_PH_DR 
EV_PH_RES 
EV_PH_TMA 
EV_PH_SLD 
EV_PH_RSY 
EV_PH_DR6 
EV_PH_EI 
EV_PH_PU 
EV_PH_AR 
EV_PH_9 
EV_PH_ARL 
EV_PH_CVR 
EV_PH_AI8 
EV_PH_AI10 
EV_PH_AIL 
EV_PH_DC 
EV_PH_ACTIVATE_REQ 
EV_PH_DEACTIVATE_REQ 
EV_TIMER3 

Definition at line 196 of file hisax_isac.c.

Function Documentation

EXPORT_SYMBOL ( isac_init  )
EXPORT_SYMBOL ( isac_d_l2l1  )
EXPORT_SYMBOL ( isacsx_setup  )
EXPORT_SYMBOL ( isacsx_irq  )
EXPORT_SYMBOL ( isac_setup  )
EXPORT_SYMBOL ( isac_irq  )
void isac_d_l2l1 ( struct hisax_if hisax_d_if,
int  pr,
void arg 
)

Definition at line 839 of file hisax_isac.c.

void isac_init ( struct isac isac)

Definition at line 757 of file hisax_isac.c.

void isac_irq ( struct isac isac)

Definition at line 604 of file hisax_isac.c.

void isac_setup ( struct isac isac)

Definition at line 772 of file hisax_isac.c.

void isacsx_irq ( struct isac isac)

Definition at line 744 of file hisax_isac.c.

void isacsx_setup ( struct isac isac)

Definition at line 823 of file hisax_isac.c.

MODULE_AUTHOR ( "Kai Germaschewski <[email protected]>/Karsten Keil <[email protected]>"  )
MODULE_DESCRIPTION ( "ISAC/ISAC-SX driver )
module_exit ( hisax_isac_exit  )
module_init ( hisax_isac_init  )
MODULE_LICENSE ( "GPL"  )