Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions | Variables
avmfritz.c File Reference
#include <linux/interrupt.h>
#include <linux/module.h>
#include <linux/pci.h>
#include <linux/delay.h>
#include <linux/mISDNhw.h>
#include <linux/slab.h>
#include <asm/unaligned.h>
#include "ipac.h"

Go to the source code of this file.

Data Structures

struct  hdlc_stat_reg
 
struct  hdlc_hw
 
struct  fritzcard
 

Macros

#define AVMFRITZ_REV   "2.3"
 
#define HDLC_FIFO   0x0
 
#define HDLC_STATUS   0x4
 
#define CHIP_WINDOW   0x10
 
#define CHIP_INDEX   0x4
 
#define AVM_HDLC_1   0x00
 
#define AVM_HDLC_2   0x01
 
#define AVM_ISAC_FIFO   0x02
 
#define AVM_ISAC_REG_LOW   0x04
 
#define AVM_ISAC_REG_HIGH   0x06
 
#define AVM_STATUS0_IRQ_ISAC   0x01
 
#define AVM_STATUS0_IRQ_HDLC   0x02
 
#define AVM_STATUS0_IRQ_TIMER   0x04
 
#define AVM_STATUS0_IRQ_MASK   0x07
 
#define AVM_STATUS0_RESET   0x01
 
#define AVM_STATUS0_DIS_TIMER   0x02
 
#define AVM_STATUS0_RES_TIMER   0x04
 
#define AVM_STATUS0_ENA_IRQ   0x08
 
#define AVM_STATUS0_TESTBIT   0x10
 
#define AVM_STATUS1_INT_SEL   0x0f
 
#define AVM_STATUS1_ENA_IOM   0x80
 
#define HDLC_MODE_ITF_FLG   0x01
 
#define HDLC_MODE_TRANS   0x02
 
#define HDLC_MODE_CCR_7   0x04
 
#define HDLC_MODE_CCR_16   0x08
 
#define HDLC_FIFO_SIZE_128   0x20
 
#define HDLC_MODE_TESTLOOP   0x80
 
#define HDLC_INT_XPR   0x80
 
#define HDLC_INT_XDU   0x40
 
#define HDLC_INT_RPR   0x20
 
#define HDLC_INT_MASK   0xE0
 
#define HDLC_STAT_RME   0x01
 
#define HDLC_STAT_RDO   0x10
 
#define HDLC_STAT_CRCVFRRAB   0x0E
 
#define HDLC_STAT_CRCVFR   0x06
 
#define HDLC_STAT_RML_MASK_V1   0x3f00
 
#define HDLC_STAT_RML_MASK_V2   0x7f00
 
#define HDLC_CMD_XRS   0x80
 
#define HDLC_CMD_XME   0x01
 
#define HDLC_CMD_RRS   0x20
 
#define HDLC_CMD_XML_MASK   0x3f00
 
#define HDLC_FIFO_SIZE_V1   32
 
#define HDLC_FIFO_SIZE_V2   128
 
#define AVM_HDLC_FIFO_1   0x10
 
#define AVM_HDLC_FIFO_2   0x18
 
#define AVM_HDLC_STATUS_1   0x14
 
#define AVM_HDLC_STATUS_2   0x1c
 
#define AVM_ISACX_INDEX   0x04
 
#define AVM_ISACX_DATA   0x08
 
#define LOG_SIZE   63
 

Enumerations

enum  { AVM_FRITZ_PCI, AVM_FRITZ_PCIV2 }
 

Functions

struct hdlc_stat_reg __attribute__ ((packed))
 
 MODULE_AUTHOR ("Karsten Keil")
 
 MODULE_LICENSE ("GPL v2")
 
 MODULE_VERSION (AVMFRITZ_REV)
 
 module_param_call (debug, set_debug, param_get_uint,&debug, S_IRUGO|S_IWUSR)
 
 MODULE_PARM_DESC (debug,"avmfritz debug mask")
 
void write_ctrl (struct bchannel *bch, int which)
 
void clear_pending_hdlc_ints (struct fritzcard *fc)
 
int setup_fritz (struct fritzcard *fc)
 
 MODULE_DEVICE_TABLE (pci, fcpci_ids)
 
 module_init (AVM_init)
 
 module_exit (AVM_cleanup)
 

Variables

u8 cmd
 
u8 xml
 
u8 mode
 
u8 fill
 
struct hdlc_hw __attribute__
 

Macro Definition Documentation

#define AVM_HDLC_1   0x00

Definition at line 48 of file avmfritz.c.

#define AVM_HDLC_2   0x01

Definition at line 49 of file avmfritz.c.

#define AVM_HDLC_FIFO_1   0x10

Definition at line 97 of file avmfritz.c.

#define AVM_HDLC_FIFO_2   0x18

Definition at line 98 of file avmfritz.c.

#define AVM_HDLC_STATUS_1   0x14

Definition at line 100 of file avmfritz.c.

#define AVM_HDLC_STATUS_2   0x1c

Definition at line 101 of file avmfritz.c.

#define AVM_ISAC_FIFO   0x02

Definition at line 50 of file avmfritz.c.

#define AVM_ISAC_REG_HIGH   0x06

Definition at line 52 of file avmfritz.c.

#define AVM_ISAC_REG_LOW   0x04

Definition at line 51 of file avmfritz.c.

#define AVM_ISACX_DATA   0x08

Definition at line 104 of file avmfritz.c.

#define AVM_ISACX_INDEX   0x04

