|
Linux Kernel
3.7.1
|
#include <linux/interrupt.h>#include <linux/kernel.h>#include <linux/module.h>#include <linux/platform_device.h>#include <linux/netdevice.h>#include <linux/etherdevice.h>#include <linux/ethtool.h>#include <linux/ks8842.h>#include <linux/dmaengine.h>#include <linux/dma-mapping.h>#include <linux/scatterlist.h>Go to the source code of this file.
Data Structures | |
| struct | ks8842_tx_dma_ctl |
| struct | ks8842_rx_dma_ctl |
| struct | ks8842_adapter |
Macros | |
| #define | pr_fmt(fmt) KBUILD_MODNAME ": " fmt |
| #define | DRV_NAME "ks8842" |
| #define | REG_TIMB_RST 0x1c |
| #define | REG_TIMB_FIFO 0x20 |
| #define | REG_TIMB_ISR 0x24 |
| #define | REG_TIMB_IER 0x28 |
| #define | REG_TIMB_IAR 0x2C |
| #define | REQ_TIMB_DMA_RESUME 0x30 |
| #define | REG_SELECT_BANK 0x0e |
| #define | REG_QRFCR 0x04 |
| #define | REG_MARL 0x00 |
| #define | REG_MARM 0x02 |
| #define | REG_MARH 0x04 |
| #define | REG_GRR 0x06 |
| #define | REG_TXCR 0x00 |
| #define | REG_TXSR 0x02 |
| #define | REG_RXCR 0x04 |
| #define | REG_TXMIR 0x08 |
| #define | REG_RXMIR 0x0A |
| #define | REG_TXQCR 0x00 |
| #define | REG_RXQCR 0x02 |
| #define | REG_TXFDPR 0x04 |
| #define | REG_RXFDPR 0x06 |
| #define | REG_QMU_DATA_LO 0x08 |
| #define | REG_QMU_DATA_HI 0x0A |
| #define | REG_IER 0x00 |
| #define | IRQ_LINK_CHANGE 0x8000 |
| #define | IRQ_TX 0x4000 |
| #define | IRQ_RX 0x2000 |
| #define | IRQ_RX_OVERRUN 0x0800 |
| #define | IRQ_TX_STOPPED 0x0200 |
| #define | IRQ_RX_STOPPED 0x0100 |
| #define | IRQ_RX_ERROR 0x0080 |
| #define | ENABLED_IRQS |
| #define | ENABLED_IRQS_DMA_IP |
| #define | ENABLED_IRQS_DMA (ENABLED_IRQS_DMA_IP | IRQ_RX) |
| #define | REG_ISR 0x02 |
| #define | REG_RXSR 0x04 |
| #define | RXSR_VALID 0x8000 |
| #define | RXSR_BROADCAST 0x80 |
| #define | RXSR_MULTICAST 0x40 |
| #define | RXSR_UNICAST 0x20 |
| #define | RXSR_FRAMETYPE 0x08 |
| #define | RXSR_TOO_LONG 0x04 |
| #define | RXSR_RUNT 0x02 |
| #define | RXSR_CRC_ERROR 0x01 |
| #define | RXSR_ERROR (RXSR_TOO_LONG | RXSR_RUNT | RXSR_CRC_ERROR) |
| #define | REG_SW_ID_AND_ENABLE 0x00 |
| #define | REG_SGCR1 0x02 |
| #define | REG_SGCR2 0x04 |
| #define | REG_SGCR3 0x06 |
| #define | REG_MACAR1 0x00 |
| #define | REG_MACAR2 0x02 |
| #define | REG_MACAR3 0x04 |
| #define | REG_P1MBCR 0x00 |
| #define | REG_P1MBSR 0x02 |
| #define | REG_P2MBCR 0x00 |
| #define | REG_P2MBSR 0x02 |
| #define | REG_P1CR2 0x02 |
| #define | REG_P1CR4 0x02 |
| #define | REG_P1SR 0x04 |
| #define | MICREL_KS884X 0x01 /* 0=Timeberdale(FPGA), 1=Micrel */ |
| #define | KS884X_16BIT 0x02 /* 1=16bit, 0=32bit */ |
| #define | DMA_BUFFER_SIZE 2048 |
| #define | KS8842_USE_DMA(adapter) |
Functions | |
| void | ks8842_handle_rx (struct net_device *netdev, struct ks8842_adapter *adapter) |
| void | ks8842_handle_tx (struct net_device *netdev, struct ks8842_adapter *adapter) |
| void | ks8842_handle_rx_overrun (struct net_device *netdev, struct ks8842_adapter *adapter) |
| void | ks8842_tasklet (unsigned long arg) |
| module_platform_driver (ks8842_platform_driver) | |
| MODULE_DESCRIPTION ("Timberdale KS8842 ethernet driver") | |
| MODULE_AUTHOR ("Mocean Laboratories <info@mocean-labs.com>") | |
| MODULE_LICENSE ("GPL v2") | |
| MODULE_ALIAS ("platform:ks8842") | |
| #define ENABLED_IRQS |
| #define ENABLED_IRQS_DMA (ENABLED_IRQS_DMA_IP | IRQ_RX) |
| #define ENABLED_IRQS_DMA_IP |
| #define KS8842_USE_DMA | ( | adapter | ) |
| #define MICREL_KS884X 0x01 /* 0=Timeberdale(FPGA), 1=Micrel */ |
| #define RXSR_ERROR (RXSR_TOO_LONG | RXSR_RUNT | RXSR_CRC_ERROR) |
| void ks8842_handle_rx | ( | struct net_device * | netdev, |
| struct ks8842_adapter * | adapter | ||
| ) |
| void ks8842_handle_rx_overrun | ( | struct net_device * | netdev, |
| struct ks8842_adapter * | adapter | ||
| ) |
| void ks8842_handle_tx | ( | struct net_device * | netdev, |
| struct ks8842_adapter * | adapter | ||
| ) |
| MODULE_ALIAS | ( | "platform:ks8842" | ) |
| MODULE_AUTHOR | ( | "Mocean Laboratories <info@mocean-labs.com>" | ) |
| MODULE_LICENSE | ( | "GPL v2" | ) |
| module_platform_driver | ( | ks8842_platform_driver | ) |
1.8.2