#include <linux/init.h>
#include <linux/module.h>
#include <linux/netdevice.h>
#include <linux/interrupt.h>
#include <linux/platform_device.h>
#include <linux/slab.h>
#include <linux/time.h>
#include <linux/types.h>
#include <net/irda/irda.h>
#include <net/irda/irmod.h>
#include <net/irda/wrapper.h>
#include <net/irda/irda_device.h>
#include <asm/mach-au1x00/au1000.h>
Go to the source code of this file.
#define AU_OWN (1 << 7) /* tx,rx */ |
#define IR_16CRC (1 << 7) |
#define IR_BAD_CRC (1 << 5) /* tx */ |
#define IR_BE (1 << 0) /* set in big endian mode */ |
#define IR_BR |
( |
|
x | ) |
(((x) & 0x3f) << 10) /* baud rate */ |
#define IR_C (1 << 1) /* coherency bit */ |
#define IR_CRC_ERROR (1 << 5) /* rx */ |
#define IR_DIS_CRC (1 << 6) /* tx */ |
#define IR_DISABLE_TX (1 << 2) /* tx */ |
#define IR_DMA_ENABLE (1 << 10) |
#define IR_FIFO_OVER (1 << 3) /* rx */ |
#define IR_FLT_HIGH (0 << 6) |
#define IR_FLT_LO (3 << 6) |
#define IR_FLT_MEDHI (1 << 6) |
#define IR_FLT_MEDLO (2 << 6) |
#define IR_FORCE_UNDER (1 << 3) /* tx */ |
#define IR_HW_UNDER (1 << 0) /* tx */ |
#define IR_INT_CLEAR 0x18 |
#define IR_LOOPBACK (1 << 14) |
#define IR_MAX_LEN (1 << 4) /* rx */ |
#define IR_MAX_PKT_LEN 0x34 |
#define IR_MODE_INV (1 << 0) |
#define IR_NEED_PULSE (1 << 4) /* tx */ |
#define IR_ONE_PIN (1 << 1) |
#define IR_P |
( |
|
x | ) |
((x) & 0x1f) /* preamble bits */ |
#define IR_PHY_ERROR (1 << 6) /* rx */ |
#define IR_PHYCLK_40MHZ (0 << 2) |
#define IR_PHYCLK_48MHZ (1 << 2) |
#define IR_PHYCLK_56MHZ (2 << 2) |
#define IR_PHYCLK_64MHZ (3 << 2) |
#define IR_PHYEN (1 << 15) |
#define IR_PW |
( |
|
x | ) |
(((x) & 0x1f) << 5) /* pulse width */ |
#define IR_READ_PHY_CONFIG 0x2C |
#define IR_RING_ADDR_CMPR 0x14 |
#define IR_RING_BASE_ADDR_H 0x04 |
#define IR_RING_BASE_ADDR_L 0x08 |
#define IR_RING_PROMPT 0x10 |
#define IR_RING_PTR_STATUS 0x00 |
#define IR_RING_SIZE 0x0C |
#define IR_RX_ALL (1 << 9) |
#define IR_RX_BYTE_CNT 0x38 |
#define IR_RX_ENABLE (1 << 11) |
#define IR_RX_INVERT_LED (1 << 0) |
#define IR_RX_STATUS (1 << 9) |
#define IR_SIR_ERROR (1 << 2) /* rx */ |
#define IR_SIR_FLAGS 0x24 |
#define IR_TX_ENABLE (1 << 12) |
#define IR_TX_INVERT_LED (1 << 1) |
#define IR_TX_STATUS (1 << 10) |
#define IR_WRITE_PHY_CONFIG 0x30 |
#define MAX_BUF_SIZE 2048 |
#define MAX_NUM_IR_DESC 64 |
MODULE_DESCRIPTION |
( |
"Au1000 IrDA Device Driver" |
| ) |
|
module_exit |
( |
au1k_irda_unload |
| ) |
|
module_init |
( |
au1k_irda_load |
| ) |
|