Definition at line 103 of file avmfritz.c.

#define AVM_STATUS0_DIS_TIMER   0x02

Definition at line 60 of file avmfritz.c.

#define AVM_STATUS0_ENA_IRQ   0x08

Definition at line 62 of file avmfritz.c.

#define AVM_STATUS0_IRQ_HDLC   0x02

Definition at line 55 of file avmfritz.c.

#define AVM_STATUS0_IRQ_ISAC   0x01

Definition at line 54 of file avmfritz.c.

#define AVM_STATUS0_IRQ_MASK   0x07

Definition at line 57 of file avmfritz.c.

#define AVM_STATUS0_IRQ_TIMER   0x04

Definition at line 56 of file avmfritz.c.

#define AVM_STATUS0_RES_TIMER   0x04

Definition at line 61 of file avmfritz.c.

#define AVM_STATUS0_RESET   0x01

Definition at line 59 of file avmfritz.c.

#define AVM_STATUS0_TESTBIT   0x10

Definition at line 63 of file avmfritz.c.

#define AVM_STATUS1_ENA_IOM   0x80

Definition at line 66 of file avmfritz.c.

#define AVM_STATUS1_INT_SEL   0x0f

Definition at line 65 of file avmfritz.c.

#define AVMFRITZ_REV   "2.3"

Definition at line 33 of file avmfritz.c.

#define CHIP_INDEX   0x4

Definition at line 47 of file avmfritz.c.

#define CHIP_WINDOW   0x10

Definition at line 45 of file avmfritz.c.

#define HDLC_CMD_RRS   0x20

Definition at line 89 of file avmfritz.c.

#define HDLC_CMD_XME   0x01

Definition at line 88 of file avmfritz.c.

#define HDLC_CMD_XML_MASK   0x3f00

Definition at line 90 of file avmfritz.c.

#define HDLC_CMD_XRS   0x80

Definition at line 87 of file avmfritz.c.

#define HDLC_FIFO   0x0

Definition at line 43 of file avmfritz.c.

#define HDLC_FIFO_SIZE_128   0x20

Definition at line 72 of file avmfritz.c.

#define HDLC_FIFO_SIZE_V1   32

Definition at line 92 of file avmfritz.c.

#define HDLC_FIFO_SIZE_V2   128

Definition at line 93 of file avmfritz.c.

#define HDLC_INT_MASK   0xE0

Definition at line 78 of file avmfritz.c.

#define HDLC_INT_RPR   0x20

Definition at line 77 of file avmfritz.c.

#define HDLC_INT_XDU   0x40

Definition at line 76 of file avmfritz.c.

#define HDLC_INT_XPR   0x80

Definition at line 75 of file avmfritz.c.

#define HDLC_MODE_CCR_16   0x08

Definition at line 71 of file avmfritz.c.

#define HDLC_MODE_CCR_7   0x04

Definition at line 70 of file avmfritz.c.

#define HDLC_MODE_ITF_FLG   0x01

Definition at line 68 of file avmfritz.c.

#define HDLC_MODE_TESTLOOP   0x80

Definition at line 73 of file avmfritz.c.

#define HDLC_MODE_TRANS   0x02

Definition at line 69 of file avmfritz.c.

#define HDLC_STAT_CRCVFR   0x06

Definition at line 83 of file avmfritz.c.

#define HDLC_STAT_CRCVFRRAB   0x0E

Definition at line 82 of file avmfritz.c.

#define HDLC_STAT_RDO   0x10

Definition at line 81 of file avmfritz.c.

#define HDLC_STAT_RME   0x01

Definition at line 80 of file avmfritz.c.

#define HDLC_STAT_RML_MASK_V1   0x3f00

Definition at line 84 of file avmfritz.c.

#define HDLC_STAT_RML_MASK_V2   0x7f00

Definition at line 85 of file avmfritz.c.

#define HDLC_STATUS   0x4

Definition at line 44 of file avmfritz.c.

#define LOG_SIZE   63

Definition at line 107 of file avmfritz.c.

Enumeration Type Documentation

anonymous enum
Enumerator:
AVM_FRITZ_PCI 
AVM_FRITZ_PCIV2 

Definition at line 38 of file avmfritz.c.

Function Documentation

struct hdlc_stat_reg __attribute__ ( (packed)  )
read

Definition at line 171 of file esd_usb2.c.

void clear_pending_hdlc_ints ( struct fritzcard fc)

Definition at line 745 of file avmfritz.c.

MODULE_AUTHOR ( "Karsten Keil"  )
MODULE_DEVICE_TABLE ( pci  ,
fcpci_ids   
)
module_exit ( AVM_cleanup  )
module_init ( AVM_init  )
MODULE_LICENSE ( "GPL v2 )
module_param_call ( debug  ,
set_debug  ,
param_get_uint  ,
debug,
S_IRUGO S_IWUSR 
)
MODULE_PARM_DESC ( debug  ,
"avmfritz debug mask  
)
MODULE_VERSION ( AVMFRITZ_REV  )
int setup_fritz ( struct fritzcard fc)

Definition at line 966 of file avmfritz.c.

void write_ctrl ( struct bchannel bch,
int  which 
)

Definition at line 288 of file avmfritz.c.

Variable Documentation

Definition at line 128 of file avmfritz.c.

u8 fill

Definition at line 131 of file avmfritz.c.

u8 mode

Definition at line 130 of file avmfritz.c.

u8 xml

Definition at line 129 of file avmfritz.c.